@charset "UTF-8";
/* Variables */
@import url(//fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic,100,100italic,300,300italic,900,900italic|Titillium+Web:400,200,200italic,300,300italic,400italic,600,600italic,700,700italic,900);
#siteFooter, .pageEl, .right-column-ad-wrapper, #topNav .theme-search-bar,
#topNav .theme-nav-style-dropdown, .collectorNews .item, .newsSlideShow-headline p {
  *zoom: 1;
}

#siteFooter:before, .pageEl:before, .right-column-ad-wrapper:before, #topNav .theme-search-bar:before,
#topNav .theme-nav-style-dropdown:before, .collectorNews .item:before, .newsSlideShow-headline p:before, #siteFooter:after, .pageEl:after, .right-column-ad-wrapper:after, #topNav .theme-search-bar:after,
#topNav .theme-nav-style-dropdown:after, .collectorNews .item:after, .newsSlideShow-headline p:after {
  content: " ";
  display: table;
}

#siteFooter:after, .pageEl:after, .right-column-ad-wrapper:after, #topNav .theme-search-bar:after,
#topNav .theme-nav-style-dropdown:after, .collectorNews .item:after, .newsSlideShow-headline p:after {
  clear: both;
}

@-webkit-keyframes dropdown-season {
  0% {
    opacity: 0;
    top: 90%;
  }
  100% {
    opacity: 1;
    top: 100%;
  }
}

@keyframes dropdown-season {
  0% {
    opacity: 0;
    top: 90%;
  }
  100% {
    opacity: 1;
    top: 100%;
  }
}

/* Typgography */
html, body {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  color: #666;
}

body {
  font-size: 100%;
  text-rendering: optimizeLegibility;
}

p {
  font-size: 1em;
  margin-bottom: 1rem;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.125;
  color: #0054A6;
}

h1, h2, h3 {
  color: #00407F;
}

h5 {
  color: #333333;
}

h1 {
  font-size: 48px;
}

h2 {
  font-size: 36px;
  text-transform: uppercase;
}

h3 {
  font-size: 32px;
  text-transform: uppercase;
}

h4 {
  font-size: 18px;
}

h5 {
  font-size: 16px;
}

h6 {
  font-size: 16px;
}

ul {
  list-style-type: disc;
}

b, strong {
  font-weight: bold;
}

i, em {
  font-style: italic;
}

small {
  font-size: .75em;
}

mark {
  background-color: yellow;
}

s, strike, del {
  text-decoration: line-through;
}

u {
  text-decoration: underline;
}

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
}

blockquote {
  font-family: "Montserrat", sans-serif;
  font-style: italic;
  font-weight: 400;
  font-size: 24px;
  line-height: 36px;
  float: right;
  color: #333333;
  width: 50%;
  padding: 0 0 15px 15px;
}

blockquote:before {
  content: "“";
  display: inline-block;
  font-weight: 400;
  color: #CCC;
}

blockquote:after {
  content: "”";
  display: inline-block;
  font-weight: 400;
  color: #CCC;
}

blockquote p {
  display: inline;
}

code, kbd, pre, samp {
  font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
}

pre {
  display: block;
  padding: 10px;
  margin: 0 0 1rem 0;
  font-size: 90%;
  color: #333;
  word-break: break-all;
  word-wrap: break-word;
  white-space: pre-wrap;
  /* css-3 */
  white-space: -moz-pre-wrap !important;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}

hr {
  background: -webkit-repeating-linear-gradient(162deg, #AAA 0px, transparent 1px, transparent 3px, #AAA 4px);
  background: repeating-linear-gradient(-72deg, #AAA 0px, transparent 1px, transparent 3px, #AAA 4px);
  height: 3px;
  margin: 1rem 0;
  border: none;
}

hr.hrElement {
  margin: 1rem 0;
}

a {
  color: #0054A6;
  text-decoration: none;
  -webkit-transition: color 0.2s ease-in;
          transition: color 0.2s ease-in;
}

a:hover {
  color: #003a73;
}

.pageElement a {
  font-weight: 700;
}

table {
  font-size: 12px;
}

.text > p:last-child, .text > h1:last-child, .text > h2:last-child, .text > h3:last-child, .text > h4:last-child, .text > h5:last-child, .text > h6:last-child, .text > ol:last-child, .text > ul:last-child, .text > blockquote:last-child, .text > pre:last-child, .previewText > p:last-child, .previewText > h1:last-child, .previewText > h2:last-child, .previewText > h3:last-child, .previewText > h4:last-child, .previewText > h5:last-child, .previewText > h6:last-child, .previewText > ol:last-child, .previewText > ul:last-child, .previewText > blockquote:last-child, .previewText > pre:last-child, .newsText > p:last-child, .newsText > h1:last-child, .newsText > h2:last-child, .newsText > h3:last-child, .newsText > h4:last-child, .newsText > h5:last-child, .newsText > h6:last-child, .newsText > ol:last-child, .newsText > ul:last-child, .newsText > blockquote:last-child, .newsText > pre:last-child {
  margin-bottom: 0;
}

.text ul, .text ol, .previewText ul, .previewText ol, .newsText ul, .newsText ol {
  margin-left: 1.75em;
  margin-bottom: 1em;
}

.text ul li > ul, .text ul li > ol, .text ol li > ul, .text ol li > ol, .previewText ul li > ul, .previewText ul li > ol, .previewText ol li > ul, .previewText ol li > ol, .newsText ul li > ul, .newsText ul li > ol, .newsText ol li > ul, .newsText ol li > ol {
  margin-bottom: 0;
}

/* -------------------------------------------------------------------- */
.toolIcon {
  background-repeat: no-repeat;
  padding: 5px 0 15px 40px;
}

p.tags {
  font-size: .7em;
}

.subNav li a,
.relatedSections li a {
  font-size: .75em;
}

.ellipsis {
  /* Needs a fixed width to work */
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Custom Theme Styles */
html {
  box-sizing: border-box;
}

* {
  box-sizing: inherit;
}

#FOP {
  box-sizing: content-box;
}

html,
body {
  padding: 0;
  margin: 0;
  border: none;
  background-color: transparent;
}

#pageContentContainer {
  background: #fff;
}

.layoutContainer {
  padding: 0;
}

.snFooterContainer {
  width: 100%;
  margin: 0 auto;
  background-color: #eee;
  background: #0054A6 url("https://assets.ngin.com.s3.amazonaws.com/site_files/12425/_site/images/pattern.png") repeat-x;
}

#customFooter {
  width: 100%;
  max-width: 1000px;
  margin: auto;
  text-align: center;
  margin-bottom: 20px;
}

#customFooter .sn-social-media-list .sn-social-media-icon {
  background: transparent;
  font-size: 2em;
}

#siteFooter {
  display: block;
  margin: auto;
  padding: 40px 20px 60px 20px;
  position: relative;
  vertical-align: bottom;
  width: 100%;
  font-size: .8em;
  clear: both;
}

#siteFooter > ul {
  padding: 0;
  position: relative;
  display: block;
  margin: auto;
  max-width: 1000px;
  width: 100%;
  text-align: center;
  color: white;
}

#siteFooter > ul li {
  display: inline-block;
  padding: 0 .2em;
  min-height: 20px;
  font-weight: 600;
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
}

#siteFooter > ul li:first-of-type {
  display: block;
  font-family: "Open Sans", sans-serif;
  text-transform: none;
  margin-bottom: 10px;
  font-weight: 100;
}

#siteFooter > ul li a {
  display: inline-block;
  color: white;
}

#siteFooter > ul li:hover {
  display: inline-block;
}

#siteFooter li#poweredByNGIN {
  display: block;
  margin-top: 10px;
}

#siteFooter li#poweredByNGIN a {
  display: block;
  width: 120px;
  height: 20px;
  position: relative;
  margin: auto;
}

#siteFooter li#poweredByNGIN a:after {
  content: url("https://app-assets1.sportngin.com/app_images/sportngin_footer_logo_white.svg");
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 100%;
}

#siteFooter li#poweredByNGIN a img {
  display: none;
}

@media only screen and (max-width: 1024px) {
  .snFooterContainer {
    max-width: 1024px;
  }
}

.pageEl {
  /* Text Block Element */
  /* Content Tabs */
}

.pageEl .pageElement {
  width: 100%;
  margin: 15px 0;
  float: left;
  clear: both;
}

.pageEl .widgetElement .widgetHierarchy {
  overflow-x: auto;
  overflow-y: hidden;
}

.pageEl .textBlockElement .leftTextImage,
.pageEl .textBlockElement .originalTextImage,
.pageEl .textBlockElement .rightTextImage {
  width: 100%;
}

.pageEl .textBlockElement .leftTextImage br,
.pageEl .textBlockElement .originalTextImage br,
.pageEl .textBlockElement .rightTextImage br {
  display: none;
}

.pageEl .textBlockElement .leftTextImage .cutline,
.pageEl .textBlockElement .originalTextImage .cutline,
.pageEl .textBlockElement .rightTextImage .cutline {
  width: 100%;
  margin: 0 auto;
}

.pageEl .textBlockElement img {
  width: auto;
  max-width: 100%;
  display: block;
  margin: auto;
}

.pageEl .video .jwplayer {
  width: 100% !important;
  height: 100% !important;
}

.pageEl .jwplayer {
  width: 100% !important;
}

.pageEl .tabbedElement ul.contentTabs {
  border: none;
}

.pageEl .tabbedElement ul.contentTabs li span a {
  display: block;
}

.pageEl .tabbedElement .tabContainer .current {
  width: 100% !important;
}

#PlayerStatsDiv .sport-tools:nth-child(even) ul.pill-buttons li.selected a,
#TeamStatsDiv .sport-tools:nth-child(even) ul.pill-buttons li.selected a {
  color: #0054A6;
  border-bottom: 3px solid #0054A6;
  background-color: transparent;
}

#PlayerStatsDiv .sport-tools:nth-child(even) ul.pill-buttons li a,
#TeamStatsDiv .sport-tools:nth-child(even) ul.pill-buttons li a {
  background-color: transparent;
  border: 0;
}

.edit_mode .contentTabs.rapidTabsConstruction li span a {
  color: #666;
  background: transparent;
  border-right: none;
}

.edit_mode .contentTabs.rapidTabsConstruction .selected span a {
  background: #FCCD22;
  color: #333;
}

.pageElement input[type="text"], .pageElement input[type="password"] {
  width: 100%;
  max-width: 480px;
  height: 28px;
  padding: 5px;
  margin-top: 5px;
  font-family: "Open Sans", sans-serif;
  font-size: .75em;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transition: all .1s ease;
          transition: all .1s ease;
}

.pageElement input[type="text"]:hover, .pageElement input[type="password"]:hover {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #666;
}

.pageElement input[type="text"]:focus, .pageElement input[type="password"]:focus {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #0054A6;
  outline: 0;
}

.pageElement textarea {
  height: 28px;
  padding: 5px;
  margin-top: 5px;
  font-family: "Open Sans", sans-serif;
  font-size: .75em;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transition: all .1s ease;
          transition: all .1s ease;
}

.pageElement textarea:hover {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #666;
}

.pageElement textarea:focus {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #0054A6;
  outline: 0;
}

.pageElement select {
  height: 28px;
  font-family: "Open Sans", sans-serif;
  font-size: .75em;
  background: #fff;
  border: 1px solid #ddd;
  -webkit-transition: all .1s ease;
          transition: all .1s ease;
  white-space: normal;
}

.pageElement select:hover {
  box-shadow: 0 1px 3px #ddd;
  border: 1px solid #666;
}

.pageElement select:focus {
  box-shadow: 0 1px 3px #ddd;
  border: 1px solid #0054A6;
  outline: 0;
}

@media only screen and (max-width: 767px) {
  .oneColumn .column1, .layoutContainer .oneColumn .column1 {
    width: 100%;
  }
  .twoColumn2575 .column2, .twoColumn7525 .column1 {
    width: 100%;
  }
  .twoColumn6633 .column1, .twoColumn3366 .column2, .layoutContainer .twoColumn6633 .column1, .layoutContainer .twoColumn3366 .column2 {
    width: 100%;
  }
  .twoColumn5050 .column1, .twoColumn5050 .column2, .threeColumn502525 .column1, .threeColumn255025 .column2, .threeColumn252550 .column3, .layoutContainer .twoColumn5050 .column1, .layoutContainer .twoColumn5050 .column2, .layoutContainer .threeColumn502525 .column1, .layoutContainer .threeColumn255025 .column2, .layoutContainer .threeColumn252550 .column3 {
    width: 100%;
  }
  .threeColumn333333 .column1, .twoColumn6633 .column2, .twoColumn3366 .column1, .threeColumn333333 .column2, .threeColumn333333 .column3, .layoutContainer .threeColumn333333 .column1, .layoutContainer .twoColumn6633 .column2, .layoutContainer .twoColumn3366 .column1, .layoutContainer .threeColumn333333 .column2, .layoutContainer .threeColumn333333 .column3 {
    width: 100%;
  }
  .twoColumn2575 .column1, .twoColumn7525 .column2,
  .threeColumn502525 .column2, .threeColumn502525 .column3,
  .threeColumn255025 .column1, .threeColumn255025 .column3,
  .threeColumn252550 .column1, .threeColumn252550 .column2,
  .fourColumn25252525 .column1, .fourColumn25252525 .column2,
  .fourColumn25252525 .column3, .fourColumn25252525 .column4,
  .layoutContainer .threeColumn502525 .column2, .layoutContainer .threeColumn502525 .column3,
  .layoutContainer .threeColumn255025 .column1, .layoutContainer .threeColumn255025 .column3,
  .layoutContainer .threeColumn252550 .column1, .layoutContainer .threeColumn252550 .column2,
  .layoutContainer .fourColumn25252525 .column1, .layoutContainer .fourColumn25252525 .column2,
  .layoutContainer .fourColumn25252525 .column1, .layoutContainer .fourColumn25252525 .column2 {
    width: 100%;
  }
  .width25, .width33, .width50, .width66, .width75, .width100 {
    width: 100%;
  }
  .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (min-width: 768px) and (max-width: 999px) {
  .layout-50-25-25 .col-md-3,
  .layout-25-25-50 .col-md-3 {
    width: 50%;
  }
  .layout-50-25-25 .col-md-6,
  .layout-25-25-50 .col-md-6 {
    width: 100%;
  }
  .layout-25-50-25 .col-md-3,
  .layout-25-50-25 .col-md-6 {
    width: 33.3333%;
  }
}

.theme-nav-style-slide > * {
  width: 100%;
}

.site-background {
  position: absolute;
}

/* RESPONSIVE */
/* maxWidth Desktop Screen */
@media only screen and (max-width: 1024px) {
  /* > 1023px Styles */
  /* Content Tabs */
  .tabbedElement ul.contentTabs li {
    width: 33%;
    padding: 2px;
  }
  .tabbedElement ul.contentTabs li span a {
    width: 100%;
    display: block;
    text-align: center;
  }
  /* Game Show */
  #liveGameSimple {
    display: none;
  }
  /* Footer */
  #siteFooter li {
    min-height: 0;
  }
  #siteFooter li#poweredByNGIN {
    padding: 10px 0;
    width: 100%;
  }
}

/* Tablets & Phones */
@media only screen and (max-width: 767px) {
  /* > 769px Styles */
  /* Admin */
  .adminToggle,
  #adminNav {
    display: none;
  }
  #siteContainer {
    margin-top: 0;
    padding-left: 0;
  }
  #siteContainer #panelTwo .layoutContainer .column {
    width: 100%;
    display: block;
  }
  /* Code Element */
  .codeElement object, .codeElement embed, .codeElement iframe {
    width: 100%;
  }
  /* Content Tabs */
  .tabbedElement ul.contentTabs li {
    width: 50%;
    padding: 2px;
  }
  .tabbedElement ul.contentTabs li span a {
    width: 100%;
    display: block;
    text-align: center;
  }
  /* Widget Elements */
  .widgetElement .widget-roster-player table.statTable thead {
    display: block;
    float: left;
    position: relative;
    width: 50%;
  }
  .widgetElement .widget-roster-player table.statTable thead tr {
    float: left;
    position: relative;
    display: block;
    width: 100%;
  }
  .widgetElement .widget-roster-player table.statTable thead tr th {
    display: block;
    float: left;
    height: 30px;
    overflow: hidden;
    padding-top: 8px;
    width: 100%;
  }
  .widgetElement .widget-roster-player table.statTable tbody {
    display: block;
    float: left;
    position: relative;
    width: 50%;
  }
  .widgetElement .widget-roster-player table.statTable tbody tr {
    float: left;
    position: relative;
    display: block;
    width: 100%;
  }
  .widgetElement .widget-roster-player table.statTable tbody tr td {
    display: inline-block;
    float: left;
    height: 30px;
    width: 100%;
    border-left: none;
    border-right: none;
  }
  .widgetElement .widget-gameTable .showMoreGames {
    display: none;
  }
  /* Survey Reports */
  #survey_steps .siteContainer #accountNav {
    margin: auto;
    padding: 0;
  }
  #survey_steps .siteContainer .adminToggle {
    top: 0;
  }
  #survey_steps .siteContainer #pageContentContainer #panelOne {
    width: 100%;
    max-width: 100%;
    display: block;
    float: none;
    padding: 0;
    padding-bottom: 30px;
  }
  #survey_steps .siteContainer #pageContentContainer #panelTwo {
    width: 100%;
    max-width: 100%;
    display: block;
    float: none;
    padding: 0;
  }
  /* TEAM PAGES */
  /* Game Show Content */
  #GameShowContent li.tab_menu-tab {
    width: 50%;
  }
  .teamTagFilter label {
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
    margin-left: 10px;
  }
}

@media only screen and (max-width: 640px) {
  /* > 640px Styles */
  #siteFooter li {
    min-height: 0;
  }
  #siteFooter li#poweredByNGIN {
    padding: 10px 0;
  }
}

@media only screen and (max-width: 480px) {
  /* > 480px Styles */
  /* Stats */
  .StatWidgetContainer {
    padding: 15px 0 0 0;
  }
  .StatWidget {
    margin: 0 0 20px 0;
  }
  .StatWidgetContainer.game_details {
    padding: 20px 10px;
  }
  .GameShowDataContainer .StatWidgetGroup {
    margin: 0 10px 20px 0;
  }
  #GameShowContent ul.player_stats-list-header li h2 {
    font-size: 0.75em;
  }
  #GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list {
    font-size: 0.8em;
  }
  .player_stat-leader .player_name {
    font-size: 1em;
  }
  .teamLogo-medium, .teamLogor-medium {
    width: 70px !important;
    height: 23px !important;
  }
  /* filter styles */
  .tag-filterForm .tag-filterWrap {
    width: 100%;
    padding: 16px 0;
  }
  .tag-filterForm .tag-filterWrap.button {
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
  }
  .tag-filterForm .inputChoice {
    float: right;
  }
  .tag-filterWrap.dropdown label {
    width: 100%;
  }
  .tag-filterWrap.dropdown label select {
    float: right;
    width: 70%;
  }
}

.ad-wrapper {
  overflow: hidden;
  text-align: center;
  clear: both;
}

*:not(.pageElement) > .ad-wrapper {
  margin: 0 15px;
  padding: 15px 0;
}

.ad-wrapper img {
  display: block;
  margin: auto;
}

.ad-wrapper > * {
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}

#contentTabsLoader:not([style*="display:none"]):not([style*="display: none"]) ~ .right-column-ad-wrapper .right-column-ads {
  display: none;
}

.right-column-ad-content {
  width: 66.666%;
  float: left;
}

@media only screen and (max-width: 800px) {
  .right-column-ad-content {
    width: 100%;
  }
}

.right-column-ads {
  width: 33.333%;
  float: right;
}

@media only screen and (max-width: 800px) {
  .right-column-ads {
    width: 100%;
  }
}

@media only screen and (min-width: 801px) {
  .right-column-ads .ad-wrapper {
    margin-right: 0;
    padding-bottom: 0;
  }
}

html.page-manager-visible .sn-pageManager {
  display: block;
}

.sn-pageManager {
  display: none;
  position: fixed;
  width: 60px;
  height: 100%;
  left: 0;
  background: #f1f3f4;
  border-right: 1px solid #d5dadd;
  top: 0px;
  z-index: 499;
  font-family: 'Open Sans', sans-serif;
}

.sn-pageManager .adminToggle,
.sn-pageManager #adminNav,
.sn-pageManager .sn-sidebarItem {
  border: 0px solid #D5DADD;
  border-width: 0px 0px 1px 0px;
}

.sn-pageManager .adminToggle {
  width: 100%;
  display: block;
  position: relative;
  text-indent: -99999px;
}

.sn-pageManager .adminToggle,
.sn-pageManager #adminNav,
.sn-pageManager .sn-sidebarItem {
  height: 70px;
}

.sn-pageManager .sn-sidebarLink {
  cursor: pointer;
  display: block;
  width: 100%;
  height: 100%;
  background-color: transparent;
  -webkit-transition: background-color 400ms;
          transition: background-color 400ms;
}

.sn-pageManager .active > .sn-sidebarLink {
  background-color: #E5E7E8;
}

.sn-pageManager .goToAdmin {
  background: none;
  background: url("../images/admin_gear.svg") center 35% no-repeat;
}

.sn-pageManager #adminNav img {
  display: none;
}

.sn-pageManager #adminNav {
  background: url("../images/switch_off.svg") center 35% no-repeat;
}

.sn-pageManager .sn-edit-mode-disabled {
  background: url("https://app-assets1.sportngin.com/app_images/pageManager/switch_off_disabled.png") center 35% no-repeat;
  position: relative;
}

.sn-pageManager .sn-edit-mode-disabled .sn-tooltip {
  position: relative;
  width: 200px;
  font-size: 12px;
  font-weight: 400;
  background: #e03740;
  color: #fff;
  border-radius: 5px;
  box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.3);
  left: 57px;
  padding: 10px;
  text-align: center;
  margin-top: 6px;
}

.sn-pageManager .sn-edit-mode-disabled .sn-tooltip::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 6px solid black;
  border-color: #e03740 transparent transparent #e03740;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  box-shadow: -1px -1px 2px 0px rgba(0, 0, 0, 0.3);
  left: -4px;
  z-index: 0;
  top: 23px;
}

.sn-pageManager .sn-togglePages {
  background: url("../images/pages_icon.svg") center center no-repeat;
}

.sn-pageManager #adminNav a {
  display: block;
  overflow: hidden;
  height: 60px;
}

.sn-pageManager .adminToggle:before,
.sn-pageManager #adminNav > a:before,
.sn-pageManager .sn-sidebarItem > a:before {
  content: '';
  text-align: center;
  width: 100%;
  font-size: 10px;
  line-height: initial;
  font-weight: 400;
  color: #84929c;
  text-indent: 0;
  display: block;
  position: absolute;
  margin-top: 43px;
}

.sn-pageManager .adminToggle:before {
  content: 'Admin';
}

.sn-pageManager #adminNav > a:before {
  content: 'Edit Mode';
}

.sn-pageManager .sn-edit-mode-disabled {
  opacity: .5;
}

.sn-pageManager .sn-edit-mode-disabled > a:before {
  content: 'Edit Mode';
}

.sn-pageManager .sn-structure.sn-sidebarItem > a:before {
  content: 'Pages';
}

.sn-pageManager .sn-tabWrapper {
  opacity: 0;
  top: 0px;
  left: -200px;
  position: absolute;
  -webkit-transition: all 500ms;
          transition: all 500ms;
  width: 200px;
  height: 100%;
  background: #F9FAFB;
  z-index: -1;
  box-shadow: 5px 0px 10px -5px rgba(50, 50, 50, 0.5);
  overflow: auto;
}

.sn-pageManager .active .sn-tabWrapper {
  opacity: 1;
  left: 100%;
  margin: 0 0 0 1px;
}

.sn-pageManager .sn-tabContainer {
  display: none;
  border-top: 1px solid #dedede;
}

.sn-pageManager .sn-nav > li.sn-tab,
.sn-pageManager .sn-nav-tabs > li.sn-tab,
.sn-pageManager .sn-tab {
  position: absolute;
  width: 50%;
  z-index: 1;
}

.sn-pageManager .sn-nav > li.sn-tab.active,
.sn-pageManager .sn-nav-tabs > li.sn-tab.active,
.sn-pageManager .sn-tab.active {
  width: 100%;
  z-index: 0;
}

.sn-pageManager .sn-title {
  width: 100%;
  border-bottom: 5px solid transparent;
  font-size: 14px;
  font-weight: 300;
  color: #394146;
  padding-top: 10px;
  text-align: center;
}

.sn-pageManager .sn-tab.active .sn-title {
  width: 50%;
  border-bottom: 5px solid #1997c8;
}

.sn-pageManager .sn-tab.two .sn-title {
  margin-left: 100%;
}

.sn-pageManager .sn-tab.two.active .sn-title {
  margin-left: 50%;
}

.sn-pageManager .sn-subtitle {
  text-transform: uppercase;
  font-size: 12px;
  padding-top: 20px;
}

.sn-pageManager .sn-subtitle, .sn-pageManager .sn-subtitle span {
  display: block;
  text-align: center;
  font-size: 9px;
  color: #808F98;
  font-weight: 600;
}

.sn-pageManager .sn-subtitle span {
  font-size: 16px;
  text-transform: capitalize;
}

.sn-pageManager .sn-pages {
  padding: 10px 20px 50px 20px;
}

.sn-pageManager .sn-pages ul {
  padding: 0;
  list-style-type: none;
  position: relative;
}

.sn-pageManager .sn-pages li {
  background-color: white;
  background-repeat: no-repeat;
  border: 1px solid #B9C1C6;
  padding: 0 0 0 14px;
  border-radius: 2px;
  margin: 2px 0;
  font-weight: 300;
  font-size: 12px;
  width: 100% !important;
}

.sn-pageManager .sn-pages li a {
  color: #394146;
  cursor: move;
}

.sn-pageManager .sn-pages li a:hover {
  text-decoration: none;
}

.sn-pageManager .sn-pages li p {
  color: #394146;
  min-height: 24px;
  line-height: 1.5;
  padding-top: 3px;
  margin: 0;
}

.sn-pageManager .sn-pages .private {
  padding-right: 23px;
}

.sn-pageManager .sn-pages .private:after {
  right: 4px;
  width: 15px;
  background-image: url("https://app-assets1.sportngin.com/app_images/pageManager/private.png");
}

.sn-pageManager .sn-pages .disabled {
  padding-right: 23px;
}

.sn-pageManager .sn-pages .disabled:after {
  right: 4px;
  width: 15px;
  background-image: url("https://app-assets1.sportngin.com/app_images/pageManager/disabled.png");
}

.sn-pageManager .sn-pages .private,
.sn-pageManager .sn-pages .disabled,
.sn-pageManager .sn-pages .paywalled {
  position: relative;
}

.sn-pageManager .sn-pages .private:after,
.sn-pageManager .sn-pages .disabled:after,
.sn-pageManager .sn-pages .paywalled:after {
  content: '';
  position: absolute;
  height: 12px;
  top: 50%;
  margin-top: -6px;
  display: inline-block;
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.sn-pageManager .sn-pages .disabled a, .sn-pageManager .sn-pages .private a {
  color: #808F98;
}

.sn-pageManager .sn-pages .drag {
  cursor: move;
  background-image: url("https://app-assets1.sportngin.com/app_images/pageManager/drag.png");
  background-position: 2px center;
  background-repeat: no-repeat;
}

.sn-pageManager:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: inherit;
  top: 0;
  z-index: -1;
}

.edit_mode .sn-pageManager .cmsNavButton {
  padding: 0;
  margin: 20px 0px 0px;
}

.edit_mode .sn-pageManager .cmsNavButton a {
  background: none;
  text-align: center;
  display: block;
  cursor: pointer;
}

.edit_mode #adminNav {
  background: url("../images/switch_on.svg") center 35% no-repeat;
  background-color: #E5E7E8;
}

.sn-preview {
  display: block;
  font-size: 10px;
  font-weight: 400;
  color: #84929c;
  text-align: center;
  padding: 10px 0;
  border-bottom: 1px solid #D5DADD;
  line-height: 1.4;
}

.sn-preview:hover {
  color: #84929c;
  text-decoration: none;
}

.sn-preview.preview-on {
  background-color: #E5E7E8;
}

.sn-preview.preview-on:before, .sn-preview.preview-off:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.sn-preview.preview-off:before {
  background-image: url(../images/eye-off.svg);
}

.sn-preview.preview-on:before {
  background-image: url(../images/eye-on.svg);
}

#accountNav {
  position: absolute;
  padding: 0 calc(50% - 500px);
  width: 100%;
  z-index: 399;
  top: 0;
  left: 0;
  height: 40px;
  line-height: 1;
  text-align: left;
  list-style: none;
  overflow: hidden;
  white-space: nowrap;
  background: #23282b;
}

html.has-mobile-nav #accountNav {
  padding: 0 16px;
}

html.page-manager-visible #accountNav {
  padding-left: calc(50% - 500px + 60px);
}

html.has-mobile-nav.page-manager-visible #accountNav {
  padding-left: 76px;
}

#survey_steps #accountNav {
  position: relative;
  padding: 0 16px;
}

#accountNav > li {
  display: inline-block;
  vertical-align: middle;
  line-height: 40px;
  height: 40px;
  /* Icons (like messages) */
}

#accountNav > li.home span.right {
  margin-left: .3em;
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

#accountNav > li.home span.right:before {
  content: "\f107";
}

#accountNav > li a img {
  vertical-align: middle;
}

#accountNav a {
  display: block;
  height: 100%;
  color: #FFF !important;
  font-size: 14px;
  font-weight: 300;
  text-decoration: none;
  margin: 0;
  padding: 0 8px;
}

#accountNav .nginLogo {
  float: right;
  margin-left: 24px;
}

#accountNav .nginLogo a {
  width: 120px;
  background: url("https://app-assets1.sportngin.com/app_images/sport-ngin-logo-white.svg") right center no-repeat;
  text-indent: -20000px;
  background-size: 100%;
}

#accountNav .secondary a {
  font-weight: normal;
  font-size: 10px;
  color: #999;
}

#accountNav .secondary a:hover {
  color: #ccc;
}

#accountNav .currentSite a {
  display: block;
  float: left;
}

#accountNav .currentSite a:first-child {
  width: 20px;
}

#accountNav .local-dev-tool {
  float: right;
  line-height: 40px !important;
}

#accountNav .local-dev-tool ~ .nginLogo {
  display: none;
}

/* Notifications Menus */
.dashboard_nav .count,
#accountNav .count {
  background: #c00;
  border: 1px inset rgba(201, 201, 201, 0.5);
  color: #eee;
  float: right;
  font: bold 10px "Montserrat", sans-serif;
  min-width: 1.5em;
  padding: 0 2px;
  text-align: center;
  text-shadow: none;
}

#accountNav .count {
  float: none;
  position: relative;
  margin-left: -10px;
  top: -6px;
}

#user_tools_menu_callout .count {
  margin-top: 5px;
}

/* Drop Down Menu */
#accountNav #user_tools_menu_callout,
#user_sites ul,
#tst_options ul,
#help_and_updates ul {
  display: none;
}

#user_sites_menu {
  max-height: 500px;
  overflow: auto;
}

#user_sites a {
  text-indent: -999em;
  background: url("https://app-assets1.sportngin.com/app_images/link_icons.png") 8px -3231px no-repeat;
  width: 32px;
}

#tst_options a {
  text-indent: -999em;
  background: url("https://app-assets1.sportngin.com/app_images/link_icons.png") 8px -2308px no-repeat;
  width: 32px;
}

#help_and_updates a.new_help_and_updates:after,
#help_and_updates_menu a.new_help_and_updates:after {
  color: white;
  padding: 0 2px 0 2px;
  font-size: 8px;
  content: 'NEW';
  background: green;
  border-radius: 2px;
  vertical-align: top;
  line-height: 12px;
}

#help_and_updates a.new_help_and_updates {
  position: relative;
}

#help_and_updates a.new_help_and_updates:after {
  position: absolute;
  top: 0;
  right: 0;
}

#help_and_updates_menu img {
  width: 12px;
  height: 12px;
}

#help_and_updates_menu a.new_help_and_updates:after {
  position: relative;
  left: 3px;
  display: inline;
}

html.has-mobile-nav body:before {
  content: "";
  position: absolute;
  background-color: #23282b;
  top: 0;
  left: 0;
  width: 100%;
  height: 44px;
}

html.has-mobile-nav #accountNav {
  height: 44px;
}

html.has-mobile-nav #accountNav > li {
  height: 44px;
  line-height: 44px;
}

html.has-mobile-nav .nginLogo {
  display: none;
}

html.collapsed-mobile-nav #accountNav > *:not(#login):not(#logout) {
  display: none;
}

html.collapsed-mobile-nav #login,
html.collapsed-mobile-nav #logout {
  float: right;
}

html.collapsed-mobile-nav #login a,
html.collapsed-mobile-nav #logout a {
  border: none;
  height: 44px;
  line-height: 44px;
}

#PageSearchBox {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  padding: 10px;
  position: relative;
  display: block;
  overflow: hidden;
}

#PageSearchBox .theme-search-input,
#PageSearchBox .theme-search-submit {
  float: left;
  height: 30px;
  line-height: 30px;
  -webkit-transition: background 0.2s ease-in;
          transition: background 0.2s ease-in;
}

#PageSearchBox .theme-search-input,
#PageSearchBox .theme-search-close {
  font-size: 16px;
}

#PageSearchBox .theme-search-input {
  width: calc(100% - 65px);
  background: #FFF;
  border: 0 solid transparent;
  border-right: none;
  padding: 0 30px 0 10px;
}

#PageSearchBox .theme-search-input::-ms-clear {
  display: none;
}

#PageSearchBox .theme-search-input:focus {
  outline: none;
  background: #FFF;
}

#PageSearchBox .theme-search-submit {
  text-align: center;
  width: 65px;
  cursor: pointer;
  color: #fff;
  font-size: 12px;
  border: 0 solid transparent;
  padding: 0 10px;
  background: #CECECE;
}

#PageSearchBox .theme-search-submit:focus, #PageSearchBox .theme-search-submit:hover {
  background: #CECECE;
}

#PageSearchBox .theme-search-clear {
  position: absolute;
  text-decoration: none;
  text-align: center;
  top: 10px;
  right: 75px;
  width: 30px;
  height: 30px;
  line-height: 30px;
}

#PageSearchBox .theme-search-clear:before {
  content: "✕";
  color: #9ca8af;
  font-family: FontAwesome;
  font-size: 16px;
}

.theme-search-overlay {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
}

.theme-search-modal {
  position: absolute;
  top: 10%;
  bottom: 10%;
  left: 50%;
  margin-left: -300px;
  width: 600px;
  background: #fff;
  border: 1px solid #d4d9dc;
  border-radius: 4px;
}

@media only screen and (max-width: 650px) {
  .theme-search-modal {
    width: 100%;
    margin-left: 0;
    left: 0;
    top: 0;
    bottom: 0;
    border-radius: 0;
    border: none;
  }
}

.theme-search-modal .theme-search-title {
  display: block;
  font-size: 22px;
  line-height: 22px;
  color: #23282b;
  padding: 24px;
  padding-right: 68px;
}

.theme-search-modal .theme-search-close {
  position: absolute;
  text-decoration: none;
  text-align: center;
  top: 0;
  right: 0;
  width: 44px;
  height: 44px;
  line-height: 44px;
}

.theme-search-modal .theme-search-close:before {
  content: "✕";
  color: #9ca8af;
  font-family: FontAwesome;
  font-size: 14px;
}

.theme-search-modal .theme-search-box {
  position: relative;
  line-height: 44px;
  padding: 0 24px;
  background: #0054A6;
  border-top: 0 solid transparent;
  border-bottom: 0 solid transparent;
  height: 44px;
  font-size: 12px;
}

.theme-search-modal .theme-search-input {
  color: #666;
  vertical-align: middle;
  font-size: 16px;
  line-height: 30px;
  padding: 0 30px 0 8px;
  border: 0 solid transparent;
  background: #fff;
  margin-top: -1px;
  width: 100%;
}

.theme-search-modal .theme-search-input::-ms-clear {
  display: none;
}

.theme-search-modal .theme-search-input:focus {
  outline: none;
}

.theme-search-modal .theme-search-clear {
  position: absolute;
  top: 7px;
  right: 24px;
  cursor: pointer;
  height: 30px;
  line-height: 30px;
  width: 30px;
  text-align: center;
  color: #0054A6;
}

.theme-search-modal .theme-search-clear:before {
  content: "✕";
  color: #9ca8af;
  font-family: FontAwesome;
  font-size: 14px;
}

.theme-search-modal .theme-search-status {
  color: #b8c0c5;
  display: block;
  font-size: 12px;
  text-align: center;
  margin-top: -12px;
  margin-bottom: 12px;
}

.theme-search-modal .theme-search-results {
  position: absolute;
  top: 114px;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 24px;
  overflow: auto;
  list-style: none;
  border-radius: 0 0 4px 4px;
}

.theme-search-modal .theme-search-result {
  cursor: pointer;
  display: table;
  line-height: 1.2;
  width: 100%;
  border-top: 1px solid #d4d9dc;
}

.theme-search-modal .theme-search-result:last-child {
  border-bottom: 1px solid #d4d9dc;
}

.theme-search-modal .theme-search-result-info {
  text-decoration: none !important;
  display: table-cell;
  vertical-align: middle;
  padding: 6px;
  height: 44px;
}

.theme-search-modal .theme-search-result-info:hover {
  background: #f0f1f2;
}

.theme-search-modal .theme-search-result-primary {
  display: block;
}

.theme-search-modal .theme-search-result-secondary {
  display: block;
  font-size: 70%;
  color: #b8c0c5;
}

html.collapsed-mobile-nav #topNav {
  position: absolute;
  top: 0;
}

html.collapsed-mobile-nav .nav-fixed .theme-mobile-nav {
  display: none !important;
}

html.collapsed-mobile-nav .theme-nav-style-slide {
  font-size: 16px;
  left: auto;
  right: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.9);
  -webkit-transition: right 200ms ease-in-out;
          transition: right 200ms ease-in-out;
}

@media (min-width: 769px) {
  html.collapsed-mobile-nav .theme-nav-style-slide {
    width: 400px;
  }
  html.collapsed-mobile-nav.slide-nav-open .theme-nav-style-slide {
    right: calc(100vw - 400px) !important;
  }
  html.collapsed-mobile-nav.slide-nav-open.page-manager-visible .theme-nav-style-slide {
    right: calc(100vw - 400px - 60px) !important;
  }
}

html.collapsed-mobile-nav .theme-slide-nav-overlay {
  display: none;
  position: absolute;
  top: 0;
  width: 9999px;
  background: #FFF;
  height: 100%;
  left: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
          transition: opacity 0.2s linear;
}

html.collapsed-mobile-nav .theme-slide-nav-toggle {
  display: block;
}

html.collapsed-mobile-nav.slide-nav-open {
  overflow: hidden;
}

html.collapsed-mobile-nav.slide-nav-open *:not(.theme-slide-nav-content) + .theme-nav-title .theme-nav-title-text {
  padding-right: 44px;
}

html.collapsed-mobile-nav.slide-nav-open .theme-nav-style-slide {
  right: 0;
}

html.collapsed-mobile-nav.slide-nav-open .theme-slide-nav-overlay {
  display: block;
  opacity: .5;
}

html.collapsed-mobile-nav.slide-nav-open .theme-search-box:first-child, html.collapsed-mobile-nav.slide-nav-open .theme-search-box:first-child ~ .theme-search-box {
  padding-right: 44px;
}

html.collapsed-mobile-nav:not(.slide-nav-open) .theme-nav-style-slide {
  position: absolute;
}

html.collapsed-mobile-nav:not(.slide-nav-open) .theme-slide-nav-toggle {
  display: block;
  right: -44px;
  background: #0DB14C;
  color: #FFF;
}

.theme-nav-style-slide {
  position: fixed;
  width: 250px;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 100vh;
  border-collapse: collapse;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.75);
}

.theme-nav-style-slide > * {
  width: 100%;
}

.page-manager-visible .theme-nav-style-slide {
  left: 60px;
}

.theme-nav-style-slide a:hover {
  text-decoration: none;
}

.theme-nav-style-slide .theme-slide-nav-content {
  box-sizing: border-box;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  background: #0054A6;
}

.theme-nav-style-slide .theme-search-box {
  display: block;
  overflow: hidden;
  padding: 10px;
}

.theme-nav-style-slide .theme-search-box:not(:first-child) {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.theme-nav-style-slide .theme-search-input,
.theme-nav-style-slide .theme-search-submit,
.theme-nav-style-slide .theme-search-clear {
  float: left;
  height: 30px;
  -webkit-transition: background 0.2s linear;
          transition: background 0.2s linear;
}

.theme-nav-style-slide .theme-search-input,
.theme-nav-style-slide .theme-search-clear {
  font-size: 16px;
}

.theme-nav-style-slide .theme-search-input {
  width: calc(100% - 70px);
  line-height: 28px;
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-right: none;
  padding: 0 28px 0 10px;
}

.theme-nav-style-slide .theme-search-input::-ms-clear {
  display: none;
}

.theme-nav-style-slide .theme-search-input:focus {
  outline: none;
  background: white;
}

.theme-nav-style-slide .theme-search-submit {
  cursor: pointer;
  width: 70px;
  line-height: 28px;
  color: #fff;
  text-align: center;
  font-size: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0 10px;
  background: #003a73;
}

.theme-nav-style-slide .theme-search-submit:focus, .theme-nav-style-slide .theme-search-submit:hover {
  background: #002040;
}

.theme-nav-style-slide .theme-search-clear {
  float: left;
  text-decoration: none;
  text-align: center;
  margin-left: -31px;
  margin-right: 1px;
  width: 30px;
  line-height: 30px;
}

.theme-nav-style-slide .theme-search-clear:before {
  content: "✕";
  color: #9ca8af;
  font-family: FontAwesome;
  font-size: 16px;
}

.theme-nav-style-slide .theme-slide-nav-toggle {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  font-size: 20px;
  line-height: 44px;
  width: 44px;
  color: #fff;
  text-align: center;
  cursor: pointer;
  background: transparent;
  color: #FFF;
}

.theme-nav-style-slide .theme-slide-nav-toggle:before {
  font-family: "FontAwesome";
  content: "\f0c9";
}

.theme-nav-style-slide .theme-slide-nav-toggle:hover {
  color: #eee;
}

.theme-nav-style-slide .theme-nav-title {
  box-sizing: border-box;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  text-transform: uppercase;
  display: table;
  table-layout: fixed;
  text-align: center;
  height: 44px;
  background: #0054A6;
  border: 1px solid rgba(255, 255, 255, 0.1);
  overflow: hidden;
}

.theme-nav-style-slide .theme-nav-title-text {
  display: table-cell;
  vertical-align: middle;
  color: #eaeaea;
  font-weight: 400;
  text-align: left;
  padding: 12px 20px;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.theme-nav-style-slide .theme-nav-back,
.theme-nav-style-slide .theme-nav-forward {
  font-family: FontAwesome;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  font-size: 10px;
  cursor: pointer;
  -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear;
}

.theme-nav-style-slide .theme-nav-back {
  color: #FFF;
  border-right: 1px solid rgba(255, 255, 255, 0.05);
  background: #0054A6;
  width: 44px;
}

.theme-nav-style-slide .theme-nav-back:before {
  content: "";
}

.theme-nav-style-slide .theme-nav-back:hover {
  background: #0054A6;
}

.theme-nav-style-slide .theme-nav-forward {
  color: #FFF;
  border-left: 1px solid rgba(255, 255, 255, 0.05);
  background: transparent;
  width: 44px;
}

.theme-nav-style-slide .theme-nav-forward:before {
  content: "";
}

.theme-nav-style-slide .theme-nav-forward:hover {
  background: #0054A6;
}

.theme-nav-style-slide .disabled > .theme-nav-forward:hover {
  background: #bfbfbf;
}

.theme-nav-style-slide .theme-nav-menus {
  box-sizing: border-box;
  -ms-flex: 1 1 100%;
  -webkit-box-flex: 1;
          flex: 1 1 100%;
  position: relative;
  overflow-y: auto;
  overflow-x: hidden;
}

.theme-nav-style-slide .theme-nav-menu {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
  width: 100%;
  padding: 0;
  list-style-type: none;
  background: transparent;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  padding-bottom: 72px;
}

.theme-nav-style-slide .theme-nav-parent-in,
.theme-nav-style-slide .theme-nav-parent-out {
  left: -10%;
  opacity: 0;
}

.theme-nav-style-slide .theme-nav-children-in,
.theme-nav-style-slide .theme-nav-children-out {
  left: 100%;
}

.theme-nav-style-slide .theme-nav-parent-out,
.theme-nav-style-slide .theme-nav-children-out {
  max-height: 100%;
  overflow: hidden;
}

.theme-nav-style-slide .theme-nav-item {
  width: 100%;
  display: table;
  table-layout: fixed;
  border-collapse: collapse;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-top: none;
  padding: 0;
  height: 44px;
}

.theme-nav-style-slide .theme-nav-item.paywalled img {
  display: inline-block;
  padding-right: 5px;
  max-width: 40px;
  max-height: 20px;
}

.theme-nav-style-slide .theme-nav-item.selected > .theme-nav-link {
  background: rgba(255, 255, 255, 0.15);
}

.theme-nav-style-slide .theme-nav-item > .theme-nav-link:hover {
  background: #0054A6;
}

.theme-nav-style-slide .theme-nav-item.disabled > * {
  color: #999;
  background: transparent;
}

.theme-nav-style-slide .theme-nav-item.disabled.selected > .theme-nav-link {
  background: rgba(255, 255, 255, 0.1);
}

.theme-nav-style-slide .theme-nav-item.disabled > *:hover {
  background: #0054A6;
}

.theme-nav-style-slide .theme-nav-link {
  cursor: pointer;
  display: table-cell;
  text-align: left;
  padding: 12px 20px;
  line-height: 1.25;
  color: #FFF;
  -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear;
}

.theme-nav-style-slide .theme-nav-link:hover {
  background: #0054A6;
}

.gsc-control-cse,
.gsc-search-box {
  line-height: initial;
}

.gsc-control-cse, .gsc-control-cse *,
.gsc-search-box,
.gsc-search-box * {
  word-wrap: normal;
  box-sizing: initial;
}

.theme-search-modal .gsc-search-box {
  display: inline-block;
  width: 100%;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  background: none;
}

.theme-search-modal .gsc-clear-button {
  display: none;
}

/* TODO: Get rid of this long and hard to maintain list and just use a clearfix class */
/* Internet Explorer */
.clearfix {
  zoom: 1;
}

/* Everything else */
.clearfix:after,
.boxscore-container:after,
.boxscore-extras:after,
.bracket-game p:after,
#bracket-seed-list p:after,
#bracket-teams p:after,
.bracket-game p:after,
.cmsGameStatus:after,
.cmsGameStatus ul:after,
.cmsPageStatus:after,
.comment-container:after,
.comment-form:after,
.comment:after,
.game-listing:after,
.gameStatusConstruction:after,
.leader-highlight:after,
.login-options:after,
.login-options-body:after,
.login-options-footer:after,
.login-options-header:after,
.newsItemElement:after,
#photoGalleryControls:after,
#photoGalleryControls .layoutContainer:after,
.rapidContentConstruction:after,
.rosterPlayerInfoElement:after,
#megaDropDown .season:after,
.season-title:after,
.season .header:after,
#sport-colors:after,
#sport-slider:after,
.sport-tools:after,
.sport-tools ul:after,
.sport-tools ul li:after,
.subcomment:after,
#megaDropDown .subseason:after,
#survey_steps form:after,
.surveyForwardButton:after,
.tooltip-inner:after,
.tooltip-outer:after,
.widgetFooter:after,
.widgetHierarchy .singleLevel:after,
.widget-teamButtons a:after,
.widget-teamButtons .sport-colors:after,
.widget-leader:after,
.widget-leader table li p:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/*!
 * Bootstrap v3.3.2 (https://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*!
 * This is just the grid use, I've deleted everything else out as we don't need it as we have our own styles and it ends up being conflicted. 3/19/2015 - Joe B.


 * Generated using the Bootstrap Customizer (https://getbootstrap.com/customize/?id=5edb000ee79e7bb36315)
 * Config saved to config.json and https://gist.github.com/5edb000ee79e7bb36315
 */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

/* .NGIN_tip .container */
.NGIN_tip .container {
  width: auto;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.edit_mode .layoutContainer .col-xs-1, .edit_mode .layoutContainer .col-sm-1, .edit_mode .layoutContainer .col-md-1, .edit_mode .layoutContainer .col-lg-1, .edit_mode .layoutContainer .col-xs-2, .edit_mode .layoutContainer .col-sm-2, .edit_mode .layoutContainer .col-md-2, .edit_mode .layoutContainer .col-lg-2, .edit_mode .layoutContainer .col-xs-3, .edit_mode .layoutContainer .col-sm-3, .edit_mode .layoutContainer .col-md-3, .edit_mode .layoutContainer .col-lg-3, .edit_mode .layoutContainer .col-xs-4, .edit_mode .layoutContainer .col-sm-4, .edit_mode .layoutContainer .col-md-4, .edit_mode .layoutContainer .col-lg-4, .edit_mode .layoutContainer .col-xs-5, .edit_mode .layoutContainer .col-sm-5, .edit_mode .layoutContainer .col-md-5, .edit_mode .layoutContainer .col-lg-5, .edit_mode .layoutContainer .col-xs-6, .edit_mode .layoutContainer .col-sm-6, .edit_mode .layoutContainer .col-md-6, .edit_mode .layoutContainer .col-lg-6, .edit_mode .layoutContainer .col-xs-7, .edit_mode .layoutContainer .col-sm-7, .edit_mode .layoutContainer .col-md-7, .edit_mode .layoutContainer .col-lg-7, .edit_mode .layoutContainer .col-xs-8, .edit_mode .layoutContainer .col-sm-8, .edit_mode .layoutContainer .col-md-8, .edit_mode .layoutContainer .col-lg-8, .edit_mode .layoutContainer .col-xs-9, .edit_mode .layoutContainer .col-sm-9, .edit_mode .layoutContainer .col-md-9, .edit_mode .layoutContainer .col-lg-9, .edit_mode .layoutContainer .col-xs-10, .edit_mode .layoutContainer .col-sm-10, .edit_mode .layoutContainer .col-md-10, .edit_mode .layoutContainer .col-lg-10, .edit_mode .layoutContainer .col-xs-11, .edit_mode .layoutContainer .col-sm-11, .edit_mode .layoutContainer .col-md-11, .edit_mode .layoutContainer .col-lg-11, .edit_mode .layoutContainer .col-xs-12, .edit_mode .layoutContainer .col-sm-12, .edit_mode .layoutContainer .col-md-12, .edit_mode .layoutContainer .col-lg-12 {
  padding-left: 0;
  padding-right: 0;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-11 {
  width: 91.66666667%;
}

.col-xs-10 {
  width: 83.33333333%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-8 {
  width: 66.66666667%;
}

.col-xs-7 {
  width: 58.33333333%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-5 {
  width: 41.66666667%;
}

.col-xs-4 {
  width: 33.33333333%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-2 {
  width: 16.66666667%;
}

.col-xs-1 {
  width: 8.33333333%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-pull-11 {
  right: 91.66666667%;
}

.col-xs-pull-10 {
  right: 83.33333333%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-8 {
  right: 66.66666667%;
}

.col-xs-pull-7 {
  right: 58.33333333%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-5 {
  right: 41.66666667%;
}

.col-xs-pull-4 {
  right: 33.33333333%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-2 {
  right: 16.66666667%;
}

.col-xs-pull-1 {
  right: 8.33333333%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-push-11 {
  left: 91.66666667%;
}

.col-xs-push-10 {
  left: 83.33333333%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-8 {
  left: 66.66666667%;
}

.col-xs-push-7 {
  left: 58.33333333%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-5 {
  left: 41.66666667%;
}

.col-xs-push-4 {
  left: 33.33333333%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-2 {
  left: 16.66666667%;
}

.col-xs-push-1 {
  left: 8.33333333%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}

@media (min-width: 767px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}

.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
  visibility: hidden !important;
}

.affix {
  position: fixed;
}

@-ms-viewport {
  width: device-width;
}

.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}

.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.boxscore-container table.boxscore, #dayViewCalendarEvents .boxscore,
#month_list .boxscore {
  width: 100%;
  border-spacing: 0;
  margin-top: 2px;
  border-collapse: initial;
  width: 100%;
}

.boxscore-container table.boxscore td, #dayViewCalendarEvents .boxscore td,
#month_list .boxscore td, .boxscore-container table.boxscore th, #dayViewCalendarEvents .boxscore th,
#month_list .boxscore th {
  background-clip: padding-box !important;
  border-color: transparent;
  border-style: solid;
  border-width: 0 2px 2px 0;
}

.boxscore-container table.boxscore td:last-child, #dayViewCalendarEvents .boxscore td:last-child,
#month_list .boxscore td:last-child, .boxscore-container table.boxscore th:last-child, #dayViewCalendarEvents .boxscore th:last-child,
#month_list .boxscore th:last-child {
  border-right: 0;
}

.boxscore-container table.boxscore tr:last-child td, #dayViewCalendarEvents .boxscore tr:last-child td,
#month_list .boxscore tr:last-child td {
  border-bottom: 0;
}

.boxscore-container table.boxscore tbody td, #dayViewCalendarEvents .boxscore tbody td,
#month_list .boxscore tbody td {
  background: #eee;
}

.boxscore-container table.boxscore th, #dayViewCalendarEvents .boxscore th,
#month_list .boxscore th {
  height: 30px;
  padding: 15px 12px;
  background: #E1E8ED;
  white-space: nowrap;
  border: none;
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
}

.boxscore-container table.boxscore td, #dayViewCalendarEvents .boxscore td,
#month_list .boxscore td {
  font-size: 12px;
  padding: 10px 12px;
  text-align: center;
  height: 30px;
  background: transparent !important;
  border: none;
  border-bottom: solid 1px #E1E8ED;
  white-space: nowrap;
}

.boxscore-container table.boxscore td.highlight, #dayViewCalendarEvents .boxscore td.highlight,
#month_list .boxscore td.highlight {
  background: #fff;
}

.boxscore-container table.boxscore td.team, #dayViewCalendarEvents .boxscore td.team,
#month_list .boxscore td.team, .boxscore-container table.boxscore th.team, #dayViewCalendarEvents .boxscore th.team,
#month_list .boxscore th.team {
  text-align: left;
}

.boxscore-container table.boxscore td:not(.team), #dayViewCalendarEvents .boxscore td:not(.team),
#month_list .boxscore td:not(.team), .boxscore-container table.boxscore th:not(.team), #dayViewCalendarEvents .boxscore th:not(.team),
#month_list .boxscore th:not(.team) {
  padding-left: 6px;
  padding-right: 6px;
}

@media only screen and (min-width: 1000px) {
  .col-md-3 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container .col-md-3 table.boxscore tr > *:not(.team):not(.score-final), .col-md-3 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents .col-md-3 .boxscore tr > *:not(.team):not(.score-final), .col-md-3
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list .col-md-3 .boxscore tr > *:not(.team):not(.score-final) {
    display: none;
  }
  .col-md-3 .boxscore-container table.boxscore .teamLogo-small, .boxscore-container .col-md-3 table.boxscore .teamLogo-small, .col-md-3 #dayViewCalendarEvents .boxscore .teamLogo-small, #dayViewCalendarEvents .col-md-3 .boxscore .teamLogo-small, .col-md-3
  #month_list .boxscore .teamLogo-small,
  #month_list .col-md-3 .boxscore .teamLogo-small {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container .col-md-3 table.boxscore tr > *:not(.team):not(.score-final), .col-md-3 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents .col-md-3 .boxscore tr > *:not(.team):not(.score-final), .col-md-3
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list .col-md-3 .boxscore tr > *:not(.team):not(.score-final),
  .col-md-4 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container
  .col-md-4 table.boxscore tr > *:not(.team):not(.score-final),
  .col-md-4 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents
  .col-md-4 .boxscore tr > *:not(.team):not(.score-final),
  .col-md-4
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list
  .col-md-4 .boxscore tr > *:not(.team):not(.score-final) {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 999px) {
  .layout-50-50 .col-md-6 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container .layout-50-50 .col-md-6 table.boxscore tr > *:not(.team):not(.score-final), .layout-50-50 .col-md-6 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents .layout-50-50 .col-md-6 .boxscore tr > *:not(.team):not(.score-final), .layout-50-50 .col-md-6
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list .layout-50-50 .col-md-6 .boxscore tr > *:not(.team):not(.score-final) {
    display: none;
  }
  .col-md-4 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container .col-md-4 table.boxscore tr > *:not(.team):not(.score-final), .col-md-4 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents .col-md-4 .boxscore tr > *:not(.team):not(.score-final), .col-md-4
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list .col-md-4 .boxscore tr > *:not(.team):not(.score-final),
  .layout-25-50-25 .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), .boxscore-container
  .layout-25-50-25 table.boxscore tr > *:not(.team):not(.score-final),
  .layout-25-50-25 #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents
  .layout-25-50-25 .boxscore tr > *:not(.team):not(.score-final),
  .layout-25-50-25
  #month_list .boxscore tr > *:not(.team):not(.score-final),
  #month_list
  .layout-25-50-25 .boxscore tr > *:not(.team):not(.score-final) {
    display: none;
  }
  .col-md-4 .boxscore-container table.boxscore .teamLogo-small, .boxscore-container .col-md-4 table.boxscore .teamLogo-small, .col-md-4 #dayViewCalendarEvents .boxscore .teamLogo-small, #dayViewCalendarEvents .col-md-4 .boxscore .teamLogo-small, .col-md-4
  #month_list .boxscore .teamLogo-small,
  #month_list .col-md-4 .boxscore .teamLogo-small,
  .layout-25-50-25 .boxscore-container table.boxscore .teamLogo-small, .boxscore-container
  .layout-25-50-25 table.boxscore .teamLogo-small,
  .layout-25-50-25 #dayViewCalendarEvents .boxscore .teamLogo-small, #dayViewCalendarEvents
  .layout-25-50-25 .boxscore .teamLogo-small,
  .layout-25-50-25
  #month_list .boxscore .teamLogo-small,
  #month_list
  .layout-25-50-25 .boxscore .teamLogo-small {
    display: none;
  }
}

@media only screen and (max-width: 400px) {
  .boxscore-container table.boxscore tr > *:not(.team):not(.score-final), #dayViewCalendarEvents .boxscore tr > *:not(.team):not(.score-final),
  #month_list .boxscore tr > *:not(.team):not(.score-final) {
    display: none;
  }
}

#tab_boxscores_content .boxscore-container {
  margin-top: 30px;
}

.boxscore-container .team {
  white-space: nowrap;
}

.boxscore-container .teamName {
  display: inline-block;
  vertical-align: middle;
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.boxscore-container .table-wrapper-scroll {
  width: 100%;
  overflow-x: auto;
}

.boxscore-container .teamLogo-small {
  border-radius: 0;
  position: relative;
  display: inline-block;
  float: none;
  background-size: cover !important;
  width: 30px !important;
  vertical-align: middle;
  background: #fff;
  background-size: 100% auto;
  background-position: 50% 50%;
  margin: 2px 6px;
  border: none;
  margin: 2px 6px 2px 0;
}

.boxscore-container .boxscore-inner-container {
  clear: both;
}

.boxscore-container .boxscore-extras {
  font-size: 11px;
  text-transform: uppercase;
  padding: 6px 12px;
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

.boxscore-container .boxscore-extras .datetime {
  margin-right: 6px;
}

.boxscore-container .boxscore-extras .time {
  white-space: nowrap;
}

.boxscore-container .boxscore-extras .location,
.boxscore-container .boxscore-extras .game-id {
  display: inline-block;
  margin-right: 6px;
}

.boxscore-container .boxscore-extras .game-show-link {
  color: #0DB14C;
  font-size: 13px;
  text-transform: uppercase;
  font-size: inherit;
  float: right;
}

.boxscore-container .boxscore-extras .game-show-link:after {
  color: #0054A6;
  content: '\f061';
  display: inline-block;
  font-family: 'FontAwesome';
  margin: -.1em 0 0 .4em;
  font-size: .9em;
}

.sn-table-game-highlight {
  border-spacing: 0;
  margin-top: 2px;
  border-collapse: initial;
  width: 100%;
}

.sn-table-game-highlight td, .sn-table-game-highlight th {
  background-clip: padding-box !important;
  border-color: transparent;
  border-style: solid;
  border-width: 0 2px 2px 0;
}

.sn-table-game-highlight td:last-child, .sn-table-game-highlight th:last-child {
  border-right: 0;
}

.sn-table-game-highlight tr:last-child td {
  border-bottom: 0;
}

.sn-table-game-highlight tbody td {
  background: #eee;
}

.sn-table-game-highlight th {
  height: 30px;
  padding: 15px 12px;
  background: #E1E8ED;
  white-space: nowrap;
  border: none;
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
}

.sn-table-game-highlight tbody td {
  font-size: 12px;
  padding: 10px 12px;
  text-align: center;
  height: 30px;
  background: transparent !important;
  border: none;
  border-bottom: solid 1px #E1E8ED;
}

.sn-table-game-highlight tbody td.highlight {
  background: #fff;
}

.sn-table-game-highlight tfoot {
  background: none;
}

.sn-table-game-highlight tfoot td {
  font-size: 11px;
  text-transform: uppercase;
  padding: 6px 12px;
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

.sn-table-game-highlight tfoot td > div {
  display: inline-block;
}

.sn-table-game-highlight tfoot a {
  color: #0DB14C;
  font-size: 13px;
  text-transform: uppercase;
  font-size: inherit;
  float: right;
}

.sn-table-game-highlight tfoot a:after {
  color: #0054A6;
  content: '\f061';
  display: inline-block;
  font-family: 'FontAwesome';
  margin: -.1em 0 0 .4em;
  font-size: .9em;
}

/* FCK Editor tweaks
-------------------------------------------------------------------- */
.selectElement {
  display: block;
  list-style-type: none;
  height: 150px;
  position: relative;
  overflow: auto;
  border: 1px solid #CCC;
  margin: 0 25px;
}

.selectElement .odd {
  background-color: #EFEFEF;
}

.selectElement li {
  display: block;
  margin: 0;
  padding: 3px 5px;
  background-repeat: no-repeat;
}

.selectElement input, .selectElement img, .selectElement h4 {
  display: inline;
  margin-left: 5px;
  vertical-align: middle;
  font-weight: normal;
}

/* CMS Button
-------------------------------------------------------------------- */
.cmsButton {
  display: block;
  font-size: 14px;
  line-height: 200%;
  text-decoration: none;
  background-image: url("https://app-assets1.sportngin.com/app_images/cmsButton.gif");
  background-repeat: repeat-x;
  text-align: center;
  font-weight: bold;
}

/* Admin Toggle Button
-------------------------------------------------------------------- */
.goToAdmin {
  background-image: url("https://app-assets1.sportngin.com/app_images/siteAdminToggle.gif");
}

.goToWebsite {
  background-image: url("https://app-assets1.sportngin.com/app_images/websiteToggle.gif");
}

/* ADMIN - Page Options
-------------------------------------------------------------------- */
#adminPageOptions {
  display: block;
  line-height: 18px;
  background-color: #FDE872;
}

#adminPageOptions a {
  text-decoration: none;
}

#adminPageOptions option {
  padding-right: 10px;
}

#adminPageOptions label {
  font-weight: bold;
}

.editPageLink:link, .editPageLink:visited {
  display: block;
  text-decoration: none;
  text-align: center;
  padding: 3px;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .15em;
  background-color: #F9D100;
  border-top: solid 1px #DDA301;
  border-bottom: solid 1px #DDA301;
  margin: 0 1px 25px 1px;
}

/* Construction Rapid Content
-------------------------------------------------------------------- */
.rapidContentConstruction {
  padding: 15px 15px 0;
  background: #FDE872 url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x bottom left;
  border-bottom: solid 1px #DDA301;
}

.rapidContentConstruction .pageElementAdmin {
  margin-left: 0;
  margin-right: 0;
  background: #FFF3B0;
  border: 1px solid #DDA301;
}

.rapidContentConstruction .pageElementAdmin .pageElement {
  margin: 10px;
}

.rapidTabsConstructionLoader {
  background: #FDE872 url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x bottom left;
  border-bottom: solid 1px #DDA301;
}

/* CMS Page Status */
.cmsPageStatus {
  margin-bottom: 15px;
  text-align: center;
}

.cmsPageStatus ul {
  display: block;
  list-style-type: none;
  width: 395px;
  margin: 0 auto;
}

.cmsPageStatus ul li {
  float: left;
}

.cmsPageStatus li a {
  display: block;
  height: 30px;
  height: 0pt;
  overflow: hidden;
  padding-top: 30px;
}

.cmsPageStatus .cmsPageDisabled a {
  width: 103px;
  background-image: url("https://app-assets1.sportngin.com/app_images/publicPrivateToggle_disabled.png");
}

.cmsPageStatus .cmsPagePaywalled a {
  width: 112px;
  background-image: url("https://app-assets1.sportngin.com/app_images/publicPrivateToggle_paywalled.png");
}

.cmsPageStatus .cmsPagePrivate a {
  width: 91px;
  background-image: url("https://app-assets1.sportngin.com/app_images/publicPrivateToggle_private.png");
}

.cmsPageStatus .cmsPagePublic a {
  width: 89px;
  background-image: url("https://app-assets1.sportngin.com/app_images/publicPrivateToggle_public.png");
}

.cmsPageStatus .selected a {
  background-position: 0 -30px;
}

.cmsPageStatus .inlineHelp, .inlineHelp {
  clear: left;
  font-size: .8em;
  line-height: 135%;
  padding: 15px 5px;
}

/* CMS Page Tab Tables */
.rapidContentConstruction .dataTable, .rapidContentConstruction .resultsTable, #profiles_table {
  border: solid 1px #DDA301;
  text-align: left;
  margin-bottom: 15px;
  clear: both;
}

.rapidContentConstruction .odd {
  background-color: #FFF3B0;
}

.rapidContentConstruction .even {
  background-color: #FEFCF4;
}

.rapidContentConstruction .genericPermissions {
  color: #333333;
}

/* White inner container for content construction tabs
-------------------------------------------------------------------- */
.rapidContentConstructionInner {
  background: #fff;
  border: 1px solid #DDA301;
  margin-bottom: 15px;
  padding: 15px;
}

.rapidContentConstructionInner .layoutContainer {
  background: transparent;
  border: none;
}

.rapidContentConstructionInner .pageElement {
  margin-left: 0;
  margin-right: 0;
}

.rapidContentConstructionInner .statTable th,
.rapidContentConstructionInner .statTable td {
  width: auto;
}

.rapidContentConstructionInner .statTable .odd {
  background-color: #f2f2f2;
}

.rapidContentConstruction .rapidContentConstructionInner .odd {
  background-color: #f2f2f2;
}

.rapidContentConstruction .rapidContentConstructionInner .even {
  background-color: #e5e5e5;
}

.rapidContentConstructionInner .pageElement:last-child,
.rapidContentConstructionInner .pageElement:last-child .dataTable {
  margin-bottom: 0;
}

/* Yellow inner container for content construction tabs
-------------------------------------------------------------------- */
.rapidContentConstructionInnerYellow {
  background: #fff3b0;
  border: 1px solid #DDA301;
  clear: both;
  margin-bottom: 15px;
  padding: 15px 0;
}

/* Data Tables
-------------------------------------------------------------------- */
.rapidContentConstruction .dataTable td, .rapidContentConstruction .dataTable th, .rapidContentConstruction .resultsTable tr {
  border: none;
}

.dataTable .odd .permissionDisabled {
  background: #CCC;
}

.dataTable .even .permissionDisabled {
  background: #EFEFEF;
}

.dataTable .key .permissionDisabled {
  background: #999;
}

.dataTable .profilePic {
  float: left;
}

.dataTable .profilePic img {
  float: left;
}

.dataTable .profileSubPic {
  float: left;
  margin: 10px 5px 0 -10px;
}

.dataTable td .profileSubPic img {
  height: 16px;
  width: 16px;
}

.dataTable .persona {
  line-height: 25px;
}

.dataTable .persona input {
  margin: 5px 10px 0 5px;
  float: left;
}

.dataTable .persona .profilePic {
  line-height: 0;
}

.dataTable .persona img {
  line-height: 0;
  width: 25px;
  height: 25px;
}

.dataTable .persona .name {
  font-weight: bold;
  font-size: 12px;
  float: left;
}

#userPage .dataTable .persona {
  line-height: 1.2em;
}

.dataTable .personaSmall .profilePic {
  line-height: 0;
  margin: 5px 5px 0 0;
}

/* used in User section */
.dataTable .savedMessage {
  text-transform: uppercase;
  font-weight: bold;
}

/*  Archived Page Admin Status
-------------------------------------------------------------------- */
.cmsTabHeader {
  font-size: 14px;
  font-weight: normal;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #666;
  padding-top: 0;
  margin: 0 5px 5px 0;
  float: left;
}

.adminPageSettings {
  width: 50%;
  float: left;
  display: block;
  margin-top: auto;
  margin-bottom: auto;
}

.adminPageStatus {
  width: 40%;
  float: right;
  text-align: right;
  display: block;
}

.adminPageStatus p {
  margin-bottom: 7px;
}

.adminPageStatus li {
  list-style-type: none;
}

.objectAttributesLinkDiv ul {
  padding: 0 10px 10px;
  list-style-type: none;
}

.pageElementMenu {
  clear: both;
  background: #FDE872 url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x bottom left;
  border-bottom: 1px solid #DDA301;
  border-top: 1px solid #DDA301;
  margin-bottom: 5px;
  text-align: left;
  padding: 15px;
  text-align: center;
}

.pageElementMenu p {
  margin-bottom: 0;
}

#tab_content_content .pageElementMenu {
  border-top: none;
}

#tab_content_content .pageElementMenu h3 {
  font-size: 1em;
}

.addElementMenu {
  text-align: center;
  margin-bottom: 5px;
}

/* CMS Page Options */
.cmsPageOptions {
  clear: both;
  list-style-type: none;
  margin-bottom: 15px;
  line-height: 200%;
}

.cmsPageOptions label {
  font-weight: bold;
}

/* CMS Node Picker */
.pageElementAdmin .pageElementMenu, .pageElementAdmin .nodePickerContainer {
  margin-left: 0px;
  margin-right: 0px;
}

/* ADMIN - Page Elements
-------------------------------------------------------------------- */
/* PE spacing */
.pageElementAdmin {
  margin: 15px;
  position: relative;
  clear: both;
}

.layoutContainer .pageElementAdmin {
  margin: 0 5px;
}

.collectorElement .pageElementAdmin {
  margin: 0 0 20px 0;
}

.layoutContainer .pageElementAdmin .pageElement, .layoutContainer .pageElementAdmin .formElement, .layoutContainer .pageElementAdmin .hrElement, .pageElementAdmin .pageElement {
  margin: 3px 0 0;
}

.layoutContainer .pageElementAdmin .formElement {
  margin-top: 0;
}

/* Collapse PE Button */
.collapsePE {
  padding-left: 13px;
  background: url("https://app-assets1.sportngin.com/app_images/nav_assets_black.gif") no-repeat 0 5px;
}

.expandPE {
  padding-left: 13px;
  background: url("https://app-assets1.sportngin.com/app_images/nav_assets_black.gif") no-repeat 0 -78px;
}

/* Admin Bar  Delete/Enable */
.elementBar .pageElement_delete,
.containerBar .layoutContainer_delete {
  box-sizing: content-box;
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/pe_trash.png");
  background-position: 3px 3px;
  background-repeat: no-repeat;
  padding: 0 5px !important;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
}

.elementBar .pageElement_delete:hover {
  background-position: 3px -47px;
}

.containerBar .layoutContainer_delete {
  background-position: 3px -20px;
}

.containerBar .layoutContainer_delete:hover {
  background-position: 3px -45px;
}

.elementBar .pageElement_enable {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/pe_reload.png");
  background-position: 95% 3px;
  background-repeat: no-repeat;
  padding: 0 20px 0 8px !important;
}

.elementBar .pageElement_enable:hover {
  background-position: 95% -47px;
}

.drag .elementBar,
.lock .drag .elementBar,
.dragTwo .containerBar {
  cursor: move;
  position: relative;
}

.pageElementAdmin .lock .elementBar,
.lock .containerBar,
.drag .lock .elementBar,
.drag .pageElement {
  cursor: default;
}

.pageElementAdmin .elementBar,
.photoGalleryThumb .elementBar,
.galleryThumbAdmin .elementBar,
.clientGraphic .elementBar {
  display: table;
  width: 100%;
  height: 24px;
  background: #FCCD22 url("https://app-assets1.sportngin.com/app_images/elementBar.gif") repeat-x;
  text-transform: uppercase;
  font-size: 10px;
  line-height: 22px;
  position: relative;
}

.elementBar > * {
  display: table-cell;
  vertical-align: middle;
}

.elementBar > .handle {
  width: 100%;
  text-transform: none;
  font-weight: normal !important;
  color: #555;
  line-height: 24px !important;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.elementBar .elementTitle {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.elementBar .elementTitle span {
  display: table-cell;
  overflow: hidden;
  padding-right: 8px;
  text-overflow: ellipsis;
  word-wrap: normal;
}

.elementBar,
.elementBar a:link,
.elementBar a:visited {
  color: #333;
  text-decoration: none;
  margin: 1px 0;
}

.elementBar a:hover {
  background-color: #FFDF5F;
}

.pageElementAdmin .elementBarMini {
  display: block;
  width: auto;
  font-size: 10px;
  height: 16px;
  line-height: 14px;
  position: relative;
  text-transform: uppercase;
}

.pageElementAdmin .elementBarMini .buttons {
  line-height: 16px;
}

.pageElementAdmin .elementBarMini .buttons a {
  min-width: 6px;
}

.dragTwo .handle,
.drag .handle,
.lock .handle,
.working .handle {
  height: 24px;
  padding-left: 20px;
  background-repeat: no-repeat;
  background-position: 4px 6px;
  line-height: 22px;
  font-weight: bold;
}

.dragTwo .handle, .drag .handle {
  background-image: url("https://app-assets1.sportngin.com/app_images/dragIcon.gif");
}

.lock .handle {
  background-image: url("https://app-assets1.sportngin.com/app_images/lockedIcon.gif");
}

.working .handle {
  background-image: url("https://app-assets1.sportngin.com/app_images/dragIcon_locked.gif");
}

.elementBar .buttons,
.containerBar .buttons {
  display: table;
  margin: 0 0 0 auto;
  line-height: 22px;
  width: auto;
  cursor: auto;
}

.elementBar .buttons a,
.elementBar .buttons span {
  text-align: center;
  white-space: nowrap;
  border-left: solid 1px #DDA301;
  padding: 0 5px;
  display: table-cell;
  min-width: 11px;
}

.elementBar .buttons span {
  color: #EFEFEF;
  cursor: default;
}

.elementBar a.gray_out {
  opacity: 0.4;
}

.buttonImage {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-position: center;
  background-size: 15px 15px;
  background-repeat: no-repeat;
  /* Safari/Chrome, other WebKit */
  /* Firefox, other Gecko */
  box-sizing: content-box;
  /* Opera/IE 8+ */
}

.actionButton {
  background-position: center;
  background-size: 15px 15px;
  background-repeat: no-repeat;
  text-indent: -999em;
  text-align: left;
  /* Safari/Chrome, other WebKit */
  /* Firefox, other Gecko */
  box-sizing: content-box;
  /* Opera/IE 8+ */
}

.buttonImageAdd {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/image_add.svg");
}

.buttonImageRemove {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/image_remove.svg");
}

.buttonChain {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/link.svg");
}

.buttonPrint {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/print.svg");
}

.buttonAddArticle {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/add_article.svg");
}

.buttonTool {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/tool.svg");
}

.buttonCopy {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/copy.svg");
}

.buttonDelete {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/trash.svg");
}

.buttonDownload {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/download.svg");
}

.buttonEdit {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/edit.svg");
}

.buttonPlayer {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/player.svg");
}

.buttonTrade {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/trade.svg");
}

.buttonEvent {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/event.svg");
}

.buttonFlag {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/flag.svg");
}

.buttonIcalFeed {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/calendar.svg");
}

.buttonGroup {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/group.svg");
}

.buttonMove {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/website_tree.svg");
}

.buttonSave {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/save.svg");
}

.buttonScore {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/score.svg");
}

.buttonUpload {
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/upload.svg");
}

.warning {
  background: #fde872;
  border: 1px solid #FCCD22;
  padding: 10px;
}

/* ADMIN - Layout Container
-------------------------------------------------------------------- */
.collapsed .pageElementAdmin .pageElement {
  height: 35px;
  overflow: hidden;
}

.collapsed .pageElementAdmin .formElement {
  display: none;
}

.layoutContainerAdmin {
  width: 100%;
  margin-bottom: 5px;
}

.layoutContainerAdmin .layoutContainer {
  border: solid 3px #999;
  padding: 3px;
}

.layoutContainerAdmin .layoutContainer .layoutContainer {
  border: none;
}

.containerBar {
  display: table;
  width: 100%;
  height: 25px;
  background-color: #CCC;
  text-transform: uppercase;
  font-size: 11px;
  margin: 0;
  background: url("https://app-assets1.sportngin.com/app_images/layoutContainerBar.gif");
}

.dragTwo .containerBar .handle,
.lock .containerBar .handle {
  display: table-cell;
  width: 100%;
  height: 25px;
  line-height: 25px;
  padding-left: 20px;
  background-repeat: no-repeat;
  background-position: 4px 6px;
  font-weight: bold;
  color: #666;
}

.containerBar .buttons a,
.containerBar .buttons span {
  display: table-cell;
  min-width: 11px;
  border-left: solid 1px #999;
  padding: 0 8px;
  text-decoration: none;
  height: 25px;
  line-height: 25px;
  color: #666;
}

.containerBar .buttons a:hover {
  background-color: #666;
  color: #FFF;
}

.columnBounds {
  margin: 0 3px;
  border: dashed 1px #DDA301;
}

.layoutContainerAdmin .columnBounds {
  border: dashed 1px #DDA301;
  margin: 0 0 0 3px;
}

.layoutContainerMirrored {
  background: url("https://app-assets1.sportngin.com/app_images/mirrorBackground-layoutContainer.png");
}

.layoutContainerMirrored .columnBounds {
  border: none;
  margin: 0;
}

.layoutContainerMirrored .mirrorButton {
  display: none;
}

.addPageElement {
  display: block;
  margin: 5px;
  height: 30px;
  text-align: center;
  text-indent: -10000px;
  background: url("https://app-assets1.sportngin.com/app_images/addPE.png") no-repeat center center;
}

.addPageElement:hover {
  font-weight: bold;
  text-decoration: none;
  line-height: 30px;
  text-indent: 0;
  font-size: 10px;
  background: url("https://app-assets1.sportngin.com/app_images/addPE_hover.png") no-repeat center center;
}

.addPageElementTop {
  display: block;
  margin: 5px;
  height: 30px;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
  line-height: 30px;
  text-indent: 0;
  font-size: 10px;
  background: url("https://app-assets1.sportngin.com/app_images/addPE_hover.png") no-repeat center center;
}

/* ADMIN - Collectors and Aggregators
-------------------------------------------------------------------- */
.pageElementAdmin .collectorElement .item {
  width: 98%;
}

/* ADMIN - Table Builder
-------------------------------------------------------------------- */
.tableBuilder td {
  border: solid 3px #CCC;
  padding: 0;
}

.tableBuilder .input {
  font-size: 10px;
  line-height: 11px;
  width: 75px;
  padding: 2px;
}

.tableBuilder .buildLinks {
  background-color: #EFEFEF;
  font-weight: bold;
  text-align: center;
  width: 51px;
}

.tableBuilder .buildLinks a {
  background-repeat: no-repeat;
  background-position: center center;
  width: 25px;
  display: block;
  height: 15px;
  overflow: hidden;
  float: right;
}

.tableBuilder .buildLinks a:hover {
  background-color: #FFF;
}

.tableBuilder .buildLinks .right {
  background-image: url("https://app-assets1.sportngin.com/app_images/table_builder_right.gif");
  border-left: solid 1px #CCC;
}

.tableBuilder .buildLinks .down {
  background-image: url("https://app-assets1.sportngin.com/app_images/table_builder_down.gif");
}

.tableBuilder .buildLinks .delete {
  background-image: url("https://app-assets1.sportngin.com/app_images/table_builder_x.gif");
  border-left: solid 1px #CCC;
}

.tableBuilder .headerEnabled input {
  background-color: #666;
  color: #FFF;
  font-weight: bold;
}

/* li-edit options */
.liEdit {
  list-style-type: none;
  border-top: solid 1px #CCC;
  background-color: #FFF;
}

.liEdit .liEditLink {
  font-size: 11px;
  text-transform: uppercase;
  padding: 0 5px;
  margin-left: 5px;
  border-left: solid 1px #DDA301;
}

.liEdit .liEditLink:link, .liEdit .liEditLink:visited {
  text-decoration: none;
}

.dragTwo.liEdit {
  background-image: url("https://app-assets1.sportngin.com/app_images/dragIcon.gif");
  background-repeat: no-repeat;
  background-position: 5px center;
  padding-left: 25px;
  cursor: move;
}

.locked.liEdit {
  background-image: url("https://app-assets1.sportngin.com/app_images/lockedIcon.gif");
  background-repeat: no-repeat;
  background-position: 5px center;
  padding-left: 25px;
  cursor: default;
}

.liEdit.disabled {
  color: #999;
  background-color: #EFEFEF;
}

/*  Setting Values
-------------------------------------------------------------------- */
.settingValues {
  display: block;
  margin: -1px 0 0;
  padding: 3px 5px;
  font-size: 10px;
  color: #333;
  list-style-type: none;
  background-color: #fef7d0;
}

.settingValues .settingValues li {
  line-height: 160%;
}

.settingValues .settingValues label {
  font-weight: bold;
}

.settingValues.forForm {
  background-color: transparent;
}

/*  Game Status
-------------------------------------------------------------------- */
.gameStatusConstruction {
  padding: 15px 15px 0;
  background: #FDE872 url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x bottom left;
  border-bottom: solid 1px #DDA301;
}

.cmsGameStatus {
  margin: 5px 0 0;
  text-align: center;
}

.cmsGameStatus ul {
  display: block;
  list-style: none;
  margin: 0 auto 4px;
  width: 242px;
}

.cmsGameStatus li {
  float: left;
}

.cmsGameStatus li a {
  background: url("https://app-assets1.sportngin.com/app_images/gameStatusToggle.png") 0 0;
  display: block;
  height: 30px;
}

.cmsGameStatus .cmsGameScheduled a {
  width: 91px;
}

.cmsGameStatus .cmsGameInProgress a {
  background-position: -91px 0;
  width: 96px;
}

.cmsGameStatus .cmsGameFinal a {
  background-position: -187px 0;
  width: 55px;
}

.cmsGameStatus .cmsGameScheduled a.selected,
.cmsGameStatus .cmsGameScheduled a:hover {
  background-position: 0 -30px;
}

.cmsGameStatus .cmsGameInProgress a.selected,
.cmsGameStatus .cmsGameInProgress a:hover {
  background-position: -91px -30px;
}

.cmsGameStatus .cmsGameFinal a.selected,
.cmsGameStatus .cmsGameFinal a:hover {
  background-position: -187px -30px;
}

.cmsGameUnscheduled {
  padding: 0 0 15px;
  width: 100%;
}

.cmsGameButtons {
  float: right;
  text-align: right;
}

/* Misc.
-------------------------------------------------------------------- */
.spinner-inline {
  margin: 0 0 -4px;
}

.status-loading {
  background: url("https://app-assets1.sportngin.com/app_images/miniLoader.gif") 5px 50% no-repeat;
  padding: 5px 0 5px 25px;
}

/*  Flash and Error Notices
-------------------------------------------------------------------- */
#flashNotice, #flashError, #errorExplanation, .formError, .registration_lookup_not_found {
  background-repeat: repeat-x;
  background-color: #FFF6C6;
  clear: both;
  margin-top: 15px;
}

#flashNotice, #flashError, #errorExplanation {
  border: 1px solid #FDE045;
  margin-bottom: 15px;
}

#displayBodyContent .mailSubscribeElement #errorExplanation {
  margin: 0;
}

#lbContent #flashNotice, #lbContent #flashError, #lbContent #errorExplanation {
  margin: 10px 0;
  background-color: #C60005;
  border: 1px solid #FFF;
  background-image: none;
}

#lbContent #flashNotice h2, #lbContent #flashError h2, #lbContent #errorExplanation h2 {
  color: #fff;
}

#errorExplanation, .registration_lookup_not_found {
  padding: 10px 10px 15px 10px;
}

#flashNotice span, .flashNotice span {
  background-image: url("https://app-assets1.sportngin.com/app_images/noticeIcon.gif");
}

#flashError span, #flashNotice span, .flashNotice span {
  display: block;
  padding: 15px 10px 15px 45px;
  background-position: 10px 12px;
  background-repeat: no-repeat;
  background-size: 25px;
}

#flashNotice span, .flashNotice span {
  background-image: url("https://app-assets1.sportngin.com/app_images/noticeIcon.gif");
}

#flashError span {
  background-image: url("https://app-assets1.sportngin.com/app_images/errorIcon.gif");
}

#flashRichMessage span {
  display: block;
  padding: 15px 10px 15px 45px;
  background-position: 10px 50%;
  background-repeat: no-repeat;
  background-image: url("https://app-assets1.sportngin.com/app_images/featureCheckmark.png");
}

#errorExplanation h2, .registration_lookup_not_found span {
  background-image: url("https://app-assets1.sportngin.com/app_images/errorIcon.gif");
  background-repeat: no-repeat;
  padding: 5px 0 5px 45px;
}

#flashNotice h2, #errorExplanation h2, #flashError h2, .flashNotice h2 {
  font-size: 16px;
  line-height: 120%;
  color: #867000;
  font-weight: normal;
  text-transform: capitalize;
}

#flashError, #errorExplanation {
  color: #C60005;
  font-weight: bold;
}

#flashRichMessage {
  background-color: #b5e2af;
}

#lbContent #flashError, #lbContent #flashNotice, #lbContent #errorExplanation {
  color: #FFF;
}

#errorExplanation p {
  margin-top: 5px;
}

#errorExplanation ul {
  margin: 5px 0 0 75px;
}

.draftNotice {
  color: #666;
  font-style: italic;
  font-weight: normal;
}

.miniAlert {
  background: #ffd url("https://app-assets1.sportngin.com/app_images/alert.png") 5px 4px no-repeat;
  background: rgba(255, 255, 204, 0.5) url("https://app-assets1.sportngin.com/app_images/alert.png") 5px 4px no-repeat;
  border: 1px solid #ff9;
  border: 1px solid rgba(255, 255, 153, 0.65);
  border-radius: 2px;
  padding: 5px 5px 5px 25px;
}

/* Form Error Messages
-------------------------------------------------------------------- */
.formError.formElement h4 {
  color: #C60005;
  font-size: 12px;
  background-image: url("https://app-assets1.sportngin.com/app_images/errorIconMini.gif");
  background-repeat: no-repeat;
  padding: 4px 0 15px 26px;
}

/* No Data has been previously entered
-------------------------------------------------------------------- */
.noEntry {
  color: #666;
  text-align: center;
  margin-top: 15px;
  font-size: 12px;
  line-height: 120%;
  padding: 10px;
  border-top: solid 1px #DDDDDD;
  background-color: #EFEFEF;
  font-style: italic;
  font-weight: bold;
}

.rapidContentConstruction .noEntry,
.constructionLightbox .noEntry {
  color: #DDA301;
  background: #FFF3B0;
  border-top: solid 1px #DDA301;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
}

/* User Actions Pane
-------------------------------------------------------------------- */
.userActionsPane {
  margin-top: 15px;
  width: 100%;
  list-style-type: none;
  line-height: 140%;
}

.userActionsPane li {
  background-color: #FFF6C6;
  background-image: url("https://app-assets1.sportngin.com/app_images/flashBack.jpg");
  background-repeat: repeat-x;
  border: 1px solid #FDE045;
  border-top: none;
  display: block;
  line-height: 120%;
  padding: 10px;
  margin: 0 0 15px;
}

.userActionsPane h5 {
  font-size: 18px;
  line-height: 120%;
  margin-bottom: 7px;
}

.userActionsPane p {
  margin-bottom: 10px;
}

/* Loading Animation
-------------------------------------------------------------------- */
.loadingAnimation {
  font-weight: bold;
  font-style: italic;
}

/* SPORT NGIN LIVE Notice
-------------------------------------------------------------------- */
.snlNotice {
  background: #FDE872 url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x scroll left bottom;
  text-align: center;
}

.snlNotice .snlText {
  background: url("https://app-assets1.sportngin.com/app_images/snlLogo-new.png") no-repeat center 6px;
  font-size: 14px;
  line-height: 120%;
  padding: 45px 10px 15px;
  text-align: center;
  overflow: hidden;
}

.snlNotice .snlText.notLive {
  background: url("https://app-assets1.sportngin.com/app_images/snLogo-new.png") no-repeat center 6px;
}

.snlScoringOptions {
  display: inline-block;
  zoom: 1;
  *display: inline;
  list-style: none;
  padding: 0 2px;
  border: 3px solid #FFF;
  background: #EEE;
  border-radius: 8px;
  box-shadow: inset 3px 3px 10px -5px #000;
}

.snlScoringOptions li {
  font-size: 11px;
  float: left;
  width: 180px;
  padding: 8px;
  margin: 0 -1px 0 1px;
  border-left: 1px solid #FFF;
  border-left-color: rgba(255, 255, 255, 0.7);
  border-right: 1px solid #DDD;
  border-right-color: rgba(0, 0, 0, 0.1);
  min-height: 10.5em;
}

.snlScoringOptions li:first-child {
  border-left: none;
  border-radius: 2px 0 0 2px;
  margin-left: -1px;
}

.snlScoringOptions li:last-child {
  border-right: none;
  border-radius: 0 2px 2px 0;
}

.snlScoringOptions li.disabled {
  background: #DDD;
  background: rgba(0, 0, 0, 0.05);
}

.snlScoringOptions li.liveScore {
  width: 320px;
}

.snlScoringOptions li p {
  padding: 0 10px;
  font-size: 11px;
  color: #AAA;
  text-align: left;
}

p.snlStatWarning strong {
  color: #FF0000;
}

p.snlStatWarning a {
  color: #000;
}

.snlScoringOptions .button-large {
  display: block;
  background-color: #666;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.3)), color-stop(100%, rgba(255, 255, 255, 0)));
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 100%);
  text-transform: uppercase;
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 15px;
}

.snlScoringOptions .button-large:hover {
  color: #FFF;
  background-color: #333;
}

.snlScoringOptions .button-large:active {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(255, 255, 255, 0.3)));
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
}

.snlScoringOptions li.liveScore .button-large {
  background-color: #111;
  font-size: 18px;
}

.snlScoringOptions li.disabled .button-large,
.snlScoringOptions li.disabled .button-large:hover {
  cursor: default;
  background-color: #CCC;
  color: #EEE;
  box-shadow: none;
  text-shadow: none;
}

/* SPORT NGIN LIVE Notice with Scorekeeper
-------------------------------------------------------------------- */
.ice_hockey .snlNotice .snlText {
  background: none;
  padding: 30px 10px;
}

.ice_hockey .snlScoringOptions {
  padding: 0;
  width: 848px;
  height: 258px;
  border: 4px solid #FFF;
  overflow: hidden;
  box-sizing: border-box;
}

.ice_hockey .snlScoringOptions li {
  margin: 0;
  padding: 12px;
  width: 210px;
  border-left: 0;
  border-right: 0;
  box-sizing: border-box;
}

.ice_hockey .snlScoringOptions li.liveScore {
  width: 420px;
}

.ice_hockey .snlScoringOptions li.scorekeeper {
  background: #000 url("https://app-assets1.sportngin.com/app_images/live/scorekeeper-hockey-bg.jpg") no-repeat center top;
  padding: 0;
  width: 420px;
  height: 250px;
}

.snlScoringOptions .scorekeeper a {
  background: transparent;
  width: 420px;
  height: 250px;
  display: block;
  margin: 0 auto;
  text-indent: -9999px;
}

/* Maintenance Message
-------------------------------------------------------------------- */
#maintenanceMessage {
  background: #fde045 url("https://app-assets1.sportngin.com/app_images/constructionBG.gif") 50% 50% repeat;
  background-image: -moz-linear-gradient(rgba(252, 205, 34, 0), rgba(252, 205, 34, 0.5)), url("https://app-assets1.sportngin.com/app_images/constructionBG.png");
  background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(252, 205, 34, 0)), to(rgba(252, 205, 34, 0.5))), url("https://app-assets1.sportngin.com/app_images/constructionBG.png");
  color: #333;
  padding: 15px;
  position: absolute;
  left: 35%;
  right: 35%;
  top: 50px;
  text-align: left;
  z-index: 999;
  -o-box-shadow: 0 10px 50px #000;
  box-shadow: 0 10px 50px #000;
  border-radius: 10px;
}

#maintenanceMessage div {
  background: #f2f2f2;
  background: #f2f2f2 -moz-linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0));
  background: #f2f2f2 -webkit-gradient(linear, 0 0, 0 100%, from(rgba(255, 255, 255, 0.5)), to(rgba(255, 255, 255, 0)));
  padding: 10px;
  -o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  border-radius: 3px;
}

#maintenanceMessage h2 {
  border-bottom: 1px solid #e5e5e5;
  padding: 0 0 10px;
  text-shadow: 0 1px 1px #fff;
}

#maintenanceMessage p {
  border-top: 1px solid #fff;
  padding: 5px 0 15px;
}

/* Tool Settings Success/Error message
-------------------------------------------------------------------- */
.form-notice {
  margin: 0 5px;
}

#siteHeader,
#tstRegistrationHeader,
#profilePanelOne {
  position: relative;
}

#siteHeader #adminNav,
#tstRegistrationHeader #adminNav {
  bottom: 0;
  position: absolute;
  right: 0;
  text-align: right;
  width: auto;
}

#siteHeader #adminNav a {
  display: block;
  width: 138px;
  margin: 0 10px 10px 0;
  float: right;
}

#tstRegistrationHeader #adminNav ul {
  list-style-type: none;
}

#tstRegistrationHeader #adminNav ul li {
  display: block;
  float: right;
}

#tstRegistrationHeader #adminNav ul li a {
  overflow: hidden;
  display: block;
  padding-top: 34px;
  height: 0;
  background-position: 0px 34px;
  margin: 0 5px 5px 0;
}

#tstRegistrationHeader #adminNav .admin_nav_user_mode a,
#tstRegistrationHeader #adminNav .admin_nav_edit_mode a {
  width: 51px;
}

#tstRegistrationHeader #adminNav .admin_nav_user_mode a {
  background-image: url("https://app-assets1.sportngin.com/app_images/reg_user_mode.gif");
}

#tstRegistrationHeader #adminNav .admin_nav_edit_mode a {
  background-image: url("https://app-assets1.sportngin.com/app_images/reg_edit_mode.gif");
}

#tstRegistrationHeader #adminNav .admin_nav_preview_mode a {
  width: 76px;
  background-image: url("https://app-assets1.sportngin.com/app_images/reg_preview_mode.gif");
}

#tstRegistrationHeader #adminNav .selected a {
  background-position: 0 0;
}

/* Layout Containers
---------------------------------------------------------------------------------------------------- */
.layoutContainer .column1, .layoutContainer .column2, .layoutContainer .column3, .layoutContainer .column4 {
  float: left;
  min-height: 1px;
}

.layoutContainer {
  padding-left: 1%;
}

#layoutsBin .layoutContainer {
  padding-left: 0;
}

.layoutContainer .layoutContainer {
  padding-bottom: 15px;
}

/* Container Widths
---------------------------------------------------------------------------------------------------- */
.oneColumn .column1, .layoutContainer .oneColumn .column1 {
  width: 100%;
}

.twoColumn2575 .column2, .twoColumn7525 .column1 {
  width: 75%;
}

.twoColumn6633 .column1, .twoColumn3366 .column2, .layoutContainer .twoColumn6633 .column1, .layoutContainer .twoColumn3366 .column2 {
  width: 66.6%;
}

.twoColumn5050 .column1, .twoColumn5050 .column2, .threeColumn502525 .column1, .threeColumn255025 .column2, .threeColumn252550 .column3, .layoutContainer .twoColumn5050 .column1, .layoutContainer .twoColumn5050 .column2, .layoutContainer .threeColumn502525 .column1, .layoutContainer .threeColumn255025 .column2, .layoutContainer .threeColumn252550 .column3 {
  width: 50%;
}

.threeColumn333333 .column1, .twoColumn6633 .column2, .twoColumn3366 .column1, .threeColumn333333 .column2, .threeColumn333333 .column3, .layoutContainer .threeColumn333333 .column1, .layoutContainer .twoColumn6633 .column2, .layoutContainer .twoColumn3366 .column1, .layoutContainer .threeColumn333333 .column2, .layoutContainer .threeColumn333333 .column3 {
  width: 33.3%;
}

.twoColumn2575 .column1, .twoColumn7525 .column2,
.threeColumn502525 .column2, .threeColumn502525 .column3,
.threeColumn255025 .column1, .threeColumn255025 .column3,
.threeColumn252550 .column1, .threeColumn252550 .column2,
.fourColumn25252525 .column1, .fourColumn25252525 .column2,
.fourColumn25252525 .column3, .fourColumn25252525 .column4,
.layoutContainer .threeColumn502525 .column2, .layoutContainer .threeColumn502525 .column3,
.layoutContainer .threeColumn255025 .column1, .layoutContainer .threeColumn255025 .column3,
.layoutContainer .threeColumn252550 .column1, .layoutContainer .threeColumn252550 .column2,
.layoutContainer .fourColumn25252525 .column1, .layoutContainer .fourColumn25252525 .column2,
.layoutContainer .fourColumn25252525 .column1, .layoutContainer .fourColumn25252525 .column2 {
  width: 25%;
}

/* Fluid Layout Exceptions
---------------------------------------------------------------------------------------------------- */
.oneColumn .condensedView,
.twoColumn6633 .column1 .condensedView,
.twoColumn3366 .column2 .condensedView {
  display: none;
}

.oneColumn .twoColumn6633 .column2 .condensedView,
.oneColumn .twoColumn3366 .column1 .condensedView,
.oneColumn .twoColumn5050 .condensedView,
.oneColumn .threeColumn333333 .condensedView,
.oneColumn .threeColumn502525 .condensedView,
.oneColumn .threeColumn255025 .condensedView,
.oneColumn .threeColumn252550 .condensedView {
  display: block;
}

.oneColumn .twoColumn6633 .column2 .condensedView,
.oneColumn .twoColumn3366 .column1 .condensedView,
.oneColumn .twoColumn5050 .condensedView,
.oneColumn .threeColumn333333 .condensedView,
.oneColumn .threeColumn502525 .condensedView,
.oneColumn .threeColumn255025 .condensedView,
.oneColumn .threeColumn252550 .condensedView {
  display: block;
}

.oneColumn .twoColumn6633 .column2 tr .condensedView,
.oneColumn .twoColumn3366 .column1 tr .condensedView,
.oneColumn .twoColumn5050 tr .condensedView,
.oneColumn .threeColumn333333 tr .condensedView,
.oneColumn .threeColumn502525 tr .condensedView,
.oneColumn .threeColumn255025 tr .condensedView,
.oneColumn .threeColumn252550 tr .condensedView {
  display: table-cell;
}

/*.twoColumn5050 .layoutContainer, .twoColumn6633 .layoutContainer, .twoColumn3366 .layoutContainer, .threeColumn502525 .layoutContainer, .threeColumn255025 .layoutContainer, .threeColumn252550 .layoutContainer{
  display: none;
}
*/
.layoutContainer .column1 .newsItemColumn, .layoutContainer .column2 .newsItemColumn, .layoutContainer .column3 .newsItemColumn {
  display: block;
}

/* Antonyms
---------------------------------------------------------------------------------------------------- */
.pe25 .noIn25 {
  display: none;
}

.pe33 .noIn33 {
  display: none;
}

.pe50 .noIn50 {
  display: none;
}

.pe66 .noIn66 {
  display: none;
}

.pe75 .noIn75 {
  display: none;
}

.pe100 .noIn100 {
  display: none;
}

/* Sub Nav Universal Style */
.subNav li,
.relatedSections li,
.siteUserMenu li {
  list-style-type: none;
  display: block;
}

.subNav a {
  display: block;
  text-decoration: none;
}

.subNav,
.relatedSections {
  background: #eee;
  padding: 10px;
  margin-bottom: 10px;
}

.subNav h4,
.relatedSections h4 {
  margin-bottom: 10px;
}

.user_mode .subNav li,
.user_mode .relatedSections li {
  -webkit-transition: padding 200ms, background-color 200ms;
          transition: padding 200ms, background-color 200ms;
}

.user_mode .subNav li:hover,
.user_mode .relatedSections li:hover,
.user_mode #parent_nodes > li:last-child {
  background: #ccc;
  padding: 0 15px;
}

.user_mode .subNav li,
.user_mode .relatedSections li {
  background: #ddd;
  padding: 0 10px;
}

.edit_mode {
  /* Drag or Lock */
  /* Subnav CMS */
}

.edit_mode .subNav li:hover,
.edit_mode #parent_nodes > li:last-child {
  text-decoration: underline;
  padding: 0 10px;
}

.edit_mode .subNav .lock {
  background-image: url("https://app-assets1.sportngin.com/app_images/lockedIcon.gif");
}

.edit_mode .subNav .drag,
.edit_mode .subNav .working,
.edit_mode .subNav .lock,
.edit_mode #sequenceMenu .drag,
.edit_mode #sequenceMenu .working {
  padding: 0 10px;
  background-color: #fccd22;
  /* construction yellow */
  background-position: right center;
  background-repeat: no-repeat;
}

.edit_mode .cmsNavButton a {
  background: url("https://app-assets1.sportngin.com/app_images/buildStripe.gif");
  font-weight: bold;
}

.edit_mode .subNav .drag,
.edit_mode #sequenceMenu .drag {
  cursor: move;
  background-image: url("https://app-assets1.sportngin.com/app_images/dragIcon.gif");
}

.edit_mode .subNav .working,
.edit_mode #sequenceMenu .working {
  background-image: url("https://app-assets1.sportngin.com/app_images/dragIcon_locked.gif");
}

.edit_mode .subNav .cmsNavButton,
.edit_mode .subNav .cmsNavButton:hover {
  padding: 0;
  text-indent: 10px;
}

/* Site User Menu */
.siteUserMenu {
  background: #666;
  font-size: 11px;
}

.siteUserMenu h4 {
  color: #fff;
  background: url("https://app-assets1.sportngin.com/app_images/ngin_stamp_logo.png") no-repeat 3px 5px;
  padding-left: 60px;
  height: 26px;
  line-height: 30px;
  font-weight: bold;
  font-size: 12px;
}

.siteUserMenu a,
.siteUserMenu a:hover {
  display: block;
  padding: 5px;
  color: #fff;
}

#survey_steps a {
  color: #0054A6;
}

#survey_steps .dragTwo .handle,
#survey_steps .drag .handle {
  height: auto;
}

#survey_steps .siteContainer {
  width: 100%;
  max-width: 990px;
  display: block;
  margin: auto;
}

#survey_steps .siteContainer #accountNav {
  margin: auto;
  padding: 0px;
}

#survey_steps .siteContainer #adminNav {
  top: 93px;
}

#survey_steps .siteContainer .adminToggle {
  display: block;
  position: absolute;
  padding: 0;
  top: 0;
  right: 0;
  width: 75px;
  height: 75px;
  text-indent: -1000px;
  background-repeat: no-repeat;
  overflow: hidden;
}

#survey_steps .siteContainer #surveyNameHeader h1 {
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
  background-color: #0DB14C;
  font: bold 22px/40px "Montserrat", sans-serif;
  padding: 0 15px;
}

@media only screen and (min-width: 421px) and (max-width: 767px) {
  #survey_steps .siteContainer #surveyNameHeader h1 {
    padding-left: 180px;
    text-align: right;
  }
}

@media only screen and (max-width: 420px) {
  #survey_steps .siteContainer #surveyNameHeader h1 {
    background-image: none !important;
  }
}

#survey_steps .siteContainer #pageContentContainer #panelOne {
  width: 100%;
  max-width: 30%;
  display: inline-block;
  float: left;
  padding: 5px;
  padding-bottom: 30px;
}

#survey_steps .siteContainer #pageContentContainer #panelTwo {
  width: 100%;
  max-width: 70%;
  display: inline-block;
  float: left;
  padding: 5px;
}

.miniPersona + #survey_steps .textBlockElement {
  margin-top: 1em;
}

#survey_steps .textBlockElement .pageElement .resultsTable {
  margin: .5em 0 1.5em 0;
  width: 100%;
}

#survey_steps .textBlockElement .pageElement .resultsTable tr {
  border: none;
  border: 1px solid #CCC;
}

#survey_steps .textBlockElement .pageElement .resultsTable th, #survey_steps .textBlockElement .pageElement .resultsTable td {
  background: none;
  color: #333;
  border: none;
  text-align: left;
  padding: .45em .75em;
}

#survey_steps .textBlockElement .pageElement .resultsTable th {
  width: 35%;
  border-right: 1px solid #CCC;
}

#survey_steps #siteFooter {
  max-width: 990px;
  background-color: #0DB14C;
  padding: 15px;
  text-align: center;
}

#survey_steps #siteFooter a {
  color: #fff;
  text-decoration: none;
  margin-right: 10px;
  opacity: 0.9;
  font: 100 0.9em/1.5em "Montserrat", sans-serif;
}

#survey_steps #siteFooter a:hover {
  opacity: 1;
}

#survey_steps.edit_mode .rapidTabsConstruction {
  border-top: 0px;
}

#survey_steps.edit_mode .contentTabs.rapidTabsConstruction a,
#survey_steps.edit_mode .contentTabs.rapidTabsConstruction a:hover {
  background-color: #e1af10;
  color: #666;
}

#survey_steps.edit_mode .contentTabs.rapidTabsConstruction .selected a {
  background-color: #fde771;
  color: #000;
}

#survey_steps.edit_mode .contentTabs.rapidTabsConstruction .selected a:hover {
  background-color: #F7CE29;
  color: #666;
}

#survey_steps.edit_mode .contentTabs.rapidTabsConstruction li span a {
  margin-right: 0px;
}

/* News Article View */
.newsItemElement .titleText {
  margin-bottom: 15px;
}

.newsItemElement .authorDetails {
  font-size: 12px;
  margin: 15px 0;
}

.newsItemElement .teaserText {
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 1rem;
  color: #666;
}

.newsItemElement .imageOriginal {
  display: block;
  width: 100%;
  border: 2px solid #ddd;
  margin-bottom: 1rem;
}

.newsItemElement .newsArticleThumbnail {
  float: left;
  margin: .35em 1em 0 0;
  border: 2px solid #ddd;
  height: 4em;
}

.newsPage .yieldPageContent {
  padding-top: 30px !important;
}

@media only screen and (max-width: 768px) {
  .newsPage .yieldPageContent {
    padding-top: 20px !important;
  }
}

.newsTags {
  font-size: .75rem;
}

/* Comments */
.wontFit {
  display: none;
}

.commentThreadElement-container > h3 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.thread + .thread {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.commentStreamContainer.ascending > .thread {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

.commentStreamContainer.descending > .thread {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.comment {
  padding: 30px 0;
}

.comment img {
  height: 60px;
  width: 60px;
  border: 2px solid #ddd;
  float: left;
}

.comment-meta .comment img {
  margin-right: 15px;
}

.subcomments {
  padding-left: 75px;
}

.subcomment {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.comment-content {
  padding-left: 75px;
}

.comment-content h3 {
  font-size: 1em;
  color: #666;
  text-transform: none;
}

.comment-content h3 span {
  color: transparent;
}

.comment-content p:last-child {
  margin-bottom: 0;
}

.comment-content .timeago {
  color: #666;
  display: block;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  font-size: 10px;
  text-transform: uppercase;
  margin: .5em 0 1.5em 0;
}

.comment-content .comment-links {
  margin: 0;
  line-height: 1;
}

.comment-content .comment-links a {
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
}

.commentAggregator > h3 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.commentAggregator .comment {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

.commentAggregator .comment:last-of-type {
  border: none;
}

.commentAggregator .comment .comment-meta {
  margin: 0;
}

.commentAggregator .comment .comment-meta img {
  max-height: 2.5em;
  max-width: 2.5em;
  margin: 5px 8px 0 0;
}

.commentAggregator .comment .comment-meta > b {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.125;
}

.commentAggregator .comment .comment-meta .timeago {
  display: block;
  font-size: 10px;
  font-style: normal;
  line-height: 1.125;
  text-transform: uppercase;
  margin: .25em 0 0 0;
}

.comment .comment-meta img {
  margin-right: 15px;
}

.commentStreamContainer.ascending .comment-form:nth-child(2) {
  margin-top: 1.5em;
}

.comment-form fieldset {
  min-width: inherit;
  border: none;
}

.comment-form fieldset span.processing {
  display: none;
}

.comment-form fieldset + fieldset {
  margin-top: 10px;
}

.comment-form label {
  font-size: .875em;
  color: #333;
  line-height: initial;
  font-weight: 600;
  display: block;
}

.comment-form input.text {
  width: 100%;
  border: 1px solid #eee;
  padding: 5px;
  margin-top: 5px;
}

.comment-form label + br {
  display: none;
}

.comment-form input + label,
.comment-form textarea + label {
  margin-top: 10px;
}

.comment-form textarea {
  border: 1px solid #eee;
  margin-top: 5px;
  max-width: 100%;
  min-height: 5em;
  padding: 5px;
  width: 480px;
}

.comment-form input#recaptcha_response_field {
  border: 1px solid #eee !important;
  padding: 5px;
  background-color: #fff !important;
}

.comment-form .hideOnProcessing {
  margin-bottom: 5px;
}

.comment_element_recaptcha #recaptcha_area {
  width: 100%;
  overflow-x: auto;
  margin: 5px 0px;
  border: 1px solid #dfdfdf;
}

.comment_element_recaptcha .recaptchatable {
  border: none !important;
}

.comment_element_recaptcha .recaptchatable td.recaptcha_image_cell {
  width: 100%;
}

.comment_element_recaptcha .recaptchatable div#recaptcha_image {
  border: none !important;
  width: 100% !important;
  max-width: 300px;
}

.comment_element_recaptcha .recaptchatable div#recaptcha_image img#recaptcha_challenge_image {
  width: 100%;
  height: auto;
  border: 1px solid #eee;
}

.comment_element_recaptcha .recaptchatable img#recaptcha_logo {
  display: none;
}

.comment_element_recaptcha .recaptchatable span#recaptcha_privacy {
  font-size: .75em;
}

#lightbox .comment-content > h3, #lightbox .comment-content p {
  color: #666 !important;
}

@media only screen and (max-width: 420px) {
  .subcomments {
    padding-left: 2em;
  }
}

@media only screen and (min-width: 768px) and (max-width: 830px) {
  .col-md-6 .subcomments {
    padding-left: 2em;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-4 .subcomments {
    padding-left: 2em;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .subcomments {
    padding-left: 2em;
  }
}

@media only screen and (max-width: 320px) {
  .commentThreadElement-container .comment img {
    float: none;
    margin-bottom: 12px;
  }
  .comment-content {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 930px) {
  .col-md-4 .commentThreadElement-container .comment img {
    float: none;
    margin-bottom: 12px;
  }
  .col-md-4 .comment-content {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .commentThreadElement-container .comment img {
    float: none;
    margin-bottom: 12px;
  }
  .col-md-3 .comment-content {
    padding-left: 0;
  }
}

@media only screen and (min-width: 769px) and (max-width: 999px) {
  .layout-25-25-50 .col-md-3 .commentThreadElement-container .comment img, .layout-25-25-50 .col-md-6 .commentThreadElement-container .comment img,
  .layout-50-25-25 .col-md-3 .commentThreadElement-container .comment img,
  .layout-50-25-25 .col-md-6 .commentThreadElement-container .comment img {
    margin: 0;
    float: left;
  }
  .layout-25-25-50 .col-md-3 .comment-content, .layout-25-25-50 .col-md-6 .comment-content,
  .layout-50-25-25 .col-md-3 .comment-content,
  .layout-50-25-25 .col-md-6 .comment-content {
    padding-left: 75px;
  }
  .layout-25-25-50 .col-md-3 .subcomments, .layout-25-25-50 .col-md-6 .subcomments,
  .layout-50-25-25 .col-md-3 .subcomments,
  .layout-50-25-25 .col-md-6 .subcomments {
    padding-left: 75px;
  }
  .layout-25-50-25 .col-md-3 .commentThreadElement-container .comment img, .layout-25-50-25 .col-md-6 .commentThreadElement-container .comment img {
    margin-right: 1em;
    float: none;
    margin-bottom: 12px;
  }
  .layout-25-50-25 .col-md-3 .comment-content, .layout-25-50-25 .col-md-6 .comment-content {
    padding-left: 0;
  }
  .layout-25-50-25 .col-md-3 .subcomments, .layout-25-50-25 .col-md-6 .subcomments {
    padding-left: 2em;
  }
}

/* Button Styles */
.button-small, .pill-small-left, .pill-small-middle, .pill-small-right {
  background-color: #333333;
  background-position: center top;
  border: 0 solid #000;
  color: #e5e5e5;
  cursor: pointer;
  display: inline-block;
  font: 9px/20px "Montserrat", sans-serif;
  outline: medium none;
  padding: 0 8px;
  position: relative;
  text-align: center;
  text-decoration: none;
}

.button-medium, .pill-medium-left, .pill-medium-middle, .pill-medium-right {
  background-color: #333333;
  background-position: center top;
  border: 0 solid #000;
  color: #e5e5e5;
  cursor: pointer;
  display: inline-block;
  font: 12px/30px "Montserrat", sans-serif;
  outline: medium none;
  padding: 0 12px;
  position: relative;
  text-align: center;
  text-decoration: none;
}

.button-large, .pill-large-left, .pill-large-middle, .pill-large-right {
  background-color: #333333;
  background-position: center top;
  border: 0 solid #000;
  color: #e5e5e5;
  cursor: pointer;
  display: inline-block;
  font: 16px/40px "Montserrat", sans-serif;
  outline: medium none;
  padding: 0 16px;
  position: relative;
  text-align: center;
  text-decoration: none;
}

.button-small:hover, .pill-small-left:hover, .pill-small-middle:hover, .pill-small-right:hover, .button-medium:hover, .pill-medium-left:hover, .pill-medium-middle:hover, .pill-medium-right:hover, .button-large:hover, .pill-large-left:hover, .pill-large-middle:hover, .pill-large-right:hover {
  background-color: #4c4c4c;
  background-position: center top;
  color: #fff;
  text-decoration: none !important;
}

.button-small:active, .pill-small-left:active, .pill-small-middle:active, .pill-small-right:active, .button-medium:active, .pill-medium-left:active, .pill-medium-middle:active, .pill-medium-right:active, .button-large:active, .pill-large-left:active, .pill-large-middle:active, .pill-large-right:active {
  background-color: #191919;
  background-position: center top;
  color: #fff;
  text-decoration: none !important;
}

.button-small:focus, .pill-small-left:focus, .pill-small-middle:focus, .pill-small-right:focus, .button-medium:focus, .pill-medium-left:focus, .pill-medium-middle:focus, .pill-medium-right:focus, .button-large:focus, .pill-large-left:focus, .pill-large-middle:focus, .pill-large-right:focus {
  text-decoration: none !important;
}

.pill-small-left, .pill-medium-left, .pill-large-left {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.pill-small-right, .pill-medium-right, .pill-large-right {
  border-top-left-radius: 0;
}

.button-shell-small {
  display: inline-block;
  padding: 0;
  position: relative;
}

.button-shell-medium {
  display: inline-block;
  padding: 0;
  position: relative;
}

.button-shell-large {
  display: inline-block;
  padding: 0;
  position: relative;
}

a.button-small img {
  vertical-align: middle;
}

.pill-small-left .button-image-left, .pill-small-middle .button-image-left, .pill-small-right .button-image-left, .button-shell-small .button-image-left, .button-small .button-image-left {
  display: block;
  height: 16px;
  left: 2px;
  margin: 0;
  position: absolute;
  top: 2px;
  width: 16px;
  z-index: 1;
}

.pill-small-left .button-image-right, .pill-small-middle .button-image-right, .pill-small-right .button-image-right, .button-shell-small .button-image-right, .button-small .button-image-right {
  display: block;
  height: 16px;
  margin: 0;
  position: absolute;
  right: 2px;
  top: 2px;
  width: 16px;
  z-index: 1;
}

.pill-small-left .button-image-left ~ .button-content, .pill-small-right .button-image-left ~ .button-content, .pill-small-middle .button-image-left ~ .button-content, .button-small .button-image-left ~ .button-content {
  padding-left: 12px;
}

.button-shell-small .button-image-left ~ input.pill-small-left, .button-shell-small .button-image-left ~ input.pill-small-middle, .button-shell-small .button-image-left ~ input.pill-small-right, .button-shell-small .button-image-left ~ input.button-small {
  padding-left: 20px;
}

.pill-small-left .button-image-right ~ .button-content, .pill-small-right .button-image-right ~ .button-content, .pill-small-middle .button-image-right ~ .button-content, .button-small .button-image-right ~ .button-content {
  padding-right: 12px;
}

.button-shell-small .button-image-right ~ input.pill-small-left, .button-shell-small .button-image-right ~ input.pill-small-middle, .button-shell-small .button-image-right ~ input.pill-small-right, .button-shell-small .button-image-right ~ input.button-small {
  padding-right: 20px;
}

a.button-medium img {
  vertical-align: middle;
}

.pill-medium-left .button-image-left, .pill-medium-middle .button-image-left, .pill-medium-right .button-image-left, .button-shell-medium .button-image-left, .button-medium .button-image-left {
  display: block;
  height: 24px;
  left: 3px;
  margin: 0;
  position: absolute;
  top: 3px;
  width: 24px;
  z-index: 1;
}

.pill-medium-left .button-image-right, .pill-medium-middle .button-image-right, .pill-medium-right .button-image-right, .button-shell-medium .button-image-right, .button-medium .button-image-right {
  display: block;
  height: 24px;
  margin: 0;
  position: absolute;
  right: 3px;
  top: 3px;
  width: 24px;
  z-index: 1;
}

.pill-medium-left .button-image-left ~ .button-content, .pill-medium-right .button-image-left ~ .button-content, .pill-medium-middle .button-image-left ~ .button-content, .button-medium .button-image-left ~ .button-content {
  padding-left: 18px;
}

.button-shell-medium .button-image-left ~ input.pill-medium-left, .button-shell-medium .button-image-left ~ input.pill-medium-middle, .button-shell-medium .button-image-left ~ input.pill-medium-right, .button-shell-medium .button-image-left ~ input.button-medium {
  padding-left: 30px;
}

.pill-medium-left .button-image-right ~ .button-content, .pill-medium-right .button-image-right ~ .button-content, .pill-medium-middle .button-image-right ~ .button-content, .button-medium .button-image-right ~ .button-content {
  padding-right: 18px;
}

.button-shell-medium .button-image-right ~ input.pill-medium-left, .button-shell-medium .button-image-right ~ input.pill-medium-middle, .button-shell-medium .button-image-right ~ input.pill-medium-right, .button-shell-medium .button-image-right ~ input.button-medium {
  padding-right: 30px;
}

a.button-large img {
  vertical-align: middle;
}

.pill-large-left .button-image-left, .pill-large-middle .button-image-left, .pill-large-right .button-image-left, .button-shell-large .button-image-left, .button-large .button-image-left {
  display: block;
  height: 32px;
  left: 4px;
  margin: 0;
  position: absolute;
  top: 4px;
  width: 32px;
  z-index: 1;
}

.pill-large-left .button-image-right, .pill-large-middle .button-image-right, .pill-large-right .button-image-right, .button-shell-large .button-image-right, .button-large .button-image-right {
  display: block;
  height: 32px;
  margin: 0;
  position: absolute;
  right: 4px;
  top: 4px;
  width: 32px;
  z-index: 1;
}

.pill-large-left .button-image-left ~ .button-content, .pill-large-right .button-image-left ~ .button-content, .pill-large-middle .button-image-left ~ .button-content, .button-large .button-image-left ~ .button-content {
  padding-left: 26px;
}

.button-shell-large .button-image-left ~ input.pill-large-left, .button-shell-large .button-image-left ~ input.pill-large-middle, .button-shell-large .button-image-left ~ input.pill-large-right, .button-shell-large .button-image-left ~ input.button-large {
  padding-left: 42px;
}

.pill-large-left .button-image-right ~ .button-content, .pill-large-right .button-image-right ~ .button-content, .pill-large-middle .button-image-right ~ .button-content, .button-large .button-image-right ~ .button-content {
  padding-right: 26px;
}

.button-shell-large .button-image-right ~ input.pill-large-left, .button-shell-large .button-image-right ~ input.pill-large-middle, .button-shell-large .button-image-right ~ input.pill-large-right, .button-shell-large .button-image-right ~ input.button-large {
  padding-right: 42px;
}

.button-image-left ~ .button-content:empty {
  padding-left: 1px !important;
}

.button-image-right ~ .button-content:empty {
  padding-right: 1px !important;
}

button.button-small::-moz-focus-inner, input.button-small::-moz-focus-inner, input.pill-small-left::-moz-focus-inner, input.pill-small-middle::-moz-focus-inner, input.pill-small-right::-moz-focus-inner, button.pill-small-left::-moz-focus-inner, button.pill-small-middle::-moz-focus-inner, button.pill-small-right::-moz-focus-inner, button.button-medium::-moz-focus-inner, input.button-medium::-moz-focus-inner, input.pill-medium-left::-moz-focus-inner, input.pill-medium-middle::-moz-focus-inner, input.pill-medium-right::-moz-focus-inner, button.pill-medium-left::-moz-focus-inner, button.pill-medium-middle::-moz-focus-inner, button.pill-medium-right::-moz-focus-inner, button.button-large::-moz-focus-inner, input.button-large::-moz-focus-inner, input.pill-large-left::-moz-focus-inner, input.pill-large-middle::-moz-focus-inner, input.pill-large-right::-moz-focus-inner, button.pill-large-left::-moz-focus-inner, button.pill-large-middle::-moz-focus-inner, button.pill-large-right::-moz-focus-inner {
  border: 0 none;
  padding: 0;
}

.button-cancel {
  background-color: #cc0000;
  background-position: center top;
  color: #e5e5e5;
}

.button-cancel:hover {
  background-color: #e50000;
  background-position: center top;
  color: #fff;
}

.button-cancel:active {
  background-color: #191919;
  background-position: center top;
  color: #fff;
}

.button-edit {
  background-color: #fccd22;
  background-position: center top;
  color: #333;
}

.button-edit:hover {
  background-color: #fde045;
  background-position: center top;
  color: #1a1a1a;
}

.button-edit:active {
  background-color: #fccd22;
  background-position: center top;
  color: #fff;
}

.button-construction {
  background: #fccd22 url("/app_images/cmsTabFooter.gif") repeat-x scroll 0 50%;
  border: 1px solid #dda301;
  color: #807540;
}

.button-construction:hover {
  background: #fccd22 url("/app_images/cmsTabFooter.gif") repeat-x scroll 0 50%;
  color: #594100;
}

.button-construction:active {
  background-color: #fccd22;
  background-position: center top;
  color: #594100;
}

.button-siteColor {
  background-color: #0b478d;
  background-position: center top;
  color: #e5e5e5;
}

.button-siteColor:hover {
  background-color: #0b478d;
  background-position: center top;
  color: #fff;
}

.button-siteColor:active {
  background-color: #0b478d;
  background-position: center top;
  color: #fff;
}

.button-subtle {
  background-color: transparent;
  background-position: center top;
  border: 1px solid #ccc;
  color: #777;
}

.button-subtle:hover, .button-subtle:active {
  background-color: transparent;
  background-position: center top;
  color: #888;
}

.button-subtle:active {
  background-position: center top;
}

.button-commentCount .button-image-right {
  background: transparent url("/app_images/pageElements/newsAggregator/icon.png?1432043856") no-repeat scroll 0 50%;
  top: 1px;
}

.button-open {
  background: transparent none repeat scroll 0 0;
  color: #1a1a1a;
}

.button-open:hover {
  background: transparent none repeat scroll 0 0;
  color: #262626;
}

.button-open:active {
  background: transparent none repeat scroll 0 0;
  color: #000;
}

.button-open .button-content {
  text-decoration: underline;
}

.button-small.button-disabled, .button-small[disabled], .button-small.button-disabled:hover, .button-small[disabled]:hover, .button-small.button-disabled:active, .button-small[disabled]:active, .button-medium.button-disabled, .button-medium[disabled], .button-medium.button-disabled:hover, .button-medium[disabled]:hover, .button-medium.button-disabled:active, .button-medium[disabled]:active, .button-large.button-disabled, .button-large[disabled], .button-large.button-disabled:hover, .button-large[disabled]:hover, .button-large.button-disabled:active, .button-large[disabled]:active {
  background: #e5e5e5 -webkit-linear-gradient(rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0)) repeat scroll 0 0;
  background: #e5e5e5 linear-gradient(rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0)) repeat scroll 0 0;
  color: #b3b3b3 !important;
  cursor: default;
}

.button-tool {
  background-color: #f1f1f1;
  background-position: center top;
  border: 1px solid #ccc;
  color: #333 !important;
  z-index: 1;
}

.button-tool:hover {
  background-color: #ffffff;
  background-position: center top;
  border: 1px solid #999;
  color: #333 !important;
  z-index: 2;
}

.button-tool:active {
  background-color: #d8d8d8;
  background-position: center top;
  color: #333 !important;
  z-index: 2;
}

.button-tool.pill-medium-middle, .button-tool.pill-medium-right {
  margin-left: -1px;
}

.button-cancel {
  background-color: #cc0000;
  background-position: center top;
  color: #e5e5e5;
}

.button-cancel:hover {
  background-color: #e50000;
  background-position: center top;
  color: #fff;
}

.button-cancel:active {
  background-color: #191919;
  background-position: center top;
  color: #fff;
}

.football-real-time-button-score-live {
  border: 1px solid rgba(251, 203, 34, 0);
  font-weight: bold;
  margin-bottom: 10px;
  text-transform: uppercase;
  width: 248px;
}

.football-real-time-button-score-live:hover {
  background-color: #fde872;
  background-position: center top;
  border: 1px solid rgba(251, 203, 34, 0.5);
  color: #000;
}

.football-real-time-button-quick-score, .football-real-time-button-edit-stats {
  background-position: center top;
  font-weight: bold;
  margin-bottom: 10px;
  text-transform: uppercase;
  width: 115px;
}

.button-football-offline {
  padding-bottom: 0.3em;
}

#sport-header ~ .layoutContainer .readMore .button-small, #sport-header ~ .layoutContainer .readMore .pill-small-left, #sport-header ~ .layoutContainer .readMore .pill-small-middle, #sport-header ~ .layoutContainer .readMore .pill-small-right, #sport-header ~ .layoutContainer .readMore .button-medium, #sport-header ~ .layoutContainer .readMore .pill-medium-left, #sport-header ~ .layoutContainer .readMore .pill-medium-middle, #sport-header ~ .layoutContainer .readMore .pill-medium-right, #sport-header ~ .layoutContainer .readMore .button-large, #sport-header ~ .layoutContainer .readMore .pill-large-left, #sport-header ~ .layoutContainer .readMore .pill-large-middle, #sport-header ~ .layoutContainer .readMore .pill-large-right {
  color: #e5e5e5;
}

#sport-header ~ .layoutContainer .commentCount .button-small, #sport-header ~ .layoutContainer .commentCount .pill-small-left, #sport-header ~ .layoutContainer .commentCount .pill-small-middle, #sport-header ~ .layoutContainer .commentCount .pill-small-right, #sport-header ~ .layoutContainer .commentCount .button-medium, #sport-header ~ .layoutContainer .commentCount .pill-medium-left, #sport-header ~ .layoutContainer .commentCount .pill-medium-middle, #sport-header ~ .layoutContainer .commentCount .pill-medium-right, #sport-header ~ .layoutContainer .commentCount .button-large, #sport-header ~ .layoutContainer .commentCount .pill-large-left, #sport-header ~ .layoutContainer .commentCount .pill-large-middle, #sport-header ~ .layoutContainer .commentCount .pill-large-right {
  color: #595959;
}

.topNav [class*="button-"],
.siteContainer [class*="button-"] {
  background: #0054A6;
  border-bottom: 3px solid #002040;
  margin-bottom: 5px;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  -webkit-transition: border-bottom 0.2s ease-in, background-color 0.2s ease-in;
          transition: border-bottom 0.2s ease-in, background-color 0.2s ease-in;
  -webkit-appearance: none;
}

.topNav [class*="button-"]:hover,
.siteContainer [class*="button-"]:hover {
  background: #002040;
}

.button-add:hover, .button-remove:hover {
  border: none;
  border: 1px solid #fdea88;
}

/* Tables */
#lightboxBody .tableElement {
  _width: 660px;
}

.dataTable,
.statTable,
.stat_table {
  border-spacing: 0;
  margin-top: 2px;
  border-collapse: initial;
  width: 100%;
}

.dataTable td, .dataTable th,
.statTable td,
.statTable th,
.stat_table td,
.stat_table th {
  background-clip: padding-box !important;
  border-color: transparent;
  border-style: solid;
  border-width: 0 2px 2px 0;
}

.dataTable td:last-child, .dataTable th:last-child,
.statTable td:last-child,
.statTable th:last-child,
.stat_table td:last-child,
.stat_table th:last-child {
  border-right: 0;
}

.dataTable tr:last-child td,
.statTable tr:last-child td,
.stat_table tr:last-child td {
  border-bottom: 0;
}

.dataTable tbody td,
.statTable tbody td,
.stat_table tbody td {
  background: #eee;
}

.dataTable * >,
.statTable * >,
.stat_table * > {
  box-sizing: border-box;
}

.dataTable th,
.statTable th,
.stat_table th {
  height: 30px;
  padding: 15px 12px;
  background: #E1E8ED;
  white-space: nowrap;
  border: none;
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
}

.dataTable th.ASC, .dataTable th.DESC, .dataTable th.sorttable_sorted, .dataTable th.sorttable_sorted_reverse,
.statTable th.ASC,
.statTable th.DESC,
.statTable th.sorttable_sorted,
.statTable th.sorttable_sorted_reverse,
.stat_table th.ASC,
.stat_table th.DESC,
.stat_table th.sorttable_sorted,
.stat_table th.sorttable_sorted_reverse {
  background: #00478d;
}

.dataTable td,
.statTable td,
.stat_table td {
  font-size: 12px;
  padding: 10px 12px;
  text-align: center;
  height: 30px;
  background: transparent !important;
  border: none;
  border-bottom: solid 1px #E1E8ED;
}

.dataTable td.highlight,
.statTable td.highlight,
.stat_table td.highlight {
  background: #fff;
}

.dataTable td.highlight,
.statTable td.highlight,
.stat_table td.highlight {
  background: #e1e1e1;
}

.NginTableScroll,
.tableElement .tableWrapper,
.textBlockElement .text > .tableWrapper {
  overflow-x: auto;
}

.dataTable {
  width: 100%;
  position: relative;
}

.dataTable th:first-child, .dataTable td:first-child {
  text-align: left;
}

.dataTable thead th.ajax_sort {
  cursor: pointer;
}

.dataTable thead th.ajax_sort {
  padding-right: 12px;
  position: relative;
}

.dataTable thead th.ajax_sort .sorted_img {
  display: none;
}

.dataTable thead th.ajax_sort:hover {
  color: rgba(255, 255, 255, 0.7);
}

.dataTable thead th.ajax_sort:after {
  font-family: FontAwesome;
  content: '\f0dc';
  position: absolute;
  display: block;
  right: 12px;
  top: 50%;
  margin-top: -7px;
}

.dataTable thead th.ajax_sort.ASC:after, .dataTable thead th.ajax_sort.sorttable_sorted:after {
  content: '\f0de';
  margin-top: -5px;
}

.dataTable thead th.ajax_sort.DESC:after, .dataTable thead th.ajax_sort.sorttable_sorted_reverse:after {
  content: '\f0dd';
  margin-top: -9px;
}

.dataTable thead th.ajax_sort.ASC, .dataTable thead th.ajax_sort.DESC, .dataTable thead th.ajax_sort.highlighted, .dataTable thead th.ajax_sort.sorttable_sorted, .dataTable thead th.ajax_sort.sorttable_sorted_reverse {
  background: #00478d;
}

.dataTable tbody td {
  background: #eee;
}

.dataTable tfoot:after {
  content: '';
  position: absolute;
  display: block;
  height: 0;
  width: 100%;
  border-bottom: 2px dotted #eee;
}

.dataTable tfoot:empty:after {
  display: none;
}

.statTable .condensedView {
  display: none;
}

.statTable .sorted_img,
.statTable .sort-arrow {
  display: none;
}

.statTable .name span,
.statTable .statTeam span,
.statTable .statPlayer span {
  display: block;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.statTable .scheduleListResult,
.statTable .scheduleListScore {
  display: inline-block;
}

.statTable .scheduleListResult + .scheduleListScore {
  margin-left: .5rem;
}

.statTable .winner {
  background: url("https://app-assets1.sportngin.com/app_images/game_center/winnersNotch-statTable.png") no-repeat left 60%;
}

.statTable th.name span, .statTable th.statTeam span, .statTable th.statPlayer span {
  width: 140px;
  margin-left: -.5em;
}

.statTable td.name span, .statTable td.statTeam span, .statTable td.statPlayer span {
  width: 140px;
}

.statTable .extra-space {
  width: 100%;
  padding: 0 !important;
}

#TeamStatsDiv .statTable th > img,
#PlayerStatsDiv .statTable th > img {
  display: none;
}

#TeamStatsDiv .statTable td,
#PlayerStatsDiv .statTable td {
  white-space: nowrap;
}

#TeamStatsDiv .statTable th:first-child {
  width: 140px;
}

#TeamStatsDiv .statTable .teamName {
  width: 140px;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}

#PlayerStatsDiv .statTable th:nth-child(2), #PlayerStatsDiv .statTable th:nth-child(3) {
  text-align: left;
  width: 140px;
}

#PlayerStatsDiv .statTable .jersey-number {
  text-align: center;
  font-weight: bold;
}

#PlayerStatsDiv .statTable td:nth-child(2) > a {
  width: 140px;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}

#PlayerStatsDiv .statTable td .teamName {
  width: 140px;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}

#PlayerStatsDiv .statTable td.statPlayer {
  text-align: left;
}

#TeamInstanceStatsDiv .theme-stat-table td {
  white-space: nowrap;
}

#TeamInstanceStatsDiv .theme-stat-table th:first-child:not(.jersey-number),
#TeamInstanceStatsDiv .theme-stat-table .statPlayer:not(.jersey-number) {
  width: 140px;
}

#TeamInstanceStatsDiv .theme-stat-table th.statPlayer {
  width: 140px;
  text-align: left;
}

#TeamInstanceStatsDiv .theme-stat-table .jersey-number {
  text-align: center;
  font-weight: bold;
}

#TeamInstanceStatsDiv .theme-stat-table .teamName,
#TeamInstanceStatsDiv .theme-stat-table .statPlayer > a {
  width: 140px;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}

.playerStatLeaderElement th:first-child {
  width: 4em;
}

.standingsElement .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.standingsElement .sportTableLabel h4 {
  color: #fff;
}

.standingsElement .statTable th:first-child {
  width: 180px;
}

.standingsElement .statTable th:first-child, .standingsElement .statTable td:first-child {
  text-align: left;
}

.standingsElement .NginTableWrapper:not(:last-child) {
  margin-bottom: 15px;
}

/* Countdown Element */
.countdownElement {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: space-between;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  padding: 35px 0;
  text-align: left;
  background-position: center center;
}

.countdownElement h2 {
  margin-right: 7px;
  text-transform: uppercase;
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.countdownElement h2:empty {
  display: none;
}

.countdownElement abbr {
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  -webkit-box-flex: 1;
          flex-grow: 1;
  min-width: 340px;
  padding: 0 15px;
  position: relative;
  border: none;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}

.countdownElement span {
  display: inline-block;
  margin: 0 6px;
}

.countdownElement b {
  display: inline-block;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 52px;
}

.countdownElement small {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  text-transform: uppercase;
}

.countdownElement.countdown-dark {
  background: #555;
  color: #fff;
}

.countdownElement.countdown-dark h2:after {
  border-left: 2px solid #555;
}

.countdownElement.countdown-dark:before, .countdownElement.countdown-dark:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 10px;
  background: -webkit-repeating-linear-gradient(162deg, #fff 0px, transparent 1px, transparent 3px, #fff 4px);
  background: repeating-linear-gradient(-72deg, #fff 0px, transparent 1px, transparent 3px, #fff 4px);
}

.countdownElement.countdown-dark:before {
  top: 0;
}

.countdownElement.countdown-dark:after {
  bottom: 0;
  clear: both;
}

.countdownElement.countdown-light {
  background: transparent;
  color: #666;
}

.countdownElement.countdown-light b {
  color: #0054A6;
}

.countdownElement.countdown-light:before, .countdownElement.countdown-light:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 10px;
  background: -webkit-repeating-linear-gradient(162deg, #aaa 0px, transparent 1px, transparent 3px, #aaa 4px);
  background: repeating-linear-gradient(-72deg, #aaa 0px, transparent 1px, transparent 3px, #aaa 4px);
}

.countdownElement.countdown-light:before {
  top: 0;
}

.countdownElement.countdown-light:after {
  bottom: 0;
  clear: both;
}

@media only screen and (min-width: 900px) {
  .col-md-4 .countdownElement, .col-md-3 .countdownElement {
    display: block;
  }
  .col-md-4 .countdownElement h2, .col-md-3 .countdownElement h2 {
    margin-bottom: 15px;
    width: 100%;
  }
  .col-md-4 .countdownElement abbr, .col-md-3 .countdownElement abbr {
    display: block;
    margin: 0 auto;
    min-width: 0;
    white-space: initial;
  }
  .col-md-4 .countdownElement b, .col-md-3 .countdownElement b {
    font-size: 36px;
  }
  .col-md-4 .countdownElement small, .col-md-3 .countdownElement small {
    font-size: 11px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 900px) {
  .col-md-4 .countdownElement abbr span, .col-md-3 .countdownElement abbr span {
    width: 33%;
    padding: 1.5% 0;
  }
  .col-md-4 .countdownElement b, .col-md-3 .countdownElement b {
    font-size: 36px;
  }
  .col-md-4 .countdownElement small, .col-md-3 .countdownElement small {
    font-size: 11px;
  }
}

@media only screen and (max-width: 900px) {
  .countdownElement {
    display: block;
  }
  .countdownElement h2 {
    margin-bottom: 15px;
    width: 100%;
  }
  .countdownElement abbr {
    display: block;
    margin: 0 auto;
    min-width: 0;
    white-space: initial;
  }
  .countdownElement b {
    font-size: 40px;
  }
}

@media only screen and (max-width: 600px) {
  .countdownElement b {
    font-size: 32px;
  }
  .countdownElement small {
    font-size: 11px;
  }
}

@media only screen and (max-width: 370px) {
  .countdownElement abbr span {
    width: 33%;
    padding: 1.5% 0;
  }
}

.pageOptions,
.extendedOptions {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
  overflow: hidden;
  font-size: 12px;
  padding-top: 12px;
  text-transform: uppercase;
}

.pageOptions li,
.extendedOptions li {
  list-style: none;
  float: left;
  white-space: nowrap;
  line-height: 2em;
}

.pageOptions li:not(:first-child):before,
.extendedOptions li:not(:first-child):before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 2em;
  width: 1em;
  margin-left: 1em;
  border-left: 2px solid #999;
  -webkit-transform: skewX(-22deg);
  transform: skewX(-22deg);
}

.pageOptions a,
.extendedOptions a {
  color: #666;
  display: inline-block;
}

.pageOptions a > img,
.extendedOptions a > img {
  vertical-align: middle !important;
}

.pageOptions a:hover,
.extendedOptions a:hover {
  color: #333;
}

.sn-share-icons {
  display: block;
  color: #666;
  font-size: 0.875rem;
}

.sn-share-icons div {
  display: inline-block;
  padding: 0 2px;
  vertical-align: middle;
}

.sn-share-icons .sn-share-text {
  position: relative;
  padding-left: 17px;
  -webkit-transform: translate(0, -2px);
          transform: translate(0, -2px);
}

.sn-share-icons .sn-share-text:before {
  content: "\f1e0";
  position: absolute;
  font-family: FontAwesome;
  font-size: 0.875rem;
  top: 0;
  left: 0;
}

.sharingOptions {
  width: 100%;
  text-align: center;
  margin-top: 15px;
  padding: 25px 0 10px 0;
  border-top: 2px solid #ddd;
}

#payWall {
  background: #ffffcc;
  border: solid 1px #ffcc00;
  border-radius: 4px;
  float: left;
  margin-right: 10px;
  margin-bottom: 10px;
  overflow: hidden;
}

#payWall h3 {
  color: #000;
}

#payWall .layoutContainer {
  margin-right: 0;
}

#payWall > .layoutContainer > .column {
  padding: .05px 0;
}

#payWall > .layoutContainer > .column > .pageEl > .pageElement {
  margin: 15px;
}

#payWall .login h3 {
  background: url("https://app-assets1.sportngin.com/app_images/alert-gold.png") no-repeat 0 5px;
  padding-left: 35px;
}

#payWall .subscribe {
  border-left: solid 1px #ffcc00;
  overflow: hidden;
}

#payWall .subscribe .pricing {
  text-align: center;
}

#payWall .subscribe .pricing .pageElement {
  padding: 10px 0;
  color: #666666;
}

#payWall .subscribe .pricing p {
  display: block;
  font-size: 24px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  width: 100%;
}

#payWall .subscribe .pricing .change {
  font-size: 16px;
  vertical-align: top;
}

#payWall .subscribe .pricing .length {
  font-size: 12px;
  font-weight: normal;
  vertical-align: top;
}

#payWall .subscribe .pricing p b {
  background: url("https://app-assets1.sportngin.com/app_images/paywall-pricing.png") no-repeat 50% 50%;
  display: block;
  font-weight: bold;
  font-size: 9px;
  margin: 8px 0;
  width: 100%;
}

#payWall .button-large {
  display: block;
  margin-top: 25px;
}

#payWall .subscribe .button-large {
  background: #ffdd3a;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffdd3a), color-stop(100%, #ffcc00));
  background-image: -webkit-linear-gradient(top, rga(255, 221, 58) 0%, #ffcc00 100%);
  background-image: -webkit-linear-gradient(top, #ffdd3a 0%, #ffcc00 100%);
  background-image: linear-gradient(to bottom, #ffdd3a 0%, #ffcc00 100%);
  color: black;
  text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.75);
}

#payWall .subscribe .button-large:hover {
  background: #3f3f3f;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #666666), color-stop(100%, #3f3f3f));
  background-image: -webkit-linear-gradient(top, #666666 0%, #3f3f3f 100%);
  background-image: linear-gradient(to bottom, #666666 0%, #3f3f3f 100%);
  color: white;
  text-shadow: 0px -1px 0px black;
}

#payWall .subscribe .button-large:active {
  background: #4c4c4c;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #262626), color-stop(100%, #4c4c4c));
  background-image: -webkit-linear-gradient(top, #262626 0%, #4c4c4c 100%);
  background-image: linear-gradient(to bottom, #262626 0%, #4c4c4c 100%);
  color: white;
  text-shadow: 0px -1px 0px black;
}

/*.subNav li.paywalled a:before,
.relatedSections li.paywalled a:before,
#topNav a.paywalled:before {
  content: url("../images/REPLACE.gif");
  margin: -1px 2px 0 -11px;
  float: left;
}*/
.collectorElement a.paywalled:before,
.newsAggregatorElement a.paywalled:before {
  content: "";
  display: block;
  float: left;
  width: 40px;
  height: 1.5em;
  margin-right: .375em;
  background: url("https://app-assets1.sportngin.com/app_images/paywall-icon.svg") no-repeat center center;
  background-size: contain;
  -webkit-background-size: contain;
}

#payWall .subscribe a {
  background: #ffcc00;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffdd3a), color-stop(100%, #ffcc00));
  background-image: -webkit-linear-gradient(top, #ffdd3a 0%, #ffcc00 100%);
  background-image: linear-gradient(to bottom, #ffdd3a 0%, #ffcc00 100%);
  color: black;
  text-shadow: 0px 1px 0px rgba(221, 221, 221, 0.5);
  transition: none;
  -moz-transition: none;
  /* Firefox 4 */
  -webkit-transition: none;
  /* Safari and Chrome */
  -o-transition: none;
  /* Opera */
}

/* Logged In View */
#payWall.logged-in .subscribe {
  margin-top: 0;
}

#payWall.logged-in .subscribe a {
  margin-top: 21px;
}

#payWall.logged-in .pricing {
  border-left: solid 1px #FC0;
  margin: 0 15px 15px 0;
}

.icon {
  background-repeat: no-repeat;
  padding: 0px 0 2px 20px;
  background-image: url("https://app-assets1.sportngin.com/app_images/link_icons.png");
}

.rssLink {
  position: relative;
  background: none;
}

.rssLink:before {
  content: "\f09e";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.groupLink {
  background-position: 0px -348px;
}

.goToLink {
  position: relative;
  background: none;
}

.goToLink:before {
  content: "\f061";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.goBackLink {
  position: relative;
  background: none;
}

.goBackLink:before {
  content: "\f060";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.monthViewLink,
.iconDayCal,
.alphaLink,
.siteMapLink {
  background-image: none;
}

.linkLink {
  background-position: 0px -928px;
}

.deleteLink {
  background-position: 0px -1044px;
}

.editLink {
  background-position: 0px -1160px;
}

.printLink {
  position: relative;
  background: none;
}

.printLink:before {
  content: "\f02f";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.attachedLink {
  background-position: 0px -1392px;
}

.reloadLink {
  position: relative;
  background: none;
}

.reloadLink:before {
  content: "\f021";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.iCalLink {
  position: relative;
  background: none;
}

.iCalLink:before {
  content: "\f073";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.excelLink {
  position: relative;
  background: none;
}

.excelLink:before {
  content: "\f1c3";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.tagLink {
  position: relative;
  background: none;
}

.tagLink:before {
  content: "\f02b";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.emailLink {
  position: relative;
  background: none;
}

.emailLink:before {
  content: "\f003";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.read .emailLink {
  background-position: 0px -2088px;
}

.newLink {
  background-position: 0px -2204px;
}

.tstAdminLink {
  background-position: 0px -2320px;
}

.addLink {
  background-position: 0px -2436px;
}

.lockedCheck {
  background-position: 0px -2552px;
}

.gear {
  background-position: 0px -2668px;
  font-size: initial;
  padding-right: 4px;
  cursor: pointer;
}

.photo {
  background-position: 0px -2784px;
}

.dibsLink {
  background-image: url("/app_images/icon-dibs-small.svg");
  background-position: 2px center;
}

.mirrorLink {
  background-position: 0 -2900px;
}

.myAccess {
  background-image: url("https://app-assets1.sportngin.com/app_images/permissions.gif");
  padding-left: 32px;
}

.orderLink {
  background: url("https://app-assets1.sportngin.com/app_images/dragIcon.gif") 3px 3px no-repeat;
}

.fullscreenLink {
  background: url("https://app-assets1.sportngin.com/app_images/icons/fullscreenIcon.png") 0 1px no-repeat;
}

.connectionLink {
  background-position: 0 -3015px;
}

.saveLink {
  background-position: 0 -3128px;
}

.checkLink {
  background-position: 0 -3363px;
}

.fbLink {
  position: relative;
  background: none;
}

.fbLink:before {
  content: "\f09a";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.twitterLink {
  position: relative;
  background: none;
}

.twitterLink:before {
  content: "\f099";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 0;
  left: 5px;
}

.pdfLink {
  background-position: 0 -3679px;
}

.transferLink {
  background-position: 0 -3796px;
}

.sponsorElement .goToLink:before {
  padding: 5px 10px 5px 0px;
  content: "\f061";
}

.contactElement .icon,
.sn-social-media-list .sn-social-media-icon {
  border-radius: 100%;
  color: #fff;
  display: inline-block;
  font-family: FontAwesome;
  font-size: 1.2em;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-weight: 400;
  height: 1em;
  line-height: 1em;
  margin: .1em;
  padding: 0;
  text-align: center;
  text-decoration: none;
  text-rendering: auto;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: background-color .25s ease-in-out;
  transition: background-color .25s ease-in-out;
  width: 1em;
}

.contactElement .icon:before,
.sn-social-media-list .sn-social-media-icon:before {
  display: block;
  font-size: .6em;
  line-height: 1.66em;
  width: 1.66em;
  left: 0;
}

.contactElement .icon {
  background-color: #999;
  font-size: 27px;
}

.contactElement .icon:hover {
  background-color: #0054A6;
}

.sn-social-media-list:not(.light):not(.dark) .sn-social-media-icon:hover {
  background-color: #999;
}

.sn-social-media-list.dark .icon-email:hover,
.sn-social-media-list.dark .icon-link:hover {
  background-color: #999;
}

.collectorElement .title {
  font-weight: bold;
  position: relative;
}

.collectorElement .title:before {
  content: "\f030";
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.2em;
  left: -25px;
}

.contentTabs + .collectorTree.siteMapElement a[href*="/photo_gallery/"] + a[href*="/photo_gallery/"]:before {
  content: "\f030";
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.2em;
  left: -25px;
}

a[href*="/document/"] + .info .title:before {
  content: "\f15b";
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.2em;
  left: -25px;
}

/* Photo Gallery Element */
.galleryElement {
  position: relative;
}

.galleryElement_gallery {
  box-sizing: border-box;
}

.galleryElement_gallery.formatted {
  font-size: inherit;
  position: relative;
  padding: 0px;
  margin-bottom: 0px;
  line-height: 120%;
  padding: 0px;
  background: url(/gallery_skins/tn3e/grad.png) center center no-repeat;
}

.galleryElement_gallery.formatted img {
  display: none;
}

.galleryElement_gallery .image_title {
  position: absolute;
  width: 100%;
  height: 40px;
  margin-top: -40px;
  padding: 0 6%;
  overflow: hidden;
  cursor: default;
  z-index: 10;
}

.galleryElement_gallery .crop {
  padding-top: 75%;
  height: 0;
  overflow: hidden;
  position: relative;
}

.galleryElement_gallery .slide,
.galleryElement_gallery .image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.galleryElement_gallery .slide {
  width: 100%;
  height: 100%;
}

.galleryElement_gallery .overlay,
.galleryElement_gallery .link {
  position: absolute;
  width: 100%;
  height: 100%;
}

.galleryElement_gallery .overlay {
  background: rgba(0, 0, 0, 0.5);
  z-index: 7;
}

.galleryElement_gallery .link {
  z-index: 8;
}

.galleryElement_link {
  background: url(/gallery_skins/tn3e/grad.png) 70% 80% no-repeat;
}

.galleryElement_link a {
  display: block;
  text-decoration: none;
  overflow: hidden;
}

.galleryElement_link.single_photo {
  overflow: hidden;
}

.galleryElement_link.single_photo a {
  width: 100%;
  padding: 3%;
  text-align: center;
}

.galleryElement_link.single_photo a:hover {
  background: url(/gallery_skins/tn3e/grad.png) no-repeat center center;
}

.galleryElement_link.single_photo a img {
  width: 100%;
}

.galleryElement_link.single_photo .gallery_title {
  display: block;
  position: absolute;
  bottom: 3%;
  left: 0;
  margin-left: 3%;
  width: 94%;
  height: 40px;
  padding: 8px 6%;
  text-align: center;
  cursor: default;
  z-index: 10;
}

.galleryElement_link.single_photo .gallery_title span {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

.galleryElement_link.gallery_button {
  padding: 0;
}

.galleryElement_link.gallery_button a {
  padding: 0;
  height: 65px;
}

.galleryElement_link.gallery_button a:hover {
  background: url(/gallery_skins/tn3e/grad.png) no-repeat 70% 60%;
}

.galleryElement_link.gallery_button img {
  position: absolute;
  top: 0;
  left: 0;
  width: 65px;
  height: 65px;
  clip: rect(0, 65px, 65px, 0);
}

.galleryElement_link.gallery_button .gallery_title {
  display: block;
  margin-top: 0;
  background: rgba(0, 0, 0, 0.7);
  padding-left: 72px;
}

.galleryElement_link.gallery_button .gallery_title span {
  display: block;
  height: 65px;
  line-height: 65px;
  padding-right: 8px;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

.galleryElement_gallery .image_title,
.galleryElement_link .gallery_title {
  display: block;
  background: rgba(0, 0, 0, 0.7);
  font-size: 16px;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  color: #fff !important;
  text-align: center;
  text-shadow: none !important;
}

.galleryElement_gallery .image_title span,
.galleryElement_link .gallery_title span {
  display: inline-block;
  width: 100%;
  height: 100%;
  padding-top: 10px;
  line-height: 1.2em;
  overflow: hidden;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

.gallery_info,
.photo_gallery_preview,
#mediaGallery-description {
  position: relative;
  padding: 20px 0;
  margin-bottom: 15px;
  text-align: left;
}

.gallery_info:after,
.photo_gallery_preview:after,
#mediaGallery-description:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  line-height: 0;
  background: -webkit-repeating-linear-gradient(162deg, #aaa 0px, transparent 1px, transparent 3px, #aaa 4px);
  background: repeating-linear-gradient(-72deg, #aaa 0px, transparent 1px, transparent 3px, #aaa 4px);
}

.gallery_info h3,
.gallery_info h1,
.gallery_info .title,
.photo_gallery_preview h3,
.photo_gallery_preview h1,
.photo_gallery_preview .title,
#mediaGallery-description h3,
#mediaGallery-description h1,
#mediaGallery-description .title {
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #0054A6;
  line-height: 1.2;
  margin: 0 0 .1em 0;
  text-align: left;
  text-transform: none;
}

.gallery_info.rapidContentConstruction h1,
.photo_gallery_preview.rapidContentConstruction h1,
#mediaGallery-description.rapidContentConstruction h1 {
  text-align: center;
}

.gallery_info p,
.gallery_info .description,
.photo_gallery_preview p,
.photo_gallery_preview .description,
#mediaGallery-description p,
#mediaGallery-description .description {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  margin: 0 0 .5em 0;
}

.edit_mode .galleryElement_link.gallery_button img {
  top: 25px;
}

.galleryElement_gallery.maximized {
  padding: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
}

.galleryElement_gallery.maximized .crop {
  padding-top: 0;
  position: absolute;
  height: auto;
  top: 5%;
  left: 5%;
  right: 5%;
  bottom: 120px;
}

.galleryElement_gallery.maximized .image_title {
  position: absolute;
  bottom: 60px;
  left: 5%;
  right: 5%;
  height: 60px;
  width: 90%;
}

.galleryElement_gallery.maximized .image_title span {
  padding-top: 18px;
}

.galleryElement_gallery.maximized .next_btn {
  right: 5.5%;
  bottom: 70px;
}

.galleryElement_gallery.maximized .prev_btn {
  left: 5.5%;
  bottom: 70px;
}

#theMediaGallery.galleryElement_link .gallery_title, #theMediaGallery.formatted .image_title, #theMediaGallery_gallery .tn3e-image-title {
  font-size: 18px !important;
  font-family: "Montserrat", sans-serif !important;
  font-weight: 600 !important;
  text-shadow: none !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

#theMediaGallery_gallery.tn3e-gallery {
  width: 100% !important;
}

#theMediaGallery_gallery .tn3e-text {
  height: 70px;
  min-height: 70px;
}

#theMediaGallery_gallery .tn3e-image-description {
  font-size: 14px !important;
  font-family: "Montserrat", sans-serif !important;
  font-weight: 400 !important;
  text-shadow: none !important;
}

.mediaGalleryHeader {
  font-size: 0.5em;
}

.mediaGalleryHeader h1 {
  float: left;
  line-height: 1.5em;
}

.mediaGalleryHeader .button-large {
  float: right;
}

#tab_slideshow_content {
  border-bottom: none;
  padding: 0;
}

#mediaGalleryThumbnails {
  background: #fff;
  padding: 15px;
}

#slideshowContainer .rapidContentConstruction {
  padding: 15px;
}

#mediaGalleryUploader {
  height: 210px;
}

#galleryThumbBin {
  margin: 0 auto;
  padding-top: 15px;
  text-align: center;
}

.photoGalleryThumb {
  display: inline-block;
  width: 100px;
  margin: 5px;
}

.photoGalleryThumbImage {
  padding: 10px;
  text-align: center;
}

#galleryThumbBin .photoGalleryThumbImage {
  padding: 10px;
}

#galleryThumbBin .photoGalleryThumbImage img {
  margin: 0 0 10px;
}

#mediaGallery-solo {
  padding: 15px 0 0;
}

#mediaGallery-solo .pageElementAdmin {
  margin-top: 0;
}

#mediaGallery-solo .aside {
  padding: 15px;
}

#mediaGallery-solo .aside h1 {
  padding: 0 0 15px;
  line-height: 1.2em;
}

#mediaGallery-solo .aside p {
  padding: 0 0 15px;
}

.tn3e-gallery .tn3e-thumbs {
  overflow-y: visible;
  overflow-x: auto;
}

.galleryElement_gallery .controls {
  position: absolute;
  z-index: 9;
  background: rgba(0, 0, 0, 0.6);
  width: 150px;
  height: 40px;
  margin: -20px 0 0 -75px;
  top: 50%;
  left: 50%;
  text-align: center;
}

.galleryElement_gallery .controls span {
  display: inline-block;
  width: 50px;
  height: 40px;
  background: transparent;
  cursor: pointer;
  opacity: 0.6;
  -webkit-transition: opacity 0.2s ease-in;
          transition: opacity 0.2s ease-in;
}

.galleryElement_gallery .controls span:hover {
  opacity: 1;
}

.galleryElement_gallery .controls span:after {
  display: block;
  width: 100%;
  height: 100%;
  color: #ddd;
  line-height: 40px;
  font-family: FontAwesome;
  font-size: 24px;
  text-align: center;
}

.galleryElement_gallery .controls span.pp_btn:after {
  content: "\f04c";
}

.galleryElement_gallery .controls span.pp_btn.paused:after {
  content: "\f04b";
}

.galleryElement_gallery .controls span.vg_btn:after {
  content: "\f03e";
}

.galleryElement_gallery .controls span.fs_btn:after {
  content: "\f065";
}

.galleryElement_gallery .prev_btn,
.galleryElement_gallery .next_btn,
.tn3e-next,
.tn3e-prev {
  display: block;
  position: absolute;
  top: initial !important;
  width: 40px !important;
  height: 40px !important;
  background: transparent !important;
  cursor: pointer;
  z-index: 11;
  opacity: 0.6;
  -webkit-transition: opacity 0.2s ease-in;
          transition: opacity 0.2s ease-in;
}

.galleryElement_gallery .prev_btn:hover,
.galleryElement_gallery .next_btn:hover,
.tn3e-next:hover,
.tn3e-prev:hover {
  opacity: 1;
}

.galleryElement_gallery .prev_btn:after,
.galleryElement_gallery .next_btn:after,
.tn3e-next:after,
.tn3e-prev:after {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 40px;
  font-family: FontAwesome;
  text-align: center;
  color: #ddd;
}

.galleryElement_gallery .prev_btn {
  bottom: 0;
  left: 0;
}

.galleryElement_gallery .prev_btn:after {
  font-size: 20px;
  content: "\f053";
}

.tn3e-prev {
  left: 0 !important;
}

.tn3e-prev:after {
  font-size: 24px;
  content: "\f053";
}

.galleryElement_gallery .next_btn {
  bottom: 0;
  right: 0;
}

.galleryElement_gallery .next_btn:after {
  font-size: 20px;
  content: "\f054";
}

.tn3e-next {
  right: 0 !important;
}

.tn3e-next:after {
  font-size: 24px;
  content: "\f054";
}

.tn3e-gallery .tn3e-control-bar {
  position: absolute;
  width: 160px;
  height: 50px;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
}

.tn3e-gallery .tn3e-control-bar .tn3e-fullscreen,
.tn3e-gallery .tn3e-control-bar .tn3e-play,
.tn3e-gallery .tn3e-control-bar .tn3e-show-albums {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block;
  width: 50px;
  height: 50px;
  background: transparent !important;
  cursor: pointer;
  opacity: 0.6;
  -webkit-transition: opacity 0.2s ease-in;
          transition: opacity 0.2s ease-in;
}

.tn3e-gallery .tn3e-control-bar .tn3e-fullscreen:hover,
.tn3e-gallery .tn3e-control-bar .tn3e-play:hover,
.tn3e-gallery .tn3e-control-bar .tn3e-show-albums:hover {
  opacity: 1;
}

.tn3e-gallery .tn3e-control-bar .tn3e-fullscreen:after,
.tn3e-gallery .tn3e-control-bar .tn3e-play:after,
.tn3e-gallery .tn3e-control-bar .tn3e-show-albums:after {
  display: block;
  width: 100%;
  height: 100%;
  color: #ddd;
  line-height: 50px;
  font-family: FontAwesome;
  font-size: 24px;
  text-align: center;
}

.tn3e-gallery .tn3e-control-bar .tn3e-fullscreen:after {
  content: "\f065";
}

.tn3e-gallery .tn3e-control-bar .tn3e-play:after {
  content: "\f04b";
}

.tn3e-gallery .tn3e-control-bar .tn3e-play.tn3e-play-active:after {
  content: "\f04c";
}

.tn3e-gallery .tn3e-control-bar .tn3e-show-albums:after {
  content: "\f03e";
}

.mediaGallery-pageElementToolbar {
  padding: 10px;
}

body .mediaGallery-dark .mediaGallery-pageElementToolbar a {
  color: #e5e5e5;
}

body .mediaGallery-dark .mediaGallery-pageElementToolbar a:hover {
  color: #fff;
}

body .mediaGallery-dark .mediaGallery-pageElementToolbar a:active {
  color: #e5e5e5;
}

.button-mediaGallery-pe-previous, .button-mediaGallery-pe-playPause, .button-mediaGallery-pe-next {
  float: left;
}

.button-mediaGallery-pe-viewAll {
  float: right;
}

#mediaGallery-toolbar {
  background: #f2f2f2;
  border-bottom: 1px solid #e1e1e1;
  line-height: 24px;
  padding: 0;
}

#mediaGallery-toolbar .layoutContainer {
  padding: 10px 15px;
}

#mediaGallery-toolbar .threeColumn333333 .column2 {
  text-align: center;
}

#mediaGallery-toolbar .threeColumn5050 .column2 {
  text-align: right;
}

#mediaGallery-cartControls {
  display: inline-block;
}

#mediaGallery-cartControls a,
#mediaGallery-cartControls button,
#mediaGallery-cartControls form,
#mediaGallery-cartControls #button-mediaGallery-buyPhotos,
#mediaGallery-cartControls .button-mediaGallery-buyPhotos {
  display: inline-block;
}

#mediaGallery-cart {
  padding: 0;
  margin: 0;
}

#mediaGallery-cart .header {
  float: left;
}

#mediaGallery-cart .header h1 {
  margin-bottom: 5px;
}

#mediaGallery-cart form {
  float: right;
}

#mediaGallery-cartInnerContainer {
  padding: 15px;
  margin: 15px 0 0;
}

#button-mediaGallery-emptyCart {
  margin: 0 11px;
}

#mediaGallery-cartItems {
  clear: both;
  margin: 15px 0 0;
}

.mediaGallery-cartItem {
  position: relative;
  background: #e5e5e5;
  margin: 5px 10px 5px 0;
  float: left;
  padding: 5px;
  text-align: center;
}

.mediaGallery-cartItem img {
  margin: 0 0 5px;
}

.mediaGallery-cartItem small {
  color: #999;
}

.pageElement .mediaGallery-cartItem p {
  line-height: 18px;
  margin: 0 0 5px;
}

#mediaGallery-shareByEmail .layoutContainer {
  padding: 5px 5px 0 15px;
  margin: 0;
}

#mediaGallery-shareByEmail .layoutContainer .pe50 {
  padding: 0 2% 0 0;
  width: 48%;
}

#mediaGallery-shareByEmail .layoutContainer .pe100 {
  padding: 0 1% 0 0;
  width: 98%;
}

#mediaGallery-shareByEmail .footer .layoutContainer {
  padding: 0 0 15px 15px;
}

#mediaGallery-shareByEmail .footer .column2 p {
  text-align: right;
}

#mediaGallery-shareByEmail label {
  padding: 5px 0;
}

#mediaGallery-shareByEmail label span {
  color: #666;
  font-size: 14px;
}

#mediaGallery-shareByEmail input[type="text"],
#mediaGallery-shareByEmail .input-text,
#mediaGallery-shareByEmail .valid,
#mediaGallery-shareByEmail .hasError {
  width: 100%;
  max-width: 480px;
  height: 28px;
  padding: 5px;
  margin-top: 5px;
  font-family: "Open Sans", sans-serif;
  font-size: .75em;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transition: all .1s ease;
          transition: all .1s ease;
}

#mediaGallery-shareByEmail input[type="text"]:hover,
#mediaGallery-shareByEmail .input-text:hover,
#mediaGallery-shareByEmail .valid:hover,
#mediaGallery-shareByEmail .hasError:hover {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #666;
}

#mediaGallery-shareByEmail input[type="text"]:focus,
#mediaGallery-shareByEmail .input-text:focus,
#mediaGallery-shareByEmail .valid:focus,
#mediaGallery-shareByEmail .hasError:focus {
  box-shadow: inset 0 1px 3px #ddd;
  border: 1px solid #0054A6;
  outline: 0;
}

#mediaGallery-shareByEmail .hasError {
  background: #fee;
  border: 1px solid #c99;
}

#mediaGallery-shareByEmail #email_message {
  max-width: 100%;
}

#mediaGallery-tabContents .footer {
  margin-top: 15px;
}

/* Play/Pause - gallery */
#button-mediaGallery-playPause .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/playPause-medium-open-blueHover.png");
}

#button-mediaGallery-playPause[data-state="paused"] .button-image-left {
  background-position: 0 0;
}

#button-mediaGallery-playPause[data-state="paused"]:hover .button-image-left {
  background-position: 0 -24px;
}

#button-mediaGallery-playPause[data-state="paused"]:active .button-image-left {
  background-position: 0 -48px;
}

#button-mediaGallery-playPause[data-state="playing"] .button-image-left {
  background-position: -24px 0;
}

#button-mediaGallery-playPause[data-state="playing"]:hover .button-image-left {
  background-position: -24px -24px;
}

#button-mediaGallery-playPause[data-state="playing"]:active .button-image-left {
  background-position: -24px -48px;
}

/* Play/Pause - page element */
.button-mediaGallery-pe-playPause .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/playPause-small-open-blueHover.png");
}

.button-mediaGallery-pe-playPause[data-state="paused"]:hover .button-image-left {
  background-position: 0 -16px;
}

.button-mediaGallery-pe-playPause[data-state="paused"]:active .button-image-left {
  background-position: 0 -32px;
}

.button-mediaGallery-pe-playPause[data-state="playing"] .button-image-left {
  background-position: -16px 0;
}

.button-mediaGallery-pe-playPause[data-state="playing"]:hover .button-image-left {
  background-position: -16px -16px;
}

.button-mediaGallery-pe-playPause[data-state="playing"]:active .button-image-left {
  background-position: -16px -32px;
}

/* small */
.button-mediaGallery-pe-previous .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/arrowLeft-small-open-blueHover.png");
}

.button-mediaGallery-pe-next .button-image-right {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/arrowRight-small-open-blueHover.png");
}

.button-mediaGallery-pe-viewAll .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/viewSlideshow-small-open.png");
}

.button-mediaGallery-pe-previous:hover .button-image-left,
.button-mediaGallery-pe-next:hover .button-image-right,
.button-mediaGallery-pe-viewAll:hover .button-image-left {
  background-position: 0 -16px;
}

.button-mediaGallery-pe-previous:active .button-image-left,
.button-mediaGallery-pe-next:active .button-image-right,
.button-mediaGallery-pe-viewAll:active .button-image-left {
  background-position: 0 -32px;
}

/* medium */
#button-mediaGallery-viewCart {
  text-decoration: underline;
}

#button-mediaGallery-previous .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/arrowLeft-medium-open-blueHover.png");
}

#button-mediaGallery-next .button-image-right {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/arrowRight-medium-open-blueHover.png");
}

#button-mediaGallery-share {
  background: transparent;
  border: none;
}

#button-mediaGallery-share:hover {
  background: transparent;
  border: none;
}

#button-mediaGallery-share .button-image-left {
  display: none;
}

#button-mediaGallery-share .button-content {
  position: relative;
  background: transparent;
  border: none;
}

#button-mediaGallery-share .button-content:hover {
  background: transparent;
  border: none;
}

#button-mediaGallery-share .button-content:before {
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.2em;
  left: 0px;
  content: "\f003";
}

#button-mediaGallery-addToCart .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/cart-medium-circle-green.png");
}

#button-mediaGallery-emptyCart .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/X-medium-circle-red.png");
}

#button-mediaGallery-buyPhotos-shell .button-image-left {
  background: url("https://app-assets1.sportngin.com/app_images/buttons/arrowRight-medium-circle-green.png");
}

#mediaGallery-shareByEmailForm .tab-close {
  background: transparent;
  border: none;
}

#mediaGallery-shareByEmailForm .tab-close:hover {
  background: transparent;
  border: none;
}

#mediaGallery-shareByEmailForm .tab-close .button-image-left {
  display: none;
}

#mediaGallery-shareByEmailForm .tab-close .button-content {
  position: relative;
  background: transparent;
  border: none;
}

#mediaGallery-shareByEmailForm .tab-close .button-content:hover {
  background: transparent;
  border: none;
}

#mediaGallery-shareByEmailForm .tab-close .button-content:before {
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.2em;
  left: 0px;
  content: "\f00d";
}

#button-mediaGallery-return:hover .button-image,
#button-mediaGallery-previous:hover .button-image-left,
#button-mediaGallery-next:hover .button-image-right,
#button-mediaGallery-share:hover .button-image-left,
#button-mediaGallery-addToCart:hover .button-image-left,
#button-mediaGallery-emptyCart:hover .button-image-left,
#button-mediaGallery-buyPhotos-shell:hover .button-image-left,
.tab-close:hover .button-image-left {
  background-position: 0 -24px;
}

#button-mediaGallery-return:active .button-image,
#button-mediaGallery-previous:active .button-image-left,
#button-mediaGallery-next:active .button-image-right,
#button-mediaGallery-share:active .button-image-left,
#button-mediaGallery-addToCart:active .button-image-left,
#button-mediaGallery-emptyCart:active .button-image-left,
#button-mediaGallery-buyPhotos-shell:active .button-image-left,
.tab-close:active .button-image-left {
  background-position: 0 -48px;
}

/* large */
#button-mediaGallery-addPhotos .button-image-left,
#button-mediaGallery-doneAdding .button-image-left {
  background-image: url("https://app-assets1.sportngin.com/app_images/photo_gallery/add_photo.png");
}

#button-mediaGallery-return .button-image-left {
  display: none;
}

#button-mediaGallery-return:hover .button-image-left {
  background-position: 0 -32px;
}

#button-mediaGallery-return:active .button-image-left {
  background-position: 0 -64px;
}

#button-mediaGallery-return {
  background: transparent;
  border: none;
}

#button-mediaGallery-return:hover {
  background: initial;
}

#button-mediaGallery-return .button-image-left {
  display: none;
}

#button-mediaGallery-return .button-content {
  position: relative;
  background: transparent;
  border: none;
}

#button-mediaGallery-return .button-content:hover {
  background: none;
  border: none;
}

#button-mediaGallery-return .button-content:before {
  position: absolute;
  font-family: FontAwesome;
  font-size: .875em;
  left: 5px;
  content: "\f060";
}

.edit_mode .galleryElement_link {
  background: url("https://app-assets1.sportngin.com/app_images/cmsTabFooter.gif") repeat-x left bottom #FDE872 !important;
}

.galleryElement .rapidContentConstruction {
  padding: 15px;
}

.galleryElement .rapidContentConstruction img {
  margin: 0 0 15px;
}

.galleryElement .rapidContentConstruction p {
  padding: 15px 0 0;
  margin: 0;
}

.photo_gallery_preview img {
  width: 100%;
}

.photo_gallery_preview .button-medium {
  display: none;
}

#mediaGallery-tabs, #mediaGallery-status {
  display: inline;
}

#mediaGalleryUploaderNotes {
  margin: 15px 0 0 0;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .tn3e-image {
    /* height:280px !important; */
  }
  #theMediaGallery_gallery .tn3e-gallery {
    height: 400px !important;
  }
  #mediaGallery-tabs, #mediaGallery-status {
    display: inline-block;
    text-align: center;
    width: 100%;
    padding: 40px 0 20px 0;
  }
}

.galleryElement a[class*="button-"] {
  box-shadow: none;
  border-radius: 0;
}

#lbWrapper.galleryLightbox {
  display: none;
  position: fixed;
  top: 5%;
  left: 5%;
  right: 5%;
  bottom: 5%;
  width: auto;
  height: auto;
}

.galleryLightbox #lightboxBody {
  position: absolute;
  background: transparent;
  overflow: hidden;
  top: 0;
  bottom: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  text-align: center;
}

.galleryItemWrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #000;
  background: -webkit-radial-gradient(center, ellipse cover, #333333 0%, black 100%);
  background: radial-gradient(center, ellipse cover, #333333 0%, black 100%);
  padding: 0 300px 0 0;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
  margin: auto;
}

.galleryLightbox.portrait .galleryItemWrapper {
  padding: 0;
}

.galleryItemContent {
  width: 100px;
  height: 100px;
  overflow: hidden;
}

.galleryLightbox .galleryItemContent {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 300px;
  bottom: 0;
  margin: auto;
}

.galleryLightbox.fullscreen .galleryItemContent {
  z-index: 6;
}

.galleryItemContent .video_aspect_ratio {
  background: none;
}

.galleryLightbox.fullscreen .galleryItemNext,
.galleryLightbox.fullscreen .galleryItemPrev {
  display: none;
}

.galleryItemLoader {
  position: absolute;
  width: 100px;
  height: 100px;
  margin: -50px 0 0 -200px;
  top: 50%;
  left: 50%;
  background: url("https://app-assets1.sportngin.com/app_images/loader2.gif") center center no-repeat;
}

.galleryLightbox.portrait .galleryItemLoader {
  margin-left: -50px;
  top: 25%;
}

.galleryLightbox.portrait .galleryItemContent {
  bottom: 50%;
  right: 0;
}

.galleryItemContent .galleryItem,
.galleryItemContent .galleryItem.photo img {
  display: block;
  width: 100%;
  height: 100%;
}

.galleryItemSummary {
  text-align: left;
  -webkit-transition: all 300ms;
  transition: all 300ms;
  position: absolute;
  top: -38px;
  left: 0;
  right: 0;
  padding: 5px;
  z-index: 3;
  overflow: visible;
  line-height: 18px;
}

.galleryLightbox .galleryItemSummary {
  color: #FFF;
  background: #111;
  background: rgba(0, 0, 0, 0.7);
  -webkit-transition: all 300ms;
  transition: all 300ms;
  right: 300px;
  opacity: 0;
}

.galleryLightbox.portrait .galleryItemSummary {
  right: 0;
}

.galleryItemWrapper.hover .galleryItemSummary {
  opacity: 1;
  top: 0;
}

.galleryItemWrapper.hover.hoverSidebar .galleryItemSummary {
  opacity: 0;
  top: -38px;
}

.galleryItemSummary h3 {
  float: left;
  font-size: 14px;
  margin: 0;
  padding: 5px;
}

.galleryItemWrapper .galleryItemSummary h3 a {
  color: #FFF;
  text-decoration: none;
}

.galleryItemSummary .count {
  font-size: 10px;
  color: #999;
}

.galleryItemLinks {
  float: right;
  line-height: 18px;
  white-space: nowrap;
  padding: 5px;
}

.galleryLightbox.portrait .galleryItemLinks {
  padding-right: 25px;
}

.galleryItemLinks > li {
  list-style: none;
  display: inline;
  margin-left: 10px;
}

.galleryItemShareMenu {
  text-align: left;
  position: absolute;
  z-index: 4;
  top: 0;
  right: 10px;
  display: none;
  background: #FFF;
  padding: 5px 10px;
  -webkit-transition: all 300ms;
  transition: all 300ms;
}

.galleryItemWrapper .galleryItemShareMenu {
  right: 310px;
  opacity: 0;
  background: #111;
  background: rgba(0, 0, 0, 0.7);
}

.galleryItemWrapper.hover .galleryItemShareMenu {
  opacity: 1;
  top: 38px;
}

.galleryItemWrapper.hover.hoverSidebar .galleryItemShareMenu {
  opacity: 0;
  top: 0;
}

.galleryLightbox.portrait .galleryItemShareMenu {
  right: 10px;
}

.galleryItemShareMenu h3 {
  display: none;
}

.galleryItemShareMenu .share_links {
  list-style: none;
}

.galleryItemShareMenu .share_links li {
  margin-bottom: 5px;
}

#lb_galleryPhotoImg {
  display: block;
  height: 100%;
  width: 100%;
}

.galleryItemSidebar {
  background-color: #FFF;
  overflow: auto;
  overflow-y: auto;
  overflow-x: hidden;
  text-align: left;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 300px;
  z-index: 3;
}

.galleryLightbox.portrait .galleryItemSidebar {
  width: 100%;
  top: 50%;
  height: 50%;
}

.galleryLightbox .layoutContainer {
  margin: 0;
  padding: 0 0 15px 15px;
}

.galleryLightbox .layoutContainer .column {
  margin: 0;
  padding: 0;
}

.galleryLightbox .layoutContainer .pageElement {
  margin: 15px 15px 0 0;
  padding: 0;
}

.edit_mode .galleryLightbox .galleryItemText {
  margin: 0 0 15px -15px !important;
  padding: 15px !important;
  background: #FDE872 url(/app_images/cmsTabFooter.gif?1285077954) repeat-x bottom left;
  border-bottom: solid 1px #DDA301;
}

.galleryItemText .byline {
  font-size: 14px;
  font-weight: normal;
}

.galleryItemText .byline .name {
  font-size: 18px;
  font-weight: bold;
}

.galleryItemText .meta {
  color: #999;
}

.galleryItemText .description {
  font-size: 14px;
  line-height: 21px;
}

.galleryItemText textarea.description {
  width: 94%;
  height: 120px;
  border: 1px solid #DDA301;
  padding: 3%;
  margin: 0 -1px;
}

.galleryItemSidebar .formButtons {
  text-align: center;
  margin-top: 10px;
}

.galleryItemSidebar .formButtons .button-medium {
  min-width: 30%;
}

.galleryItemSidebar .formButtons .button-medium:disabled {
  border: 1px solid #DDA301;
  margin: -1px;
}

.galleryLightbox #lightboxClose {
  display: none;
}

.galleryItemWrapper #lightboxClose {
  display: block;
  right: 0;
  width: 21px;
  height: 23px;
  border: none;
  background-color: #FFF;
  background-position: 1px -1043px;
  z-index: 3;
  border-radius: 0 0 0 70%;
}

.galleryLightbox.portrait #lightboxClose {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.8);
}

.galleryLightbox #lightboxClose:hover {
  background-color: #FFF;
}

.edit_mode .galleryLightbox #lightboxClose {
  background-color: #FDE872;
}

.galleryLightbox .galleryItemPrev,
.galleryLightbox .galleryItemNext {
  display: none;
}

.galleryLightbox .galleryItemPrev,
.galleryLightbox .galleryItemNext {
  display: block;
  position: absolute;
  width: 25%;
  height: 20%;
  top: 40%;
}

.galleryItemNext {
  right: 0;
}

.galleryLightbox .galleryItemPrev span,
.galleryLightbox .galleryItemNext span {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 0;
  padding-top: 40px;
  margin-top: -20px;
  overflow: hidden;
  background-color: black;
  border-radius: 5%;
  background-image: url("https://app-assets1.sportngin.com/app_images/white_arrows.png");
  background-position: 10px 10px;
  background-repeat: no-repeat;
  opacity: 0;
  -webkit-transition: all 300ms;
  transition: all 300ms;
}

.galleryLightbox .galleryItemPrev span {
  left: 20px;
}

.galleryLightbox .galleryItemNext span {
  right: 20px;
  background-position: -34px 10px;
}

.galleryItemContent:hover .galleryItemPrev span,
.galleryItemContent:hover .galleryItemNext span {
  opacity: .3;
}

.galleryLightbox .galleryItemPrev:hover span,
.galleryLightbox .galleryItemNext:hover span {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.7);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.7);
}

.galleryItemText form .processing {
  display: none;
  height: 40px;
  background: url("/app_images/loaderBar.gif") center center no-repeat;
}

/*/ GALLERY ITEM SHOW /*/
.galleryItemElement {
  background: #000;
  background: -webkit-radial-gradient(center, ellipse cover, #333333 0%, black 100%);
  background: radial-gradient(center, ellipse cover, #333333 0%, black 100%);
  position: relative;
  overflow: visible;
}

.layoutContainer .galleryItemElement {
  margin-top: 50px;
}

.galleryItemElement .galleryItem.photo img {
  max-width: 100%;
  max-height: 500px;
  display: block;
  margin: auto;
}

.galleryLightbox .commentThreadElement {
  padding-top: 20px;
}

#lightbox .galleryLightbox .commentThreadElement-container > h3 {
  padding-left: 10px;
  font-size: 14px;
}

.galleryLightbox .pageElementAdmin {
  margin: 0 15px 15px 0;
}

/*/ ADMIN THUMBS /*/
#galleryList,
.galleryItemList {
  padding: 2%;
}

#mediaGallery-description + #galleryList,
#mediaGallery-description + .galleryItemList {
  padding-top: 0;
}

.galleryThumbAdmin {
  vertical-align: top;
  display: inline-block;
  zoom: 1;
  *display: inline;
  margin: 2% .9%;
  padding: 0;
  width: 27.5%;
}

.galleryThumbDate {
  font-size: 11px;
  margin: -2% 8% 0;
}

.galleryThumbAdmin .actions {
  text-align: center;
  overflow: hidden;
  padding: 10px 0 6%;
}

.galleryThumbAdmin .actions a:first-child:not(:last-child) {
  float: left;
}

.galleryThumbAdmin .actions a:last-child:not(:first-child) {
  float: right;
}

.galleryThumbAdmin .galleryThumb,
.galleryThumbAdmin .galleryItemThumb {
  display: block;
  margin: 0;
  width: auto;
  margin: 6% 8%;
}

/*/ THUMBS /*/
.galleryThumb,
.galleryItemThumb {
  vertical-align: top;
  display: inline-block;
  zoom: 1;
  *display: inline;
  margin: 1.8%;
  width: 29%;
  background: #DDD;
}

.galleryThumb a,
.galleryItemThumb a,
.galleryThumb a:hover,
.galleryItemThumb a:hover {
  display: block;
  text-decoration: none;
  position: relative;
  background: #FFF;
  padding: 7px;
  color: #111;
}

.galleryThumb .image,
.galleryItemThumb .image {
  display: block;
  height: 0;
  padding: 33% 0;
  overflow: hidden;
  line-height: 0;
  background: #DDD;
}

.galleryThumb img,
.galleryItemThumb img {
  display: inline-block;
  vertical-align: middle;
  margin: -40% 0 -38%;
  width: 100%;
}

.galleryItemThumb + div {
  font-size: .875em;
}

/*/ GALLERY THUMBS ONLY /*/
.galleryThumb a {
  margin: -1px -2px 1px;
}

.galleryThumb .name {
  padding: 0 5px;
  margin-top: 10px;
  display: block;
  font-weight: bold;
}

.galleryThumb .date {
  padding: 0 5px;
  display: block;
  color: #999;
}

.galleryThumb .count {
  position: absolute;
  bottom: 7px;
  right: 7px;
  color: #999;
}

/*/ GALLERY ITEMS THUMBS ONLY /*/
.galleryItemThumb {
  width: 22.5%;
  margin: .9%;
}

.galleryItemList .galleryThumbAdmin {
  width: 19%;
}

/*/ SIDE BAR /*/
#gallerySidebar {
  line-height: 140%;
  background: #EEE;
  border-radius: 5px;
}

#gallerySidebar .summary {
  padding: 15px;
  background: #DDD;
  border-radius: 5px 5px 0 0;
  box-shadow: inset 0 -10px 10px -10px rgba(0, 0, 0, 0.2);
}

#gallerySidebar .summary .button-medium {
  display: block;
}

#gallerySidebar .summary ul {
  display: table;
  width: 100%;
  margin: 15px 0 -14px;
}

#gallerySidebar .summary li {
  display: table-cell;
  list-style: none;
  border-left: 1px solid #EEE;
  border-right: 1px solid #CCC;
  padding: 0 10px 10px;
}

#gallerySidebar .summary li:first-child {
  border-left: none;
}

#gallerySidebar .summary li:last-child {
  border-right: none;
}

#gallerySidebar .summary li label {
  display: block;
  color: #999;
  font-size: .75em;
}

#gallerySidebar .summary li span {
  color: #333;
  font-size: 18px;
}

#gallerySidebar h3 {
  margin: 25px 15px 15px;
  font-size: 11px;
  font-weight: bold;
  text-transform: uppercase;
}

#gallerySidebar .meta {
  border-bottom: 1px solid #FFF;
}

#gallerySidebar .meta li {
  font-weight: bold;
  font-size: 12px;
  list-style: none;
  padding: 10px 10px 10px 40px;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #DDD;
  background-image: url("https://app-assets1.sportngin.com/app_images/icons/metaDataIcons.png");
  background-repeat: no-repeat;
}

#gallerySidebar .meta li.date {
  background-position: 10px 6px;
}

#gallerySidebar .meta li.user {
  background-position: 10px -94px;
}

#gallerySidebar .meta li.location {
  background-position: 10px -194px;
}

#gallerySidebar .meta li.file_size {
  background-position: 10px -294px;
}

#gallerySidebar .meta li.gallery {
  background-position: 10px -394px;
}

#gallerySidebar .share_links {
  list-style: none;
  margin: 10px 15px 15px;
  padding: 0 0 5px;
}

#gallerySidebar .share_links li {
  font-size: 11px;
  margin: 10px 5px;
}

#gallerySidebar .share_links a {
  line-height: 120%;
  display: block;
  text-decoration: none;
  padding: 2px 5px 2px 25px;
}

#lightbox #gallerySidebar .fb_edge_comment_widget.fb_iframe_widget {
  left: auto !important;
  right: 0;
}

body .tn3e-gallery {
  background: none !important;
  width: 100% !important;
}

.tn3e-prev, .tn3e-next {
  bottom: 50%;
}

.tn3e-text {
  display: block !important;
  padding: 0 5%;
  margin: 0 auto !important;
  height: 60px;
  min-height: 60px;
  width: 100% !important;
  bottom: 0 !important;
  left: 0 !important;
  overflow: hidden;
  text-align: center;
}

body .tn3e-thumbs {
  display: block;
  background: transparent !important;
}

.tn3e-thumb > div {
  margin: 2px 0 0 2px;
}

.tn3e-thumb img {
  border: 2px solid #ddd;
}

.unlimitedHierarchy {
  background: url("https://app-assets1.sportngin.com/app_images/hierarchyLines.gif");
  margin-left: 5px;
  display: block;
  width: 95%;
}

.unlimitedHierarchy li {
  display: block;
  padding: 0 0 0 5px;
  clear: both;
  list-style: none;
  background: url("https://app-assets1.sportngin.com/app_images/hierarchyAttach.gif") no-repeat 0 12px;
}

.unlimitedHierarchy li li {
  margin-left: 65px;
}

.unlimitedHierarchy li.selected > div h3 a {
  border: 2px solid #FCCD22;
  background: #FEEC8F;
  font-weight: bold;
  padding: 2px;
  text-decoration: none;
}

.unlimitedHierarchy .nodeTitle {
  margin-left: 5px;
  line-height: 15px;
  font-weight: bold;
}

.unlimitedHierarchy .subtle .nodeTitle {
  font-weight: normal;
  text-decoration: none;
  color: #666;
}

.unlimitedHierarchy .subtle .nodeTitle:hover {
  text-decoration: underline;
}

.unlimitedHierarchy .permissions span {
  display: block;
  float: left;
  text-align: center;
  margin-right: 2px;
}

.unlimitedHierarchy .permissions span .enabled {
  cursor: pointer;
  cursor: hand;
}

.unlimitedHierarchy li div {
  background: #CCC;
  padding: 5px;
}

.unlimitedHierarchy li .nodeAsset {
  padding: 0 5px 4px 10px;
  font-weight: bold;
}

.unlimitedHierarchy span {
  vertical-align: top;
}

.unlimitedHierarchy .lastLi {
  background: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachLast.gif") no-repeat 0 12px;
}

.cmsAccess .private {
  color: #CC0000;
  padding-right: 16px;
  background: url("https://app-assets1.sportngin.com/app_images/disabledPrivatePublicIcon.png") no-repeat right -116px;
}

.cmsAccess .disabled {
  padding-right: 16px;
  background: url("https://app-assets1.sportngin.com/app_images/disabledPrivatePublicIcon.png") no-repeat right 0;
}

.cmsAccess .public {
  padding-right: 16px;
  background: url("https://app-assets1.sportngin.com/app_images/disabledPrivatePublicIcon.png") no-repeat right -232px;
}

.unlimitedHierarchy .disabled, .unlimitedHierarchy .disabled a {
  color: #777;
  font-style: italic;
}

.cmsAccess .permissions .disabled {
  padding: 0;
  background: none;
}

.permissionsHeader {
  font-size: 14px;
  line-height: 140%;
  clear: both;
  margin: 10px 0 5px;
  background: none;
}

/* Collector Tree */
.collectorTree img {
  display: none;
}

.collectorTree .item .info {
  font-size: 12px;
  font-weight: normal;
}

.collectorTree h4 {
  font-size: 1em;
}

.collectorTree li h4 a {
  text-decoration: none;
}

.collectorTree a {
  font-weight: 600;
  font-size: 1em;
}

/* on white */
.unlimitedHierarchyWhite {
  background: url("https://app-assets1.sportngin.com/app_images/hierarchyLinesWhite.gif");
}

.unlimitedHierarchyWhite li div {
  background: #FFF;
}

.unlimitedHierarchyWhite .lastLi {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachLastWhite.gif");
}

/* CMS tweaks */
.rapidContentGeneral .editPermissions li div {
  background: #fef7d0;
}

.rapidContentGeneral .editPermissions .unlimitedHierarchy {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyLinesCMS.gif");
}

.rapidContentGeneral .editPermissions .unlimitedHierarchy li {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachCMS.gif");
}

.rapidContentGeneral .editPermissions .unlimitedHierarchy .lastLi {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachLastCMS.gif");
}

#lightbox .nodePickerSlideBox {
  border: solid 1px #FCCD22;
  border-top: none;
  height: 300px;
  background: #FFF;
}

#lightbox .nodePickerSlideBox h3 {
  font-size: 10px;
  font-weight: normal;
}

#lightbox .unlimitedHierarchy li div {
  padding: 5px;
  background: #fef7d0;
}

#lightbox .unlimitedHierarchy {
  background: #fef7d0 url("https://app-assets1.sportngin.com/app_images/hierarchyLinesCMS.gif");
}

#lightbox .unlimitedHierarchy .lastLi {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachLastCMS.gif");
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy li div {
  padding: 5px;
  background: #FFF;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy {
  background: #FFF url("https://app-assets1.sportngin.com/app_images/hierarchyLinesWhite.gif");
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy .lastLi {
  background-image: url("https://app-assets1.sportngin.com/app_images/hierarchyAttachLastWhite.gif");
}

.permissionsHelp {
  display: block;
  clear: both;
  background: no-repeat url("https://app-assets1.sportngin.com/app_images/permissionsHelp.png");
  text-indent: 43px;
  font-size: 11px;
  line-height: 16px;
  font-weight: normal;
  margin-bottom: 5px;
}

/* Content Tabbed Navigation
-------------------------------------------------------------------- */
.contentTabs {
  display: block;
  list-style-type: none;
  text-align: left;
  width: 100%;
  margin: 10px 0;
  border-bottom: 1px solid #0054A6 !important;
}

.contentTabs:after {
  clear: both;
}

.contentTabs:before, .contentTabs:after {
  content: " ";
  display: table;
}

.contentTabs li {
  -webkit-transition: border 0.2s ease-in;
          transition: border 0.2s ease-in;
  display: inline-block;
  float: left;
}

.contentTabs li span {
  background-repeat: no-repeat;
  background-position: bottom left;
  text-decoration: none;
  display: block;
}

.contentTabs li span a {
  cursor: pointer;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: block;
  font-size: .9em;
  font: 400 13px/1.5 "Montserrat", sans-serif;
  padding: 10px 15px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 100%;
  border-top: solid 1px white;
  border-left: solid 1px white;
  border-right: solid 1px white;
  color: #333333;
}

.contentTabs li span a span {
  display: inline;
}

.contentTabs li.selected span a {
  border-top: solid 1px #0054A6;
  border-left: solid 1px #0054A6;
  border-right: solid 1px #0054A6;
  font-size: .9em;
  font: bold 13px/1.5 "Montserrat", sans-serif;
  color: #0054A6;
}

.contentTabs li.selected span a:after {
  content: '';
  display: inline-block;
  height: 1px;
  width: 100%;
  background: white;
  bottom: -1px;
  left: 0;
  position: absolute;
}

.contentTabs.rapidTabsConstruction a.tabLink {
  padding-top: 4px;
  padding-left: 8px;
  display: inline-block;
  background: none;
}

.pageElementAdmin .rosterPlayerStatElement .contentTabs {
  margin: 0;
}

.dataTable .disabled {
  color: #000;
  text-decoration: none;
}

.dataTable .disabled:hover {
  text-decoration: underline;
}

/* Loading Tab Animation
-------------------------------------------------------------------- */
#contentTabsLoader {
  text-align: center;
  clear: both;
  padding: 25px;
}

/* Rapid Tabs Construction
-------------------------------------------------------------------- */
.rapidTabsConstruction {
  background: #FDDD40;
  margin-bottom: 0;
  border-top: solid 1px #DDA301;
  padding: 0 0 1px;
}

.rapidTabsConstruction li {
  border-right: solid 1px #DDA301;
  padding-right: 0;
}

.rapidTabsConstruction li a {
  font-size: 14px;
}

.rapidTabsConstruction li span {
  background: none;
  padding-left: 0;
}

.rapidTabsConstruction li span a {
  padding-left: 15px;
  padding-right: 15px;
}

.rapidTabsConstruction .selected {
  background: #FDE872;
}

.sn-site-logo {
  position: relative;
  display: none;
}

/*  Shared Styles
-------------------------------------------------------------------- */
#monthViewCalendar .vevent .noEntry,
#month_list .vevent .noEntry,
#dayViewCalendar .vevent .noEntry,
#event_show .vevent .noEntry {
  margin-top: initial;
  font-size: .75em;
  line-height: initial;
  border-top: initial;
}

#monthViewCalendar .caption,
#month_navigation h2,
#dayViewCalendar h2 {
  padding-top: 32px;
  padding-bottom: 15px;
  font-size: 36px;
  font-family: "Montserrat", sans-serif;
  line-height: 1.35;
  font-weight: 700;
  text-align: center;
  color: #333;
}

@media only screen and (max-width: 640px) {
  #monthViewCalendar .caption,
  #month_navigation h2,
  #dayViewCalendar h2 {
    font-size: 28px;
  }
}

#monthViewCalendar .caption a,
#month_navigation h2 a,
#dayViewCalendar h2 a {
  text-decoration: none;
  display: inline-block;
  position: relative;
  font-size: 0;
}

#monthViewCalendar .caption a:after,
#month_navigation h2 a:after,
#dayViewCalendar h2 a:after {
  font: normal normal normal 1.5rem/1 FontAwesome;
  vertical-align: bottom;
  color: #0054A6;
}

#monthViewCalendar .caption a:first-child:after,
#month_navigation h2 a:first-child:after,
#dayViewCalendar h2 a:first-child:after {
  content: "\f060";
  margin-right: 1vw;
}

#monthViewCalendar .caption a:last-child:after,
#month_navigation h2 a:last-child:after,
#dayViewCalendar h2 a:last-child:after {
  content: "\f061";
  margin-left: 1vw;
}

#month_navigation h2,
#dayViewCalendar h2 {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

/*  Month View
-------------------------------------------------------------------- */
#monthViewCalendar table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  word-wrap: break-word;
}

#monthViewCalendar th,
#monthViewCalendar td {
  border: solid 2px #fff;
  padding: 4px;
  vertical-align: top;
  line-height: 1;
}

#monthViewCalendar th {
  text-align: center;
  background-color: #0054A6;
  color: #fff;
}

@media only screen and (max-width: 1024px) {
  #monthViewCalendar th {
    font-size: 0;
  }
  #monthViewCalendar th:first-letter {
    font-size: initial;
  }
}

@media only screen and (max-width: 640px) {
  #monthViewCalendar th {
    display: none;
  }
}

#monthViewCalendar td {
  height: 75px;
  background-color: #eee;
}

@media only screen and (max-width: 640px) {
  #monthViewCalendar td {
    display: block;
    height: auto;
  }
}

#monthViewCalendar ul,
#monthViewCalendar li {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
  line-height: 1.4;
  text-align: left;
  font-weight: 400;
}

#monthViewCalendar .vevent {
  position: relative;
  overflow: hidden;
  margin: 10px 0;
  line-height: 1.2;
}

#monthViewCalendar .summary {
  font-size: inherit;
  margin-bottom: .25em;
}

#monthViewCalendar .description,
#monthViewCalendar .type {
  display: none;
}

#monthViewCalendar .tags {
  font-style: italic;
}

#monthViewCalendar .today {
  background-color: transparent;
  box-shadow: inset 0 0 0 1px #0054A6;
}

#monthViewCalendar .dateLink {
  display: block;
}

#monthViewCalendar .dateLink,
#monthViewCalendar .otherMonth {
  text-align: right;
  font-size: 16px;
  font-weight: bold;
}

#monthViewCalendar .otherMonth {
  color: #ddd;
}

/*  Day View
-------------------------------------------------------------------- */
#dayViewCalendarEvents .eventAggregatorElement .summary,
#dayViewCalendarEvents .eventAggregatorElement .details {
  padding-left: 0;
}

/*  Month List View
-------------------------------------------------------------------- */
#month_list .vevent .location,
#event_show .vevent .location {
  text-transform: none;
  color: inherit;
  font-weight: inherit;
  font-family: inherit;
}

#month_list .showMoreEvents,
#event_show .showMoreEvents {
  background: #eee;
  border-top: 1px solid #ccc;
  padding: 5px 5px 5px 40px;
  text-align: left;
}

/*  Event Show
-------------------------------------------------------------------- */
#event_show + .eventTags {
  margin-top: -25px;
}

#event_show ~ .eventTags {
  font-size: 12px;
  padding-left: 95px;
}

@media only screen and (max-width: 360px) {
  #event_show ~ .eventTags {
    padding-left: 0;
  }
}

#event_show ~ .eventContentNode {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

#event_show ~ .eventContentNode ~ .eventTags {
  padding-top: 15px;
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

/*  Dib Item
-------------------------------------------------------------------- */
.dibItem .location,
.dibItem .tags,
.dibItem .type {
  font-size: 11px;
  color: #666;
}

.dibItem .time {
  font-weight: bold;
}

.dibItem .vevent li {
  display: block;
  list-style-type: none;
  margin: 0;
}

/*  iCal Events
-------------------------------------------------------------------- */
.ical_icon {
  float: right;
  margin: 0.5em 0 0 0.3em;
  position: relative;
  top: -4px;
}

@media only screen and (max-width: 640px) {
  #monthViewCalendar .ical_icon {
    float: none;
    margin: 0 .3em 0 0;
    position: static;
  }
}

.ics_file_download,
.aggregatorElement a .ics_file_download {
  float: none;
  width: auto;
  border: none;
}

/*  Show More Link
-------------------------------------------------------------------- */
.showMoreEvents small {
  float: right;
}

/* Dib Aggregator */
.aggregatorElement.dibAggregatorElement .vevent .dateImage,
.aggregatorElement.dibAggregatorElement .vevent .dateImage img {
  background: none;
  border: none;
}

.dibAggregatorElement .vevent {
  border-top: 2px solid #ddd;
  padding: 26px 0px;
}

.dibAggregatorElement .vevent:first-of-type {
  border-top: none;
}

.dibAggregatorElement .dateImage {
  width: 75px;
  float: left;
  margin-right: 10px;
  list-style-type: none;
}

.dibAggregatorElement .summary,
.dibAggregatorElement .details {
  padding-left: 85px;
}

.dibAggregatorElement .details li {
  list-style: none;
}

.dibAggregatorElement .date {
  display: inline;
}

.dibAggregatorElement .time {
  font-size: .75em;
  font-weight: 600;
  color: #666;
}

.dibAggregatorElement .credits {
  color: #999;
  float: right;
  font-size: 18px;
  letter-spacing: -1px;
  padding: 10px 0;
  text-align: center;
  width: 40px;
  text-transform: uppercase;
  margin: 0 0 10px 0;
  line-height: 10px;
}

.dibAggregatorElement .credits span {
  font-size: 9px;
}

/* Dib Session */
.dibSession {
  padding: 1em;
  background: #EFEFEF;
  margin: .5em 0 1em 0;
  position: relative;
}

.dibSession:before {
  content: '';
  position: absolute;
  background: url("/app_images/icon-dibs-hero-light.svg") center center no-repeat;
  background-size: contain;
  padding: 1em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.dibSession h3 {
  display: inline-block;
  font-size: 1.125em;
  margin: 0 0 0 2.5rem;
}

.dibSession > ul {
  margin: 0 0 0 2.5rem;
  line-height: 1.5;
  font-weight: 400;
}

.dibSession .creditStatus {
  font-size: .75em;
  color: #666;
}

.dibSession .creditStatus strong {
  text-decoration: underline;
}

.dibSession .description {
  clear: both;
}

.dibSession li {
  display: block;
  list-style-type: none;
  margin: 0;
}

.dibSession li p {
  margin: 0;
}

#tab_dib_items_user_content {
  padding-top: .75em;
  clear: both;
}

/* Dib Table */
#dib_items_table {
  overflow-x: scroll;
}

#dib_items_table input[type="checkbox"] {
  margin: 0;
}

#dib_items_table .ajax_sort > img {
  display: none;
}

#dib_items_table td {
  white-space: nowrap;
}

.user_mode #dib_items_table .ajax_sort:first-child {
  text-align: left;
}

.user_mode #dib_items_table td:first-child {
  vertical-align: middle;
}

.user_mode #dib_items_table td:first-child strong {
  text-align: left;
  display: inline-block;
  width: 180px;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: middle;
  text-overflow: ellipsis;
}

.edit_mode #dib_items_table .ajax_sort:nth-child(2) {
  text-align: left;
}

.edit_mode #dib_items_table td:nth-child(2) {
  vertical-align: middle;
}

.edit_mode #dib_items_table td:nth-child(2) strong {
  text-align: left;
  display: inline-block;
  width: 180px;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: middle;
  text-overflow: ellipsis;
}

#dib_items_div .actionLinks {
  height: auto;
  margin: 1em 0;
  font-size: 0.875em;
}

#dib_items_div .actionLinks a {
  color: #333;
}

#dib_items_div .actionLinks span {
  float: none;
}

#dib_items_div .actionLinks .linkSet1 {
  margin-right: 1em;
}

#dib_items_div .actionLinks .linkSet2 .icon {
  display: inline-block;
  margin-left: 0;
  margin-right: 1em;
}

#dib_items_div form#dib_item_form {
  overflow-x: scroll;
  position: relative;
  clear: both;
}

/* Dib Item */
.dibItem .vevent {
  width: 60%;
  float: left;
}

.dibItem .vevent ul {
  margin-bottom: 10px;
}

.dibItem .summary {
  font-size: 1.5em;
  padding: 0;
  margin-left: 1.25em;
  position: relative;
}

.dibItem .summary:before {
  content: '';
  position: absolute;
  background: url("/app_images/icon-dibs-hero-light.svg") center center no-repeat;
  background-size: contain;
  padding: .75em;
  top: 50%;
  left: -1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.dibItem .details {
  width: 30%;
  float: right;
  border: solid 1px #ccc;
  border-bottom: none;
  background: #EFEFEF;
  list-style-type: none;
}

.dibItem .details li {
  display: block;
  padding: 10px;
  border-bottom: solid 1px #ccc;
}

.dibItem .details label {
  font-weight: bold;
}

/* Dibs Calendar Mods */
#tab_dib_item_month_content #monthViewCalendar .today {
  background: #EEE;
}

#tab_dib_item_month_content #monthViewCalendar .today a {
  color: #0054A6;
}

/* Dib Layout Mods */
#dibsTool #pageContentContainer #displayBodyContent {
  background: url(<%= asset_path_for("/app_images/dibs_header.jpg") %>) repeat-x top center;
  padding-top: 100px;
}

#dibsTool #panelOne {
  display: none;
}

#dibsTool #siteContainer2 #panelTwo {
  width: 100%;
}

#dibsTool #siteContainer2 #displayBodyHeader {
  display: none;
}

/* Dib Item Filter */
.dibsFilter {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 15px;
}

.dibsFilter:before {
  display: block;
}

.dibsFilter label {
  display: inline-block;
  font-size: 12px;
  font-weight: 900;
}

.dibsFilter input {
  font-size: 12px;
  font-family: inherit;
}

.dibsFilter input[type="checkbox"] {
  margin: 0 3px 0 0;
  width: auto;
}

.dibsFilter input[type="text"] {
  border: 1px solid #ddd;
  margin-bottom: -4px;
  padding: 3px 5px;
  -webkit-transition: border-color .1s ease;
          transition: border-color .1s ease;
}

.dibsFilter input[type="text"]:hover {
  border-color: #666;
}

.dibsFilter input[type="text"]:focus {
  border-color: #0054A6;
  outline: 0;
}

.dibsFilter select {
  border: 1px solid #ddd;
  padding-right: 4px;
  max-width: 130px;
  white-space: nowrap;
}

.dibsFilter small {
  font-size: 12px;
}

.dibsFilter .filter-column {
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  -webkit-box-flex: 1;
          flex-grow: 1;
  padding: 0 20px 7px 0;
}

.dibsFilter .filter-column:nth-last-child(2) {
  padding-right: 0;
}

.dibsFilter .filter-button {
  width: 100%;
}

.dibsFilter .filter-dates label {
  min-width: 3em;
}

.dibsFilter #credits {
  margin-right: 3px;
  max-width: 4em;
}

@media (max-width: 880px) {
  .dibsFilter .filter-column {
    -ms-flex-preferred-size: 33.3%;
    flex-basis: 33.3%;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    -webkit-box-flex: 0;
            flex-grow: 0;
  }
  .dibsFilter .filter-button {
    padding-top: 5px;
  }
}

@media (max-width: 480px) {
  .dibsFilter .filter-column {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
  }
}

/* Profile Tokens
-------------------------------------------------------------------- */
/* Tokens and MiniTokens */
.profileToken, .profileMiniToken {
  background: #444;
}

.pageElementAdmin .profileToken {
  margin-top: -1px;
}

.profileToken img, .profileMiniToken img, #profileAvatarDisplay img {
  _margin-bottom: -2px;
}

.profileMiniToken {
  height: auto;
  padding: 8px;
  margin-bottom: 10px;
}

.profileToken .image, .profileMiniToken .image {
  position: relative;
  float: left;
  margin: 0 10px 0 5px;
  width: 30px;
  height: 30px;
  border: 2px solid #DDD;
  overflow: hidden;
  border-radius: 50%;
}

.profileToken .image img, .profileMiniToken .image img {
  display: block;
  top: -1%;
  left: -1%;
  width: 103%;
}

.profileToken .info {
  height: 70px;
  float: left;
  list-style-type: none;
}

.subPanelA .profileToken .info .profileName {
  width: 200px;
}

.profileMiniToken .info {
  list-style-type: none;
  text-align: right;
}

.profileToken .info li {
  display: block;
}

.info .profileName, .info .profileName a {
  line-height: 120%;
  font-weight: bold;
  margin-top: 2px;
}

.profileToken .info .profileName {
  font-size: 20px;
  color: #FFF;
}

.profileMiniToken .info .profileName {
  font-size: 1em;
  line-height: 30px;
  float: left;
  margin-top: 0;
  color: #FFF;
}

.profileMiniToken .info .profileName a {
  color: #FFF;
}

.profileToken .info .profileName .type, .miniPersona .type {
  font-size: 11px;
  font-weight: normal;
  color: #666;
}

.info .profileName a:hover {
  text-decoration: underline;
}

.profileToken .info .networkLabel, .profileMiniToken .info .networkLabel {
  color: #CCC;
  font-size: 10px;
  line-height: 120%;
  font-weight: bold;
}

.profileToken .info .networkLabel a {
  color: #FFF;
}

.profileMiniToken .info .networkBadges {
  float: right;
  margin: 5px 5px 0 0;
}

.info .networkBadges img {
  padding: 1px;
  background: #666;
}

.profileToken .tokenActions {
  background: url("https://app-assets1.sportngin.com/app_images/profile_token_actions.jpg") no-repeat top right;
  width: 100%;
  height: 100%;
}

.profileMiniToken .info .tokenActions {
  display: inline-block;
  padding: 1px 5px;
}

.profileMiniToken .tokenActions a {
  color: #fff;
  font-size: 0.8em;
  padding-left: 22px;
}

.profileToken .tokenHierarchy {
  background: url("https://app-assets1.sportngin.com/app_images/profile_token_hierarchy.jpg") no-repeat 400px 0;
  width: 100%;
  height: 100%;
}

.profileToken .actions {
  float: right;
  text-align: right;
  list-style-type: none;
  padding: 3px 3px 0 0;
  color: #CCC;
}

.profileToken .actions a {
  color: #CCC;
}

.profileToken .actions a:hover {
  color: #FFF;
}

#survey_steps .profileToken .actions {
  color: #666;
}

.profileTokenAction {
  text-align: center;
}

.profileTokenAction a {
  display: block;
  font-size: 14px;
  margin-top: 25px;
}

#new_full_name {
  display: block;
  text-align: left;
  margin-left: 66px;
}

@media only screen and (max-width: 900px) {
  .profileMiniToken .info {
    text-align: left;
  }
  .profileMiniToken .info .tokenActions {
    width: 100%;
    padding: 10px 5px;
  }
}

/* Owner */
.profileMiniToken .owner .profileName {
  padding-right: 17px;
  margin-right: 7px;
  background: url("https://app-assets1.sportngin.com/app_images/mini_token_hierarchy.jpg") no-repeat top right;
}

.profileMiniToken .owner .image {
  margin: 0;
}

.profileMiniToken .owner img {
  width: 20px;
  height: 20px;
  margin: 5px 7px 5px 5px;
}

.profileMiniToken .owner .profileName {
  line-height: 25px;
  height: 30px;
}

.profileMiniToken .owner .profileName a {
  color: #CCC;
  font-size: 12px;
}

/* Master Token */
.masterProfile .masterProfileToken {
  border: none;
}

/* Sub Tokens */
.subProfileToken {
  background: #b2b2b2 url("https://app-assets1.sportngin.com/app_images/profile_token_back_sub.jpg") repeat-x;
  border: solid 2px #BABABA;
  overflow: hidden;
}

.subProfileToken .image img, .profileToken .image img {
  display: inline-block;
  width: 70px;
  height: 70px;
}

.subProfileToken .tokenActions {
  background: url("https://app-assets1.sportngin.com/app_images/profile_token_actions_sub.jpg") no-repeat top right;
}

.subProfileToken .info .profileName, .subProfileToken .info .profileName a {
  font-size: 14px;
}

.subProfileToken .info .profileName {
  color: #000;
}

.subProfileToken .actions {
  font-size: 11px;
}

.subProfileToken .actions a {
  color: #666;
}

.subProfileToken .actions a:hover {
  color: #333;
}

.subProfileToken .info .networkLabel {
  color: #666;
}

.subProfileToken .info {
  width: 50%;
}

.subProfileToken .info .networkBadges {
  margin: 3px 0 0;
}

.subProfileToken .info .networkBadges img {
  border-color: #666;
}

.transferOptions {
  margin: -2px 0 2px;
  padding: 2px 0 5px;
  text-align: center;
  background: #CCC;
}

/* miniPersona
-------------------------------------------------------------------- */
.miniPersona {
  border: solid 1px #CCC;
  margin-bottom: 2px;
  background: #DDD url("https://app-assets1.sportngin.com/app_images/user/subtle_gradient_1.png") repeat-x top left;
  border-radius: 2px;
}

.miniPersona.selected {
  border-color: #999;
  background-color: #666;
}

.miniPersonaForm {
  clear: both;
  background: #f2f2f2;
  border: 1px solid #CCC;
  padding: 10px 20px;
  position: relative;
  top: -4px;
  border-radius: 0 0 4px 4px;
}

.miniPersonaForm .formElement {
  background-color: transparent !important;
}

.miniPersona.selected + .miniPersonaForm {
  border-color: #999;
}

.miniPersona input {
  margin: 8px 10px 0 8px;
  _margin: 5px 10px 0 8px;
  float: left;
}

.miniPersona .toggle_membership {
  margin: 5px 5px 0 0;
  float: right;
}

.miniPersona label {
  display: block;
  line-height: 13px;
}

.miniPersona .profilePic {
  float: left;
}

.miniPersona img {
  width: 30px;
  height: 30px;
}

.miniPersona .name {
  font-weight: bold;
  font-size: 13px;
  line-height: 30px;
  margin-left: 5px;
}

.miniPersona .name a {
  color: #900;
  float: right;
  padding-right: 10px;
}

.miniPersona .name a:hover {
  color: #f00;
}

.miniPersona.pending {
  background: #EFEFEF;
  border-color: #CCC;
}

.miniPersona.owner .name {
  line-height: 110%;
}

.miniPersona.pending .name {
  font-size: 11px;
  line-height: 150%;
  padding-top: 2px;
}

.miniPersona em {
  margin-left: 5px;
  color: #666;
  font-style: italic;
  line-height: 120%;
}

.miniPersona .required em {
  font-style: normal;
  font-weight: bold;
  color: #ff0000;
}

.miniPersona ul {
  list-style-type: none;
}

.miniPersona .name input {
  margin: 0;
  float: none;
}

.resultsTable .miniPersona {
  margin-bottom: 0;
}

.dataTable .miniPersona {
  border: none;
  border-bottom: solid 2px #FFF;
}

.dataTable .miniPersona td {
  padding: 2px;
  border: none;
  vertical-align: top;
}

.dataTable .miniPersona .moreInfo {
  width: 50%;
  text-align: right;
  vertical-align: middle;
  padding: 3px 5px 3px 2px;
}

/* New Communication Email
-------------------------------------------------------------------- */
.newCommunicationEmail {
  font-size: 13px;
  padding-bottom: 5px;
}

/* Member Directory View
--------------------------------------------------------------------- */
.profileToken .adminOptions {
  float: right;
  text-align: right;
  padding: 8px;
}

.profileToken .adminOptions a {
  position: relative;
  top: -2px;
}

.profileToken .adminOptions .assume_user {
  margin-left: 8px;
}

/* Member Status */
.profilePicker .status a {
  position: relative;
  top: -2px;
}

.profilePicker .status a.help img {
  float: right;
}

.profilePicker .status {
  text-align: center;
  background: #999 url("https://app-assets1.sportngin.com/app_images/user/button_bg.png") left center;
  border: 1px solid #999;
  padding: 7px 6px 2px;
  color: #FFF;
  font-size: 16px;
  box-shadow: inset 1px 1px 4px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: inset 1px 1px 4px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: inset 1px 1px 4px rgba(0, 0, 0, 0.4);
  border-radius: 10px;
}

.profilePicker .help img {
  vertical-align: middle;
  background: #333;
  background: rgba(0, 0, 0, 0.3);
  padding: 7px 7px 6px 5px;
  margin: -7px -6px -7px 1px;
  border-radius: 0 9px 9px 0;
}

.profilePicker .status.active {
  background-color: #090;
}

.profilePicker .status.blacklisted {
  background-color: #900;
}

.profilePicker .status.active-incomplete {
  background-color: #696;
}

.profilePicker .status.approval-needed {
  background-color: #970;
}

.profilePicker .status.processing {
  background-image: url("https://app-assets1.sportngin.com/app_images/processing_bg.gif");
}

/* Pagination
-------------------------------------------------------------------- */
.paginationElement, .directorySearchElement, .filterElement {
  background: #CCC url("https://app-assets1.sportngin.com/app_images/pageOptionsBody.jpg") repeat-x;
  padding: 5px 0;
  border-bottom: solid 1px #CCCCCC;
}

.paginationElement, .filterElement {
  background-position: 0 -80px;
}

.filterElement {
  padding: 5px 15px;
}

.paginationElement h4 {
  float: left;
  padding-left: 10px;
}

.paginationNav {
  float: right;
  padding-right: 10px;
}

.paginationNav .current, .paginationNav em {
  padding: 0 3px 1px 3px;
}

.paginationNav .disabled {
  display: none;
}

.paginationElement .results {
  clear: both;
  margin-left: 10px;
  padding-top: 2px;
}

/* Tool Pagination
--------------------------------------------*/
.tool_pagination {
  cursor: default;
  padding: 10px;
  border-top: 1px solid #DDD;
  line-height: 11px;
  font-size: 11px;
  color: #999;
  text-align: right;
  white-space: nowrap;
}

.tool_pagination a,
.tool_pagination span,
.tool_pagination em {
  text-decoration: none;
  font-weight: bold;
  color: #999;
  border: 1px solid transparent;
  display: inline-block;
  vertical-align: middle;
  padding: 5px 0;
  width: 21px;
  text-align: center;
  border-radius: 4px;
}

.tool_pagination a:hover {
  color: #333;
  background: #EEE;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, rgba(255, 255, 255, 0.1)), color-stop(51%, rgba(0, 0, 0, 0.1)), color-stop(100%, transparent));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0.1) 51%, transparent 100%);
  background: linear-gradient(top, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0.1) 51%, transparent 100%);
  border-color: #999;
  box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
}

.tool_pagination em {
  font-style: normal;
  background: #DDD;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, transparent));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
  background: linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
  border-color: #BBB;
  box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
}

.tool_pagination .previous_page,
.tool_pagination .next_page {
  padding: 5px 10px;
  width: auto;
}

/* Pulldown Menu 
-------------------------------------------------------------------- */
.pulldownSelectMenu {
  padding: 15px 10px 10px;
  font-size: 0.875em;
  text-align: right;
}

.rapidContentConstruction .pulldownSelectMenu {
  padding: 5px 0px;
  background: none;
}

.pulldownSelectMenu span {
  float: left;
  text-align: left;
}

.pulldownSelectMenu span strong {
  font-weight: 500;
}

/* Node Picker
-------------------------------------------------------------------- */
.nodePickerSlideBox {
  clear: both;
  height: 480px;
  font-size: .875em;
  line-height: 1.5em;
  overflow: auto;
  background: #EEE;
  padding: 1em;
  white-space: nowrap;
  border-bottom: 1em solid #EEE;
  border-top: 1px solid #AAA;
  position: relative;
}

#lightbox .nodePickerSlideBox {
  border: none;
  border-bottom: 1em solid #EEE;
  border-top: 1px solid #AAA;
  background: #EEE;
}

.nodePickerSiteBox {
  padding-bottom: 1em;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy,
.nodePickerSlideBox .unlimitedHierarchy {
  background: none;
  margin: 0;
  width: auto;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy ul,
.nodePickerSlideBox .unlimitedHierarchy ul {
  margin-left: .75em;
  border-left: 1px solid #AAA;
  padding-bottom: 1em;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy li,
.nodePickerSlideBox .unlimitedHierarchy li {
  display: block;
  padding: 0 0 0 5px;
  clear: both;
  list-style: none;
  background: none;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy li li,
.nodePickerSlideBox .unlimitedHierarchy li li {
  margin-left: 2em;
  padding: 0;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy li div,
.nodePickerSlideBox .unlimitedHierarchy li div {
  padding: 5px;
  background: none;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy li input[type=checkbox],
.nodePickerSlideBox .unlimitedHierarchy li input[type=checkbox] {
  margin: 0 .5em 0 0;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy .lastLi,
.nodePickerSlideBox .unlimitedHierarchy .lastLi {
  background: none;
}

#lightbox .nodePickerSlideBox .unlimitedHierarchy .lastLi > ul,
.nodePickerSlideBox .unlimitedHierarchy .lastLi > ul {
  padding-bottom: 0;
  margin-bottom: 1em;
}

.nodePicker {
  padding: 10px 10px 0 25px;
}

.nodePicker ul {
  list-style-type: none;
  margin: 0;
  padding: 0 0 0 30px;
}

.nodePicker li {
  display: block;
  list-style-type: none;
  border-top: 1px solid #FFF;
  line-height: 18px;
  font-size: 11px;
  font-weight: bold;
  color: #666;
  clear: both;
  _height: 18px;
  /* IE 6 hack */
}

.accessTree li {
  color: #333;
  border-top: 1px solid #FCCD22;
  padding: 2px 0;
}

.nodePicker a:link, .nodePicker a:visited {
  font-size: 10px;
  text-decoration: none;
}

.nodePicker a:hover {
  text-decoration: underline;
}

.nodePicker label {
  font-weight: bold;
  margin: 0 3px;
}

.nodePicker .selectLink {
  float: left;
}

.nodePickerContainer .tab,
#nodePickerContainer_news_aggregator_lb .tab {
  position: relative;
  width: auto;
  margin: 0px 1em -1em 1em;
  float: right;
  -webkit-transform: translateY(-200%);
          transform: translateY(-200%);
  line-height: 1;
}

.nodePickerContainer .tab a,
#nodePickerContainer_news_aggregator_lb .tab a {
  color: #FFF;
  background: #444;
  font-size: .625em;
  line-height: 1;
  font-weight: 400;
  text-decoration: none;
  padding: .5em .8em;
  margin: 0;
  border-radius: 4px;
  display: inline-block;
  -webkit-transition: .2s 0s ease-in-out;
          transition: .2s 0s ease-in-out;
}

.nodePickerContainer .tab a.upArrow:after,
#nodePickerContainer_news_aggregator_lb .tab a.upArrow:after {
  content: "\f077";
}

.nodePickerContainer .tab a.downArrow:after,
#nodePickerContainer_news_aggregator_lb .tab a.downArrow:after {
  content: "\f078";
}

.nodePickerContainer .tab a:after,
#nodePickerContainer_news_aggregator_lb .tab a:after {
  font-family: 'Fontawesome';
  display: inline-block;
  position: relative;
  margin-left: .5em;
}

.nodePickerContainer .tab a:hover,
#nodePickerContainer_news_aggregator_lb .tab a:hover {
  color: #DDD;
}

#main_calendar_form #tabShow_main {
  margin: 0 1em;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  padding: 0;
  width: auto;
  background: transparent;
}

#main_calendar_form .nodePickerContainer {
  margin: 15px 0;
  float: none;
}

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

@media only screen and (min-width: 1025px) {
  .col-md-3 .nodePickerContainer .tab,
  .col-md-3 #nodePickerContainer_news_aggregator_lb .tab, .col-md-4 .nodePickerContainer .tab,
  .col-md-4 #nodePickerContainer_news_aggregator_lb .tab, .pe25 .nodePickerContainer .tab,
  .pe25 #nodePickerContainer_news_aggregator_lb .tab, .pe33 .nodePickerContainer .tab,
  .pe33 #nodePickerContainer_news_aggregator_lb .tab {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    margin: -.75em 0 0 0;
    padding: 0px 1em 1em 1em;
    width: 100%;
    text-align: left;
    background: #EEE;
  }
  .col-md-3 .nodePickerContainer .tab#tabHide_main,
  .col-md-3 #nodePickerContainer_news_aggregator_lb .tab#tabHide_main, .col-md-4 .nodePickerContainer .tab#tabHide_main,
  .col-md-4 #nodePickerContainer_news_aggregator_lb .tab#tabHide_main, .pe25 .nodePickerContainer .tab#tabHide_main,
  .pe25 #nodePickerContainer_news_aggregator_lb .tab#tabHide_main, .pe33 .nodePickerContainer .tab#tabHide_main,
  .pe33 #nodePickerContainer_news_aggregator_lb .tab#tabHide_main {
    margin: 0px;
  }
}

@media only screen and (max-width: 380px) {
  .nodePickerContainer .tab,
  #nodePickerContainer_news_aggregator_lb .tab {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    margin: -.75em 0 0 0;
    padding: 0px 1em 1em 1em;
    width: 100%;
    text-align: left;
    background: #EEE;
  }
  .nodePickerContainer .tab#tabHide_main,
  #nodePickerContainer_news_aggregator_lb .tab#tabHide_main {
    margin: 0px;
  }
  #main_calendar_form .tab#tabHide_main {
    text-align: right;
  }
}

/* Node Picker Form Controls
-------------------------------------------------------------------- */
.loading {
  float: right;
  margin: 0 4px 0 0;
  text-align: right;
  width: 16px;
}

.nodePicker-formControls {
  margin: -1.85em 0 0 0;
}

.nodePicker-button {
  background: #444;
  font-size: 0.625em;
  font-weight: 400;
  padding: .5em .8em;
  margin: 0 .5em .45em 0;
  border-radius: 4px;
  display: inline-block;
  line-height: 1;
  color: #FFF;
  -webkit-transition: .2s 0s ease-in-out;
          transition: .2s 0s ease-in-out;
}

.nodePicker-button:hover {
  text-decoration: none;
  color: #DDD;
}

#form_values_match_option {
  float: right;
  margin: -4px 0 0 0;
}

/* Single Select Picker
-------------------------------------------------------------------- */
.singleSelectBodyHeader {
  text-align: center;
  padding: 1px 10px;
}

.singleSelectBodyHeader a {
  font-size: 16px;
  font-weight: bold;
  line-height: 120%;
}

.singleSelectBodyHeader span {
  text-indent: -2000px;
}

.singleSelectBodyHeader .disabled {
  color: #666;
}

.previousSingleSelect {
  float: left;
  width: 5%;
}

.singleSelectBodyHeader #displayBodyHeader {
  float: left;
  margin: 0;
  padding: 0;
  width: 89.5%;
  display: block;
  border-left: solid 1px #FFF;
  border-right: solid 1px #FFF;
  background-position: -10px -2px;
}

.singleSelectBodyHeader #displayBodyHeader a {
  padding: 5px 0;
  display: block;
  text-decoration: none;
}

.nextSingleSelect {
  float: right;
  width: 5%;
}

.npSingleSelect {
  z-index: 200;
  position: absolute;
  left: 168px;
}

.pagePush {
  position: relative;
  z-index: 0;
  left: 0;
}

#siteContainer3 .npSingleSelect {
  width: 592px;
}

#siteContainer2 .npSingleSelect {
  width: 762px;
}

#siteContainer3 .pageElementAdmin .npSingleSelect, #siteContainer2 .pageElementAdmin .npSingleSelect {
  width: auto;
}

.npSingleSelect .nodePickerSlideBox {
  padding-bottom: 10px;
  border-bottom: solid 1px #666;
}

/* Selected Nodes
-------------------------------------------------------------------- */
.selectedNodes {
  min-height: 6em;
  padding: 1em;
  background-color: #EEE;
}

.selectedNodes h3 {
  font-size: .75em;
  padding: 0;
  margin: 0;
  color: #333;
  line-height: 1.3;
  padding: .5em 0;
}

.selectedNodeChoices_main, .selectedNodeChoices_lb {
  margin: 1em 0 3em 0;
}

.pageElementAdmin .selectedNodes {
  border-top: none;
}

#focusContainer #selectedNodeChoices {
  padding-left: 25px;
  margin-top: 0;
}

body .selectedNodes p,
#lightboxBody .selectedNodes p {
  color: #666;
  line-height: 20px;
  margin: 0;
  font-style: italic;
}

.nodePicker-preselectedTags {
  display: none;
}

.tag {
  background: #FFF;
  color: #333;
  font-size: 10px;
  font-weight: 400;
  padding: .5em .8em;
  margin: 0 .5em .5em 0;
  border-radius: 4px;
  display: inline-block;
  line-height: 1;
  -webkit-transition: .2s 0s ease-in-out;
          transition: .2s 0s ease-in-out;
}

.tag:hover {
  text-decoration: none;
  color: #0054A6;
}

/* Tags & Tag Groups
-------------------------------------------------------------------- */
dl.tagGroup {
  border-bottom: 1px dotted #f2f2f2;
  line-height: 1.75em;
  margin: 0;
  padding: 5px;
}

dl.tagGroup dt {
  display: block;
  float: left;
  margin: 2px 5px 0 0;
  text-align: center;
  width: 15px;
}

dl.tagGroup dd {
  margin: 0 0 0 20px;
}

#lightboxBody dl.tagGroup {
  border-bottom: 1px dotted #fde686;
}

#lightboxBody dl.tagGroup .tag {
  background: #fcf0ab;
  background-image: -webkit-linear-gradient(#fcf0ab, #fde686);
  background-image: linear-gradient(#fcf0ab, #fde686);
  border: 1px solid #fde686;
  border-radius: 3px;
}

#lightboxBody .listItem {
  margin: 30px;
  padding: 20px;
  background: #FFF;
  border: 1px solid #999;
}

#lightboxBody .listItem h2 {
  margin: 0 0 0.5em;
}

/* Cross-Site Node Picker
-------------------------------------------------------------------- */
.nodePicker-site {
  border-bottom: 1px dotted #999;
  margin: 10px 0 0;
  padding: 0 0 10px;
}

.nodePicker-site:last-child {
  border: none;
}

.selectedNodes .nodePicker-site-name {
  line-height: 16px;
  margin: 0 0 5px;
}

.selectedNodes .nodePicker-site-name a {
  color: #333;
  float: none;
  font-weight: bold;
  font-size: 12px;
}

.selectedNodes .nodePicker-site-name img {
  display: block;
  float: left;
  margin: 0 4px 0 0;
  height: 16px;
  width: 16px;
}

.nodePicker-crossSite {
  background: #e5e5e5;
  padding: 5px 10px;
}

/* Lobar styles */
.lobar-container {
  position: fixed;
  z-index: 498;
  top: 0;
  left: 0;
  right: 0;
  margin: 0;
  background: #13759b;
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.6);
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: -webkit-transform 100ms linear, opacity 100ms linear, visibility 100ms linear;
  transition: transform 100ms linear, opacity 100ms linear, visibility 100ms linear;
}

.lobar-container.lobar-exit {
  -webkit-transform: translateY(-25%);
          transform: translateY(-25%);
  opacity: 0;
  visibility: hidden;
}

.page-manager-visible .lobar-container {
  left: 60px;
}

.lobar-content {
  background: url("https://app-assets1.sportngin.com/app_images/marketing/emblem-lobar.png") no-repeat center left;
  background-size: 20px;
  background-position-x: 10px;
  max-width: 1000px;
  padding: .5em;
  margin: 0 auto;
  position: relative;
}

.lobar-content p {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0 2.15rem;
  text-align: center;
  font: 400 14px/100% 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #fff;
  line-height: 1.6;
}

.lobar-content p a,
.lobar-content p a:link,
.lobar-content p a:hover {
  display: inline-block;
  position: relative;
  top: -1px;
  height: 23px;
  line-height: 24px;
  margin: 0 0 0 15px;
  padding: 0 7px;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
  border-radius: 2px;
  -webkit-transition: all 350ms ease;
  transition: all 350ms ease;
}

.lobar-link,
.lobar-link:link,
.lobar-link:visited {
  background: #13aa37;
  color: #fff;
}

.lobar-link:hover {
  color: #ccc;
  background: #0e852b;
}

.lobar-close,
.payment-lobar-close {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 30px;
  height: 36px;
  margin: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url("https://app-assets1.sportngin.com/app_images/marketing/icon-close.png") no-repeat center center;
}

/* Payment Status Lobar styles */
.payment-lobar .lobar-content {
  background: url("https://app-assets1.sportngin.com/app_images/marketing/emblem-lobar.png") no-repeat 16px center;
  background-size: 20px;
}

.payment-invoices-button {
  color: #fff;
  font-size: 9px;
  line-height: 24px;
  height: 24px;
  text-decoration: none;
  text-transform: uppercase;
  margin: 0 0 0 15px;
  padding-left: 7px;
  padding-right: 7px;
  display: inline-block;
  border-radius: 4px;
  margin-top: -5px;
}

.payment-invoices-button:hover {
  color: #ccc;
}

.lobar-green {
  color: #fff;
  background-color: #13aa37;
}

.lobar-yellow {
  color: #22272b;
  background-color: #fccd41;
  border-color: #8f7834;
}

.lobar-red {
  color: #fff;
  background-color: #ca1c1b;
  border-color: #761b25;
}

.lobar-green .payment-invoices-button {
  background-color: #0a601f;
}

.lobar-yellow .payment-invoices-button {
  background-color: #86702b;
}

.lobar-red .payment-invoices-button {
  background-color: #6d1718;
}

/* - - - - - - - - - - - - - - - - - - - - -

Title : Lightbox CSS
Author : Kevin Hale
URL : http://particletree.com/features/lightbox-gone-wild/
Created : January 13, 2006
Modified : January 18, 2008 (TST Version)

- - - - - - - - - - - - - - - - - - - - - */
/*
#lightbox{
  display:none;
  position: absolute;
  top:50%;
  left:50%;
  z-index:9999;
  width:700px;
  margin:-220px 0 0 -350px;
  text-align:left;
}
*/
#lightbox {
  z-index: 9999;
  display: none;
}

#lbLoadMessage {
  text-align: center;
}

#lightbox[id] {
  position: fixed;
}

#overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9998;
  background-color: #000;
}

#overlay[id] {
  position: fixed;
}

#overlay.loading {
  background: #000 url("https://app-assets1.sportngin.com/app_images/loader2.gif") 50% 50% no-repeat;
  color: #fff;
}

#overlay.loading p {
  padding: 45% 0;
  text-align: center;
}

#lightbox.done #lbLoadMessage {
  display: none;
}

#lightbox.done #lbContent {
  display: block;
}

#lightbox.loading #lbContent {
  display: none;
}

#lightbox.loading #lbLoadMessage {
  display: block;
}

/*  NGIN Lightbox CSS
-------------------------------------------------------------------- */
#lightboxHeader {
  height: 20px;
  border-bottom: solid 1px #DDA301;
}

#lightboxHeader h1 {
  position: absolute;
  left: 0;
  top: 0;
  width: 90%;
  font-size: 11px;
  line-height: 20px;
  text-transform: uppercase;
  text-align: center;
  color: #333;
  background-image: url("https://app-assets1.sportngin.com/app_images/lbTopLeft.gif");
  background-repeat: no-repeat;
}

#lightboxHeader a {
  position: absolute;
  right: 0;
  top: 0;
  width: 10%;
  font-size: 11px;
  line-height: 20px;
  border-left: solid 1px #DDA301;
  text-align: center;
  text-decoration: none;
  color: #333;
  background-image: url("https://app-assets1.sportngin.com/app_images/lbTopRight.gif");
  background-position: top right;
  background-repeat: no-repeat;
}

#lightboxHeader a:hover {
  color: #000;
}

#lightboxPreview {
  max-height: 125px;
  background: #FFFFD7;
  border-bottom: solid 1px #DDA301;
  padding: 10px;
  overflow: auto;
}

.elementMenuOption {
  text-align: left;
}

#lightboxBody {
  padding: 0 10px 10px;
  background: #fef7d0;
  color: #333;
  display: block;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.submitLightbox {
  border: solid 1px #fccd22;
  background-color: #feec8f;
  clear: both;
  padding: 10px;
  text-align: center;
  margin-top: 20px;
  font-size: 12px;
  line-height: 140%;
}

.submitLightbox .embedded_link {
  font-size: 80%;
  margin-top: .3em;
}

.lbHighlight {
  border: solid 1px #feec8f;
  background-color: #fdf4bc;
  border-radius: 4px;
}

#lightboxBody .elementMenuOption {
  border-bottom: solid 1px #fccd22;
}

#lightbox #waiting_text, #lightbox .waiting_text {
  color: #DDA301;
}

#lightbox .helperLightbox #waiting_text {
  color: #666;
}

#lightboxSubmit .previous {
  float: left;
}

#lightboxSubmit .next {
  float: right;
}

#lightboxFooter {
  position: absolute;
  height: 14px;
  border-top: solid 1px #DDA301;
  background-image: url("https://app-assets1.sportngin.com/app_images/lbBottomRight.gif");
  background-position: bottom right;
  background-repeat: no-repeat;
}

#lightboxFooter #lightboxFeedback {
  position: relative;
  width: 95%;
  font-size: 10px;
  height: 13px;
  background-image: url("https://app-assets1.sportngin.com/app_images/lbBottomLeft.gif");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.helperLightbox #lightboxBody .formElement {
  background: #e0e0e0;
}

/*  Recurring Events Display
-------------------------------------------------------------------- */
#human_readable_recur_string {
  background: #feec8f;
  padding: 5px;
  font-style: italic;
  font-size: 14px;
  font-weight: 900;
  border: 1px solid #fccd22;
  color: #333;
  display: block;
  width: 84%;
  line-height: 120%;
}

/*  Feed Links
-------------------------------------------------------------------- */
.feedLink {
  width: 99%;
  height: 50px;
  margin: 20px 0;
  text-align: center;
}

/*  User Mode Modifications
-------------------------------------------------------------------- */
.helperLightbox #lightboxHeader {
  border-bottom: solid 1px #999;
}

.helperLightbox #lightboxHeader h1 {
  background-image: url("https://app-assets1.sportngin.com/app_images/lbTopLeftUserMode.gif");
}

.helperLightbox #lightboxHeader a {
  background-image: url("https://app-assets1.sportngin.com/app_images/lbTopRightUserMode.gif");
  border-left: solid 1px #999;
}

.helperLightbox #lightboxBody .elementMenuOption {
  border-bottom: solid 1px #999;
}

.helperLightbox #lightboxFooter {
  border-top: solid 1px #999;
  background-image: url("https://app-assets1.sportngin.com/app_images/lbBottomRightUserMode.gif");
}

.helperLightbox #lightboxFooter #lightboxFeedback {
  background-image: url("https://app-assets1.sportngin.com/app_images/lbBottomLeftUserMode.gif");
}

.helperLightbox #lightboxBody {
  background: #EFEFEF;
}

.helperLightbox .submitLightbox {
  border: solid 1px #999;
  background: #CCC;
}

.lightboxHelp {
  color: #777;
  font-size: 11px;
  font-style: italic;
  padding-top: 3px;
}

.siteLightboxBanner {
  display: block;
  margin: 0 auto 5px;
}

/*  Edit Survey Entry
-------------------------------------------------------------------- */
#lightboxBody .formElement {
  margin: 5px 0;
  background-color: #FEEC8F;
  border-top: none;
}

#lightboxBody #profiles_table {
  background-color: #FEEC8F;
}

#lightboxBody #profiles_table td, #lightboxBody #profiles_table th {
  border: solid 1px #FEF7D0;
}

/* User Search
-------------------------------------------------------------------- */
#profiles_table {
  clear: none;
}

#lightboxBody .user_search, #lightboxBody .spinner {
  float: left;
  margin-right: 5px;
}

#lightboxBody #profiles_table {
  border: none;
}

#lightboxBody .personaSelect {
  margin: 20px 20px 0;
}

/* Buttons
-------------------------------------------------------------------- */
/* basics */
.button-add, .button-add:hover {
  color: #393;
}

.button-remove, .button-remove:hover {
  color: #900;
}

.button-add, .button-remove {
  background: #fffbe8;
  border: 1px solid #fdea88;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  cursor: pointer;
  padding: 0 3px;
  text-decoration: none;
}

.button-add img, .button-remove img {
  background: url("https://app-assets1.sportngin.com/app_images/uiAddRemove.png") 9px 0;
  cursor: pointer;
  height: 9px;
  width: 9px;
}

.button-add span, .button-remove span {
  font-size: 10px;
}

/* specifics */
.button-add img {
  background-position: 0 0;
}

.button-remove {
  margin: 0 0 0 5px;
}

/* link states */
.button-add:hover,
.button-remove:hover {
  background: #fff;
}

.button-add:hover img {
  background-position: 0 -9px;
}

.button-add:active img {
  background-position: 0 -18px;
}

.button-remove:hover img {
  background-position: 9px -9px;
}

.button-remove:active img {
  background-position: 9px -18px;
}

/* Lists
-------------------------------------------------------------------- */
#scroll_content ul.pad {
  margin: 1em 1.5em;
}

/* Checkboxes
-------------------------------------------------------------------- */
.fcForm .checkboxes {
  margin: 0 auto;
}

.fcForm .checkboxes tr {
  border-bottom: 1px dotted #feec8f;
}

.fcForm .checkboxes th {
  color: #7f7b68;
  font-size: 10px;
  font-style: normal;
  font-weight: normal;
  padding: 5px 10px 5px 0;
  width: auto;
  text-align: left;
}

.fcForm .checkboxes td {
  padding: 5px;
}

.fcForm .checkboxes b {
  color: #000;
  font-size: 12px;
}

/* Sliders
-------------------------------------------------------------------- */
.lbSlider-input {
  float: left;
  text-align: right;
  width: 35px;
}

.lbSlider-track {
  background: url("https://app-assets1.sportngin.com/app_images/sliderControls.png");
  float: left;
  height: 5px;
  margin: 5px 10px 0;
  position: relative;
  width: 350px;
}

.lbSlider-handle {
  background: url("https://app-assets1.sportngin.com/app_images/sliderControls.png") 0 -5px;
  cursor: move;
  height: 20px;
  position: absolute;
  top: -8px;
  width: 20px;
}

.lbSlider-handle:hover {
  background-position: -20px -5px;
  cursor: move;
}

.lbSlider-handle:active {
  background-position: -40px -5px;
  cursor: move;
}

/* Sliders
-------------------------------------------------------------------- */
#pageNode-columns {
  /*line-height:18px;*/
  margin: 4px 0 0;
}

#pageNode-columns img,
#pageNode-columns input {
  float: left;
  margin: 0 4px 0 0;
}

#lightboxBody #pageNode-columns p {
  margin: 0 0 8px;
}

/* Tabbed Element Form
-------------------------------------------------------------------- */
.tabElementForm .layout_tab:first-child .button-move-up {
  display: none;
}

.tabElementForm .layout_tab:last-child .button-move-down {
  display: none;
}

.tabElementForm .layout_tab .button-move-up, .tabElementForm .layout_tab .button-move-down {
  background: #fffbe8;
  border: 1px solid #fdea88;
  border-radius: 4px;
  cursor: pointer;
  padding: 0 3px;
  text-decoration: none;
  font-size: 10px;
  color: #5F6566;
}

.tabElementForm .layout_tab .button-move-up:hover, .tabElementForm .layout_tab .button-move-down:hover {
  background: #fff;
}

.tabElementForm .layout_tab .button-move-up:active, .tabElementForm .layout_tab .button-move-down:active {
  background: #ffe98c;
}

.tabElementForm .layout_tab .button-move-up img, .tabElementForm .layout_tab .button-move-down img {
  position: relative;
  height: 14px;
  width: 14px;
  top: 2px;
}

.tabElementForm .layout_tab .button-move-up span, .tabElementForm .layout_tab .button-move-down span {
  position: relative;
  top: -2px;
  line-height: 0;
}

.helperLightbox #lightboxHeader {
  border-bottom: solid 1px #999;
  display: block;
  width: 100%;
  height: auto;
  background: #DDD;
  padding: 4px 0;
}

.helperLightbox #lightboxHeader h1 {
  position: relative;
  font-size: 11px;
  line-height: 1;
  text-align: center;
  width: 85%;
  color: #333;
  background: none;
}

.helperLightbox #lightboxHeader a {
  background: transparent;
  border-left: solid 1px #999;
}

.helperLightbox #lightboxBody h4 {
  border-top-color: #999;
}

.helperLightbox #lightboxFooter {
  background: #DDD;
  position: relative;
  height: auto;
}

.helperLightbox #lightboxFooter #lightboxFeedback {
  background: #DDD;
}

.helperLightbox .feedLink {
  max-width: 100%;
}

.pageElement.streamingVideo {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-bottom: 56.25%;
}

.pageElement.streamingVideo iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#survey_steps .vevent {
  margin-top: 20px;
  margin-bottom: 30px;
}

#survey_steps .dateImage {
  width: 75px;
  float: left;
  margin-right: 10px;
  list-style-type: none;
  text-align: center;
}

#survey_steps .dateImage .month {
  font-weight: 600;
  text-transform: uppercase;
  font-size: 14px;
  background-color: #0054A6;
  color: #fff;
}

#survey_steps .dateImage .date {
  font-size: 48px;
  line-height: 1;
  background-color: #eee;
  font-weight: 700;
}

#survey_steps .summary {
  font-size: 18px;
}

#survey_steps .status {
  font-weight: bold;
}

#survey_steps .details {
  list-style: none;
}

#survey_steps .description {
  font-size: 12px;
}

#survey_steps .surveyButtonWrap {
  margin: 0;
}

.secureCheckoutMessage {
  margin-bottom: 1.5rem;
}

body#survey_steps {
  padding: 0;
}

html body {
  padding-top: 40px;
}

html body.noUserBar {
  padding-top: 0;
}

html.has-mobile-nav body {
  padding-top: 44px;
}

html.has-mobile-nav #accountNav {
  position: relative;
  margin-top: -44px;
}

html.page-manager-visible body {
  padding-left: 60px;
}

html.page-manager-visible #topNav {
  margin-left: 60px;
}

html.nav-fixed .site-background {
  margin-top: -57.99px;
  bottom: -57.99px;
}

html:not(.collapsed-mobile-nav) .site-background {
  -webkit-transition: margin-top 0.2s linear, bottom 0.2s linear;
          transition: margin-top 0.2s linear, bottom 0.2s linear;
}

html:not(.collapsed-mobile-nav):not(.has-sub-nav) .site-background {
  margin-top: -40px;
}

html:not(.collapsed-mobile-nav):not(.has-sub-nav).nav-fixed .site-background {
  margin-top: -92.99px;
}

html.collapsed-mobile-nav .site-background {
  margin-top: -140px;
}

#siteContainer, #siteContainer #siteContainer.container-fluid {
  padding: 15px 0;
  width: 100%;
  max-width: 1000px;
  min-height: 100%;
  min-height: 100vh;
  min-height: calc(100vh - 140px - 46px - 40px);
  margin: 0 auto;
  background: #fff;
}

@media only screen and (max-width: 1024px) {
  #siteContainer {
    max-width: 1024px;
  }
}

#siteContainer #displayBodyHeader:not(.displayBodyHeader-image) {
  padding: 15px;
  font-size: 48px;
  font-weight: 600;
  border-bottom: 1px solid #ddd;
  text-transform: initial;
  margin-bottom: 30px;
}

#siteContainer #yieldContent.row {
  margin: auto;
}

#siteContainer #panelOne {
  padding: 0;
}

#siteContainer .yieldPageContent {
  padding: 0;
}

.site-banner-wrapper {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  background-size: cover;
  margin: 0 auto;
  max-width: 1000px;
  position: relative;
  width: 100%;
}

.site-banner-wrapper .site-banner-text-wrapper {
  color: #fff;
  font-size: 36px;
  line-height: 1;
  padding: .5em;
  text-align: center;
  width: 100%;
}

.site-banner-wrapper .site-banner-text-wrapper h2, .site-banner-wrapper .site-banner-text-wrapper h3 {
  font-size: 1em;
  line-height: 1.25;
  text-transform: none;
}

.site-banner-wrapper .site-banner-text-wrapper h1 {
  font-size: 1.5em;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

@media (max-width: 699px) {
  .site-banner-wrapper .site-banner-text-wrapper {
    font-size: 4.5vw;
  }
  .site-banner-wrapper .site-banner-text-wrapper h1 {
    font-weight: 700;
  }
  .site-banner-wrapper .site-banner-text-wrapper h2, .site-banner-wrapper .site-banner-text-wrapper h3 {
    display: none;
  }
}

@media (min-width: 700px) and (max-width: 1000px) {
  .site-banner-wrapper .site-banner-text-wrapper {
    font-size: 3.6vw;
  }
}

html.has-mobile-nav .theme-search-wrapper,
html.has-mobile-nav .theme-main-nav,
html.has-mobile-nav .theme-sub-nav,
html.has-mobile-nav #sn-site-logo,
html.has-mobile-nav #topNavPlaceholder {
  display: none;
}

#topNav {
  position: absolute;
  min-width: 250px;
  left: 0;
  right: 0;
  font-family: "Montserrat", sans-serif;
  z-index: 400;
}

.collapsed-mobile-nav #topNav {
  top: 44px;
}

#topNav .theme-search-bar {
  box-sizing: content-box;
  height: 40px;
}

#topNav .theme-search-bar .theme-search-box {
  position: relative;
  display: inline-block;
  margin: -26px 0;
  overflow: hidden;
  box-sizing: border-box;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  height: 26px;
}

#topNav .theme-search-bar .theme-search-box ~ .theme-search-box {
  margin-left: 8px;
}

#topNav .theme-search-bar .theme-search-input,
#topNav .theme-search-bar .theme-search-submit,
#topNav .theme-search-bar .theme-search-clear {
  float: left;
  height: 26px;
  line-height: 26px;
  -webkit-transition: background 0.2s linear;
          transition: background 0.2s linear;
}

#topNav .theme-search-bar .theme-search-input,
#topNav .theme-search-bar .theme-search-clear {
  font-size: 14px;
}

#topNav .theme-search-bar .theme-search-input {
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-right: none;
  padding: 0 24px 0 8px;
}

#topNav .theme-search-bar .theme-search-input::-ms-clear {
  display: none;
}

#topNav .theme-search-bar .theme-search-input:focus {
  outline: none;
  background: white;
}

#topNav .theme-search-bar .theme-search-submit {
  cursor: pointer;
  color: #fff;
  font-size: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0 8px;
  background: #003a73;
}

#topNav .theme-search-bar .theme-search-submit:focus, #topNav .theme-search-bar .theme-search-submit:hover {
  background: #002040;
}

#topNav .theme-search-bar .theme-search-clear {
  float: left;
  text-decoration: none;
  text-align: center;
  margin-left: -27px;
  margin-right: 1px;
  width: 26px;
}

#topNav .theme-search-bar .theme-search-clear:before {
  content: "✕";
  color: #9ca8af;
  font-family: FontAwesome;
  font-size: 14px;
}

#topNav .theme-nav-style-dropdown .paywall_image,
#topNav .theme-nav-dropdown .paywall_image {
  height: .75em;
  margin-right: .1em;
}

#topNav .theme-nav-style-dropdown {
  /* Level One */
  padding: 0;
  margin: 0;
  list-style: none;
  display: block;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item,
#topNav .theme-nav-style-dropdown > .theme-nav-title {
  padding: 0;
  float: left;
  display: block;
  height: 100%;
}

#topNav .theme-nav-style-dropdown > .theme-nav-title a {
  text-transform: uppercase;
  color: #666;
  display: block;
  padding: 0 10.5px 0 15px;
  text-decoration: none;
}

#topNav .theme-nav-style-dropdown > .theme-nav-title a:after {
  content: '\f105';
  font-family: FontAwesome;
  font-size: 1.1em;
  margin-left: 15px;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item {
  position: relative;
  cursor: pointer;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item.hasChild > .theme-nav-link:after {
  content: "\f107";
  display: inline-block;
  position: relative;
  width: 12px;
  height: 12px;
  line-height: 12px;
  font-family: FontAwesome;
  font-size: 12px;
  color: #fff;
  margin-left: 5px;
  -webkit-transition: color 0.2s linear, top 0.2s linear;
          transition: color 0.2s linear, top 0.2s linear;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item.dropdown-open > .theme-nav-link:after {
  color: #0DB14C;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item > .theme-nav-link {
  display: inline-block;
  background-color: transparent;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item > .theme-nav-link:hover {
  text-decoration: none;
}

#topNav .theme-nav-style-dropdown .theme-nav-more > a:after {
  content: "+";
  margin-left: .3em;
  display: inline-block;
  position: relative;
  top: -.1em;
}

#topNav .theme-nav-style-dropdown .theme-nav-link {
  -webkit-transition: color 0.2s linear, background-color 0.2s linear;
          transition: color 0.2s linear, background-color 0.2s linear;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown {
  font-size: 12px;
  display: none;
  width: 100%;
  min-width: 200px;
  position: absolute;
  text-align: left;
  background: white;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 200;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  -webkit-transition: opacity 0.2s linear, margin-top 0.2s linear;
          transition: opacity 0.2s linear, margin-top 0.2s linear;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.loading:before {
  content: "Loading...";
  font-size: 10px;
  display: block;
  line-height: 20px;
  opacity: 0.5;
  padding: 0 12px;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item {
  display: table;
  position: relative;
  width: 100%;
  min-height: 35px;
  border-right: 0;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item:last-child {
  border-bottom: none;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.hasChild > .theme-nav-link {
  padding-right: 24px;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.hasChild > .theme-nav-link:before {
  content: "\f105";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -6px;
  line-height: 12px;
  width: 18px;
  text-align: left;
  opacity: 0.5;
  font-family: FontAwesome;
  font-size: 12px;
  color: #A0A9B1;
  -webkit-transition: width 0.2s linear;
          transition: width 0.2s linear;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.dropdown-open > .theme-nav-link:before {
  color: #0DB14C;
  width: 14.4px;
  opacity: 1;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item > .theme-nav-link {
  color: #0054A6;
  display: table-cell;
  vertical-align: middle;
  padding: 6px 12px;
  font-weight: 400;
  line-height: 120%;
  vertical-align: middle;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item > .theme-nav-link:not(x):hover {
  text-decoration: none;
  background: #E1E8ED;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.selected > .theme-nav-link {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.1);
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.disabled > .theme-nav-link {
  color: #999;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown > .theme-nav-item.disabled > .theme-nav-link:hover {
  color: #CCC;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown[data-nav-level="2"] {
  margin-top: -20px;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown:not([data-nav-level="2"]) {
  margin-top: -1px;
  margin-left: -20px;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.dropdown-align-right:not([data-nav-level="2"]) {
  margin-left: 20px;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.dropdown-opening {
  display: block;
  opacity: 0;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.dropdown-open {
  display: block;
  opacity: 1;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.dropdown-open[data-nav-level="2"] {
  margin-top: 0;
}

#topNav .theme-nav-style-dropdown ~ .theme-nav-dropdown.dropdown-open:not([data-nav-level="2"]) {
  margin-left: 0;
}

#topNav .theme-search-wrapper {
  border-bottom: 1px solid #E1E8ED;
  color: #fff;
  background-color: #0054A6;
  overflow: hidden;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  display: none;
}

#topNav .site-tagline-text {
  padding: 0 15px;
  display: block;
  overflow: auto;
  white-space: nowrap;
  box-sizing: border-box;
  -ms-flex: 1 1 100%;
  -webkit-box-flex: 1;
          flex: 1 1 100%;
}

#topNav .theme-search-bar {
  line-height: 40px;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
}

#topNav .theme-search-bar > * {
  height: 100%;
}

#topNav .theme-search-bar .theme-page-search {
  box-sizing: border-box;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
          flex: 0 0 auto;
}

#topNav .theme-main-nav {
  position: relative;
  font-size: 14px;
  color: #fff;
  background: transparent;
  max-width: 1000px;
}

#topNav .theme-main-nav .theme-nav {
  line-height: 100px;
}

#topNav .theme-main-nav .theme-nav > .theme-nav-item > .theme-nav-link {
  color: #fff;
  text-transform: none;
  padding: 0 12px;
  text-transform: uppercase;
  letter-spacing: .5px;
}

#topNav .theme-main-nav .theme-nav > .theme-nav-item > .theme-nav-link:not(x):hover {
  background-color: transparent;
}

#topNav .theme-main-nav .theme-nav > .theme-nav-item.disabled > .theme-nav-link {
  color: #999;
}

#topNav .theme-main-nav .theme-nav > .theme-nav-item.disabled:hover > .theme-nav-link {
  color: #CCC;
}

#topNav .theme-main-nav .theme-nav > .theme-nav-item.selected > .theme-nav-link {
  background-color: transparent;
}

#topNav .theme-sub-nav {
  position: relative;
  font-size: 12px;
  background-color: white;
  border-bottom: 1px solid #E1E8ED;
}

#topNav .theme-sub-nav .theme-nav {
  line-height: 40px;
}

#topNav .theme-sub-nav .theme-nav > .theme-nav-item.disabled > .theme-nav-link {
  color: #AAA;
}

#topNav .theme-sub-nav .theme-nav > .theme-nav-item.disabled:hover > .theme-nav-link {
  color: #999;
}

#topNav .theme-sub-nav .theme-nav > .theme-nav-item > .theme-nav-link {
  color: #0054A6;
  text-transform: none;
  padding: 0 15px;
}

#topNav .theme-sub-nav .theme-nav > .theme-nav-item > .theme-nav-link:not(x):hover {
  background-color: #eeeeee;
}

#topNav .theme-sub-nav .theme-nav > .theme-nav-item.selected > .theme-nav-link {
  background-color: #EEE;
}

#topNav .theme-sub-nav:empty {
  display: none;
}

#topNav .theme-search-wrapper,
#topNav .theme-main-nav,
#topNav .theme-sub-nav {
  width: 100%;
  margin: 0 auto;
}

#topNav .theme-search-bar,
#topNav .theme-nav-style-dropdown {
  position: relative;
  margin: auto;
  width: 100%;
  max-width: 1000px;
  -webkit-transition: max-width 0.2s linear, left 0.2s linear, height 0.2s linear, line-height 0.2s linear;
          transition: max-width 0.2s linear, left 0.2s linear, height 0.2s linear, line-height 0.2s linear;
}

#topNav.has-site-logo .theme-search-bar,
#topNav.has-site-logo .theme-nav-style-dropdown {
  max-width: 817px;
  left: 91.5px;
}

#topNav.has-site-logo .theme-sub-nav .theme-nav-style-dropdown {
  max-width: 1000px;
  left: 0;
}

#home #topNav.has-site-logo .theme-sub-nav .theme-nav-style-dropdown {
  max-width: 1145px;
  left: 0;
}

#topNav.nav-fixed {
  top: 0;
  position: fixed;
}

#topNav.nav-fixed .theme-search-bar {
  line-height: 0.01px;
  height: 0.01px;
}

#topNav.nav-fixed .theme-main-nav .theme-nav {
  line-height: 45px;
}

#topNav.nav-fixed .theme-main-nav .theme-nav-style-dropdown > .theme-nav-item.hasChild > .theme-nav-link:before {
  height: 8px;
}

#topNav.nav-fixed .theme-sub-nav .theme-nav {
  line-height: 35px;
}

#topNav.nav-fixed.has-site-logo .theme-search-bar,
#topNav.nav-fixed.has-site-logo .theme-nav-style-dropdown {
  left: -8.49px;
}

#topNavPlaceholder {
  border-bottom: 40px solid #fff;
  max-width: 1000px;
  margin: auto;
  height: 140px;
  -webkit-transition: height 0.2s linear;
          transition: height 0.2s linear;
}

#topNavPlaceholder.page-has-banner {
  border-color: transparent;
}

#topNav.nav-fixed + #topNavPlaceholder {
  height: 82.01px;
}

html {
  -webkit-transition: padding-bottom 0.2s linear;
          transition: padding-bottom 0.2s linear;
}

html.has-main-nav:not(.has-sub-nav) #siteHeader {
  margin-top: -40px;
}

html.has-main-nav:not(.has-sub-nav) #topNav.nav-fixed ~ #siteHeader {
  margin-top: -35px;
}

.theme-network-bar {
  padding: 0 15px;
  display: block;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  word-wrap: normal;
  box-sizing: border-box;
  -ms-flex: 1 1 100%;
  -webkit-box-flex: 1;
          flex: 1 1 100%;
}

.theme-network-bar .theme-network-bar-site-title {
  display: none;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-title {
  display: inline-block;
  vertical-align: top;
  margin-right: 10px;
  font-weight: 700;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-sites {
  display: inline-table;
  vertical-align: top;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-site {
  padding: 5px 3px;
  color: #FFF;
  display: table-cell;
  vertical-align: middle;
  line-height: 30px;
  text-decoration: none !important;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-site:hover {
  background: rgba(255, 255, 255, 0.3);
}

.theme-network-bar:not(.compact-style) .theme-network-bar-site-logo {
  display: block;
  width: 30px;
  height: 30px;
  border: 0;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-site-logo + .theme-network-bar-site-name {
  display: none;
}

.theme-network-bar:not(.compact-style) .theme-network-bar-site-name {
  padding: 0 4px;
}

.theme-network-bar.compact-style .theme-network-bar-title {
  cursor: pointer;
  line-height: normal;
  display: inline-block;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: #003a73;
  padding: 2px 5px;
}

.theme-network-bar.compact-style .theme-network-bar-title:hover {
  background: #002040;
}

.theme-network-bar.compact-style .theme-network-bar-title:after {
  margin-left: 5px;
  font: normal normal normal 14px/1 FontAwesome;
  content: "\f107";
}

.NGIN_tip.theme-network-bar-dropdown {
  margin-top: -1px;
  background: #003a73;
  border: 1px solid rgba(255, 255, 255, 0.15);
  max-width: none !important;
}

.NGIN_tip.theme-network-bar-dropdown .container {
  padding: 0;
}

.NGIN_tip.theme-network-bar-dropdown .close_tip {
  display: none;
}

.NGIN_tip.theme-network-bar-dropdown .theme-network-bar-sites {
  display: block;
  max-height: calc(100vh - 100px);
  overflow: auto;
}

.NGIN_tip.theme-network-bar-dropdown .theme-network-bar-sites .theme-network-bar-site {
  font-size: 14px;
  padding: 4px 8px;
  display: block;
  color: white;
}

.NGIN_tip.theme-network-bar-dropdown .theme-network-bar-sites .theme-network-bar-site:not(:first-child) {
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.NGIN_tip.theme-network-bar-dropdown .theme-network-bar-sites .theme-network-bar-site:hover {
  text-decoration: none;
  background: #0054A6;
}

.NGIN_tip.theme-network-bar-dropdown .theme-network-bar-sites .theme-network-bar-site-logo {
  display: none;
}

#networkNavMenuTitle {
  width: 100%;
  border-bottom: none;
}

#networkNavMenuTitle, #networkNavMenuTitle .theme-nav-back {
  background: #003a73;
}

#networkNavMenuTitle .theme-nav-title-text {
  padding-right: 44px;
}

#networkNavMenuSites {
  position: absolute;
  top: 0;
  left: -100%;
  height: 100%;
  width: 100%;
  z-index: 101;
  -webkit-transition: left 200ms ease-in-out;
          transition: left 200ms ease-in-out;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
}

#networkNavMenuSites > * {
  width: 100%;
}

#networkNavMenuSites, #networkNavMenuSites .theme-nav-title {
  background: #003a73;
}

.network-nav-expanded #networkNavMenuSites {
  left: 0;
}

#sn-site-logo {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -500px;
  width: 183px;
  height: 100px;
  padding: 8px;
  z-index: 1000;
  overflow: hidden;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear;
}

#home #sn-site-logo {
  margin-left: -570px;
}

.nav-fixed #sn-site-logo {
  width: 83.01px;
  height: 45px;
}

#sn-site-logo .sn-site-logo-wrap {
  display: table;
  table-layout: fixed;
  height: 100%;
  width: 100%;
}

#sn-site-logo .sn-site-logo-background {
  display: table-cell;
  vertical-align: middle;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-background-size: contain;
}

/* Page Element Defaults
-------------------------------------------------------------------- */
.pageElementAdmin {
  overflow: visible;
}

.pageElement .inputForm h3 {
  margin-bottom: 0;
}

.pageElement td p {
  margin-bottom: 0;
}

.hrElement {
  background: -webkit-repeating-linear-gradient(162deg, #DDD 0px, transparent 1px, transparent 3px, #DDD 4px);
  background: repeating-linear-gradient(-72deg, #DDD 0px, transparent 1px, transparent 3px, #DDD 4px);
  height: 3px;
  margin: 10px 0;
  border: none;
}

.leftTextImage {
  float: left;
  margin: 5px 15px 10px 0;
}

.rightTextImage {
  float: right;
  margin: 5px 0 10px 10px;
}

.textImageSmall {
  width: 150px;
}

.textImageMedium {
  width: 200px;
}

.textImageLarge {
  width: 250px;
}

body .cutline {
  margin: auto;
  padding: 10px 20px;
  background-color: #eee;
  color: #666;
  font-size: 12px;
  font-style: italic;
}

/* Mirror Button
-------------------------------------------------------------------- */
.mirrorButton {
  float: left;
}

.mirrorButton a {
  background: url("https://app-assets1.sportngin.com/app_images/mirror_content_button.png") no-repeat;
  display: block;
  height: 21px;
  text-indent: -9999px;
  width: 77px;
}

/* Page Element Margins
-------------------------------------------------------------------- */
.pageElement {
  clear: both;
}

.pageElement .pageElement {
  margin-left: 0;
  margin-right: 0;
}

.layoutContainer .pageElement {
  margin: 0 0 15px;
}

#panelTwo .mirrorOriginLink,
#panelTwo .mirrorButton {
  margin-top: 3px;
}

.layoutContainer .pageElementAdmin {
  margin: 0 10px;
}

.layoutContainer .column1 .pageElementAdmin .pageElement,
.layoutContainer .column1 .pageElementAdmin .hrElement {
  margin-left: 0;
}

.hrElement {
  margin: 15px 15px;
}

/* Page Element Typography
-------------------------------------------------------------------- */
.boardMemberElement h3,
.photoGalleryElement h3,
.directorySearchElement h3,
.documentElement h3 {
  font-size: 1.5em;
  font-weight: bold;
  line-height: 14px;
}

.markdownElement h1 {
  margin-bottom: .5em;
}

.linkElement h4,
.paginationElement h4,
.paginationNav,
.searchResultsElement h3 {
  font-size: 12px;
  font-weight: bold;
}

.rosterElement h4 {
  margin: 6px 0;
}

.boardMemberElement .position,
.paginationElement .results,
.searchBlock label,
.calPreviewEvent .time {
  font-size: 10px;
  line-height: 11px;
  color: #666;
}

.boardMemberElement .position {
  text-transform: uppercase;
}

.galleryElement p {
  font-size: 11px;
  line-height: 120%;
}

.linkElement .text,
.contactFormElement .contactEmail,
.sideGraphicLink {
  font-size: 11px;
  font-style: italic;
  color: #666;
}

.helpText {
  color: #666;
  font-style: italic;
}

.markdownElement pre {
  padding: 10px;
  border: solid 1px #333;
  background: #666;
  color: #fff;
}

.markdownElement pre {
  margin-bottom: 1.5em;
}

/* Page Element Mirrors
-------------------------------------------------------------------- */
.elementPreview {
  background: #3C4046 url("https://app-assets1.sportngin.com/app_images/mirror_background.jpg") no-repeat;
  _height: 100px;
  border: solid 1px #333;
  padding: 5px;
  color: #fff;
}

#lightbox .elementPreview {
  margin-top: 10px;
}

.elementPreviewTitle {
  background-repeat: no-repeat;
  padding: 2px 0 3px 25px;
  font-size: 14px;
  line-height: 16px;
}

.elementPreviewImg {
  margin: 0 0 5px 25px;
}

.mirrorSiteHeader {
  margin-bottom: 3px;
}

.mirrorOriginLink {
  font-size: 9px;
  line-height: 10px;
  background-repeat: no-repeat;
  padding: 3px 0 3px 20px;
  display: inline-block;
}

#lightbox .elementPreview .mirrorOriginLink,
#panelTwo .elementPreview .mirrorOriginLink,
.elementPreview .mirrorOriginLink:hover {
  margin-top: 3px;
  display: block;
  color: #fff;
  border-top: solid 1px #666;
  background-position: 4px 5px;
  padding: 7px 0 3px 25px;
}

.mirrorOrigin {
  font-size: 9px;
  line-height: 10px;
  background-repeat: no-repeat;
  color: #999;
  padding: 3px 0 3px 25px;
  background-position: 3px 0px;
}

.mirrorOption {
  padding-left: 5px;
}

/* Mirrored Pages
-------------------------------------------------------------------- */
.elementPreviewTitle a,
.elementPreviewTitle a:hover {
  color: #fff;
}

.rapidContentMirror p {
  margin: 1em 0;
}

/* Display Body Header
-------------------------------------------------------------------- */
.displayBodyHeader-image {
  padding: 0;
  text-indent: -9999px;
}

/* Document Page Element */
.documentElement h3 {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  margin: 0 0 1em 0;
  padding: 15px 0 0 60px;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  background-repeat: no-repeat;
  background-size: 40px;
  background-position: left center;
  line-height: 1.2;
  text-transform: none;
}

.documentElement h3.iconSizeXS {
  background-size: 16px 16px;
  min-height: 16px;
  padding-left: 22px;
  padding-top: 0;
}

.documentElement h3.iconSizeS {
  background-size: 24px 24px;
  min-height: 24px;
  padding-left: 30px;
  padding-top: 0;
}

.documentElement h3.iconSizeM {
  background-size: 32px 32px;
  min-height: 32px;
  padding-left: 40px;
  padding-top: 0;
}

.documentElement h3.iconSizeL {
  background-size: 48px 48px;
  min-height: 48px;
  padding-left: 56px;
  padding-top: 0;
}

.documentElement h3.iconSizeXL {
  background-size: 60px 60px;
  min-height: 60px;
  padding-left: 68px;
  padding-top: 0;
}

.pdf {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconPdf.svg");
}

.word {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconWord.svg");
}

.excel {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconExcel.svg");
}

.powerpoint {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconPpt.svg");
}

.iconText {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconText.svg");
}

.imageBmp {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconBmp.svg");
}

.imageEps {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconEps.svg");
}

.imageGif {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconGif.svg");
}

.imageJpg {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconJpg.svg");
}

.imagePng {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconPng.svg");
}

.imageTif {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconTif.svg");
}

.videoAvi {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconAvi.svg");
}

.videoMov {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconMov.svg");
}

.videoMpg {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconMpg.svg");
}

.iconCsv {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconCsv.svg");
}

.audioMp3 {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconMp3.svg");
}

.audioWav {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconWav.svg");
}

.zip {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconZip.svg");
}

.generic {
  background-image: url("https://app-assets1.sportngin.com/app_images/docIconGeneric.svg");
}

/* Link Page Element */
.linkElement h4 {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  -webkit-font-smoothing: antialiased !important;
  text-align: center;
}

.linkElement h4 a {
  background-color: #0DB14C;
  display: block;
  color: #fff;
  padding: 30px;
  margin-bottom: 0px;
  line-height: normal;
  text-decoration: none;
  -webkit-transition: background-color .2s;
          transition: background-color .2s;
  font-weight: 100;
}

.linkElement h4 a:hover {
  opacity: .8;
}

.linkElement .goToLink:before,
.linkElement .emailLink:before {
  display: none;
}

.linkElement .goToLink:after,
.linkElement .emailLink:after {
  color: #0DB14C;
  content: "\f061";
  font-family: FontAwesome;
  display: none;
  line-height: .8em;
  margin: 0 0 0 6px;
  padding: 0;
  position: relative;
  -webkit-transition: color .2s;
          transition: color .2s;
}

.linkElement .goToLink:hover:after,
.linkElement .emailLink:hover:after {
  color: #fff;
}

.linkElement .emailLink:after {
  content: "\f003";
}

.linkElement .text {
  font-size: 13px;
  line-height: 1.5em;
  margin: auto;
  padding: 10px;
  background-color: #eee;
}

.linkElement.altLink h4 a {
  background-color: rgba(255, 255, 255, 0.1);
  border: solid 2px white;
  padding: 28px 30px;
}

.linkElement.find h4 a:before {
  content: '\f041';
  display: inline-block;
  font-family: FontAwesome;
  position: relative;
  font-size: 20px;
  margin-right: 15px;
}

.admin .linkElement h4 {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 700;
  background: transparent;
  padding: 10px 0 5px 0;
}

.admin .linkElement h4:hover {
  background: transparent;
}

.admin .linkElement h4 a {
  display: inline;
  color: #0054A6;
  padding: 0;
  margin-bottom: 0px;
  background: transparent;
  text-decoration: none;
  opacity: 1;
}

.admin .linkElement h4 a:hover {
  text-decoration: underline;
}

.admin .linkElement .goToLink:before, .admin .linkElement .goToLink:after {
  display: none;
}

.admin .linkElement .text {
  font-size: 13px;
  padding: 0 0 10px 0;
  background-color: #fff;
}

/* Aggregator Elements */
.aggregatorElement h6 {
  font-size: 12px;
  line-height: 12px;
  text-align: left;
  margin: 4px 0;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.aggregatorElement .newsImage img {
  position: relative;
}

.aggregatorElement .boxscore {
  margin: 3px 0;
}

.aggregatorElement .gameArea .details, .aggregatorElement .gameArea .vevent .summary {
  padding-left: 0;
}

.aggregatorElement .vevent .statTable {
  background: #FFF;
}

.aggregatorElement .newsImageCaption {
  display: none;
}

.aggregatorElement .paid {
  background: url("https://app-assets1.sportngin.com/app_images/paidStamp.gif") no-repeat center right;
}

.newsPreviewThumb {
  margin: 0 10px 10px 0;
  float: left;
  clear: left;
}

.newsPreviewText {
  display: none;
}

#gameNewsAggregator {
  border: none;
}

#gameNewsAggregator .teaser, #gameNewsAggregator .commentsAndMore {
  display: none;
}

.threeColumn502525 .column2 .newsImage,
.threeColumn502525 .column3 .newsImage,
.threeColumn255025 .column1 .newsImage,
.threeColumn255025 .column3 .newsImage,
.threeColumn252550 .column1 .newsImage,
.threeColumn252550 .column2 .newsImage,
.threeColumn333333 .column3 .newsImage,
.twoColumn6633 .column2 .newsImage,
.twoColumn3366 .column1 .newsImage,
.threeColumn333333 .column1 .newsImage,
.threeColumn333333 .column2 .newsImage {
  width: 100%;
  float: none;
  margin: 0 0 10px 0;
}

.twoColumn5050 .newsImage {
  width: 50%;
}

.threeColumn502525 .column2 .newsImage img,
.threeColumn502525 .column3 .newsImage img,
.threeColumn255025 .column1 .newsImage img,
.threeColumn255025 .column3 .newsImage img,
.threeColumn252550 .column1 .newsImage img,
.threeColumn252550 .column2 .newsImage img,
.threeColumn333333 .column3 .newsImage img,
.twoColumn6633 .column2 .newsImage img,
.twoColumn3366 .column1 .newsImage img,
.threeColumn333333 .column1 .newsImage img,
.threeColumn333333 .column2 .newsImage img,
.twoColumn5050 .newsImage img {
  width: 100%;
}

.threeColumn502525 .column2 .eventPreview .notToday,
.threeColumn502525 .column3 .eventPreview .notToday,
.threeColumn255025 .column1 .eventPreview .notToday,
.threeColumn255025 .column3 .eventPreview .notToday,
.threeColumn252550 .column1 .eventPreview .notToday,
.threeColumn252550 .column2 .eventPreview .notToday,
.threeColumn333333 .column3 .eventPreview .notToday,
.twoColumn6633 .column2 .eventPreview .notToday,
.twoColumn3366 .column1 .eventPreview .notToday,
.threeColumn333333 .column1 .eventPreview .notToday,
.threeColumn333333 .column2 .eventPreview .notToday {
  display: none;
}

.gameArea .item strong {
  margin-right: 4px;
  font-size: 10px;
  padding: 0 2px;
  color: #FFF;
}

.more {
  font-size: 10px;
  display: block;
  text-align: right;
  font-style: italic;
  font-weight: bold;
}

.regulations {
  margin-top: 5px;
  font-size: 10px;
  color: #666;
}

.regulations li {
  margin-left: 30px;
}

.ineligible {
  color: #cc0000;
  font-weight: bold;
}

.eligible {
  color: #009933;
  font-weight: bold;
}

.standingsAgg {
  text-align: left;
}

.standingsAgg h4 {
  margin: 5px 5px 0;
}

.standingsAgg .statTable {
  font-size: 10px;
  width: auto;
  margin: 5px;
}

.standingsAgg .statTable td, .standingsAgg .statTable th {
  border: none;
  width: 7%;
}

.standingsAgg .statTable .standingsTeamName {
  text-align: left;
  width: 40%;
}

.standingsAgg .vevent {
  padding: 5px;
}

.standingsAgg .vevent .statTable {
  margin: 0;
}

.standingsResultsLinks a {
  display: block;
  margin-left: 5px;
}

.failed {
  background: pink;
}

.failed a {
  color: red;
}

/* News Aggregator */
.newsAggregatorElement .item {
  padding: 25px 0;
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.newsAggregatorElement .item:nth-of-type(1) {
  border: none;
}

.newsAggregatorElement .dateAuthor {
  line-height: 1;
}

.newsAggregatorElement .newsAuthor, .newsAggregatorElement .newsDate {
  color: #666;
  font-size: 12px;
  line-height: 1.25;
  display: inline-block;
  margin-right: .5em;
}

.newsAggregatorElement .articleHasImage > h4, .newsAggregatorElement .articleHasImage .newsText, .newsAggregatorElement .articleHasImage .commentsAndMore, .newsAggregatorElement .articleHasImage .newsItemHeader {
  padding-left: 90px;
}

.newsAggregatorElement .articleHasImage .newsItemHeader {
  position: relative;
}

.newsAggregatorElement .articleHasImage .newsItemHeader > a {
  position: absolute;
  top: -2px;
  left: 0;
}

.aggHeader {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.expanded .newsItemHeader > a {
  display: inline-block;
  float: left;
  padding: 3px 15px 7px 0px;
}

.expanded .newsItemHeader > a img {
  width: auto;
  display: block;
}

.expanded .newsItemElement h4 {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1.25;
  color: #666;
  margin: .75em 0;
}

.expanded .newsItemHeader h2 {
  font-size: 16px;
  font-weight: 700;
  text-transform: none;
  line-height: 1.35;
}

.expanded .newsText {
  clear: both;
  margin-top: 1em;
}

.expanded .newsText h1, .expanded .newsText h2, .expanded .newsText h3, .expanded .newsText h4, .expanded .newsText h5, .expanded .newsText h6 {
  text-transform: none;
  font-weight: 600;
  font-size: 1em;
  letter-spacing: normal;
  margin: 0 0 .5em 0;
  padding: 0;
}

.expanded .newsText ul {
  list-style-type: disc;
}

.condensed li {
  line-height: 1;
}

.newsAggregatorElement .condensed > a {
  display: inline-block;
  float: left;
  padding: 3px 15px 7px 0px;
}

.newsAggregatorElement .condensed > a img {
  width: auto;
  display: block;
}

.condensed .teaser {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1.25;
  color: #666;
  margin: .75em 0;
}

.condensed .details, .condensed > ul {
  list-style-type: none;
}

.condensed .details h4, .condensed > ul h4 {
  font-size: 16px;
  font-weight: 700;
  text-transform: none;
  line-height: 1.35;
}

.condensed .details {
  padding-left: 90px;
}

.commentCount .button-commentCount {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  line-height: 1;
}

.commentCount .button-commentCount:hover {
  background: none;
}

.commentCount .button-commentCount .button-image-right {
  display: none;
}

.commentCount .button-commentCount .button-content {
  margin: 0;
  padding: 0;
  position: relative;
  border: none;
  background: none;
  color: #0054A6;
  font-weight: 600;
  top: 2px;
  -webkit-transition: all 0.2s ease-in;
          transition: all 0.2s ease-in;
}

.commentCount .button-commentCount .button-content:hover {
  background: none;
  border: none;
  color: #0DB14C;
}

.commentCount .button-commentCount .button-content:before {
  content: "";
  display: inline-block;
  position: relative;
  font-family: FontAwesome;
  line-height: 1;
  content: "\f0e5";
  top: -1px;
  right: 0px;
  padding-right: .25em;
}

.commentsAndMore {
  line-height: 1;
  margin: 5px 0 0 0;
}

.commentsAndMore .readMore {
  display: inline-block;
  margin-right: .5em;
}

.commentsAndMore .readMore a {
  margin: 0;
}

@media only screen and (max-width: 420px) {
  .newsAggregatorElement .articleHasImage > h4, .newsAggregatorElement .articleHasImage .newsText, .newsAggregatorElement .articleHasImage .commentsAndMore, .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .newsAggregatorElement .item > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 830px) {
  .col-md-6 .newsAggregatorElement .articleHasImage > h4, .col-md-6 .newsAggregatorElement .articleHasImage .newsText, .col-md-6 .newsAggregatorElement .articleHasImage .commentsAndMore, .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-6 .newsAggregatorElement .item > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-6 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-4 .newsAggregatorElement .articleHasImage > h4, .col-md-4 .newsAggregatorElement .articleHasImage .newsText, .col-md-4 .newsAggregatorElement .articleHasImage .commentsAndMore, .col-md-4 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .col-md-4 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-4 .newsAggregatorElement .item > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-4 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .newsAggregatorElement .articleHasImage > h4, .col-md-3 .newsAggregatorElement .articleHasImage .newsText, .col-md-3 .newsAggregatorElement .articleHasImage .commentsAndMore, .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-3 .newsAggregatorElement .item > a {
    position: relative;
    top: initial;
    left: initial;
  }
  .col-md-3 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (max-width: 320px) {
  .newsAggregatorElement .articleHasImage > h4, .newsAggregatorElement .articleHasImage .newsText, .newsAggregatorElement .articleHasImage .commentsAndMore, .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    float: none;
  }
  .newsAggregatorElement .item > a {
    position: relative;
    float: none;
  }
  .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 930px) {
  .col-md-4 .newsAggregatorElement .articleHasImage > h4, .col-md-4 .newsAggregatorElement .articleHasImage .newsText, .col-md-4 .newsAggregatorElement .articleHasImage .commentsAndMore, .col-md-4 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .col-md-4 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    float: none;
  }
  .col-md-4 .newsAggregatorElement .item > a {
    position: relative;
    float: none;
  }
  .col-md-4 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .newsAggregatorElement .articleHasImage > h4, .col-md-3 .newsAggregatorElement .articleHasImage .newsText, .col-md-3 .newsAggregatorElement .articleHasImage .commentsAndMore, .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    float: none;
  }
  .col-md-3 .newsAggregatorElement .item > a {
    position: relative;
    float: none;
  }
  .col-md-3 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 769px) and (max-width: 999px) {
  .layout-25-25-50 .col-md-3 .newsAggregatorElement .articleHasImage > h4, .layout-25-25-50 .col-md-3 .newsAggregatorElement .articleHasImage .newsText, .layout-25-25-50 .col-md-3 .newsAggregatorElement .articleHasImage .commentsAndMore, .layout-25-25-50 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader, .layout-25-25-50 .col-md-6 .newsAggregatorElement .articleHasImage > h4, .layout-25-25-50 .col-md-6 .newsAggregatorElement .articleHasImage .newsText, .layout-25-25-50 .col-md-6 .newsAggregatorElement .articleHasImage .commentsAndMore, .layout-25-25-50 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .articleHasImage > h4,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsText,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .articleHasImage .commentsAndMore,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .articleHasImage > h4,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsText,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .articleHasImage .commentsAndMore,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 90px;
  }
  .layout-25-25-50 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader > a, .layout-25-25-50 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader > a,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader > a,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: absolute;
    top: -2px;
    left: 0;
  }
  .layout-25-25-50 .col-md-3 .newsAggregatorElement .condensed > a, .layout-25-25-50 .col-md-6 .newsAggregatorElement .condensed > a,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .condensed > a,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .condensed > a {
    display: inline-block;
    float: left;
    padding: 7px 15px 7px 0px;
  }
  .layout-25-25-50 .col-md-3 .newsAggregatorElement .condensed .details, .layout-25-25-50 .col-md-6 .newsAggregatorElement .condensed .details,
  .layout-50-25-25 .col-md-3 .newsAggregatorElement .condensed .details,
  .layout-50-25-25 .col-md-6 .newsAggregatorElement .condensed .details {
    padding-left: 90px;
  }
  .layout-25-50-25 .col-md-3 .newsAggregatorElement .articleHasImage > h4, .layout-25-50-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsText, .layout-25-50-25 .col-md-3 .newsAggregatorElement .articleHasImage .commentsAndMore, .layout-25-50-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader, .layout-25-50-25 .col-md-6 .newsAggregatorElement .articleHasImage > h4, .layout-25-50-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsText, .layout-25-50-25 .col-md-6 .newsAggregatorElement .articleHasImage .commentsAndMore, .layout-25-50-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader {
    padding-left: 0;
  }
  .layout-25-50-25 .col-md-3 .newsAggregatorElement .articleHasImage .newsItemHeader > a, .layout-25-50-25 .col-md-6 .newsAggregatorElement .articleHasImage .newsItemHeader > a {
    position: relative;
    display: block;
    float: none;
  }
  .layout-25-50-25 .col-md-3 .newsAggregatorElement .condensed > a, .layout-25-50-25 .col-md-6 .newsAggregatorElement .condensed > a {
    display: block;
    float: none;
  }
  .layout-25-50-25 .col-md-3 .newsAggregatorElement .condensed .details, .layout-25-50-25 .col-md-6 .newsAggregatorElement .condensed .details {
    padding-left: 0;
  }
}

/* Event Aggregators */
.eventAggregatorElement .aggHeader {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.eventAggregatorElement .vevent {
  position: relative;
  padding: 25px 0;
}

.eventAggregatorElement .vevent ~ .vevent {
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.eventAggregatorElement .vevent.odd, .eventAggregatorElement .vevent.even {
  background-color: transparent;
}

.eventAggregatorElement .summary,
.eventAggregatorElement .details {
  list-style: none;
  padding-left: 95px;
}

.eventAggregatorElement .summary {
  font-family: "Open Sans", sans-serif;
  font-weight: 500;
  text-transform: none;
}

.eventAggregatorElement .time,
.eventAggregatorElement .location {
  display: inline-block;
  margin-right: .5em;
  font-size: 12px;
}

.eventAggregatorElement .location, .eventAggregatorElement .location > a {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  color: #0054A6;
  text-transform: uppercase;
}

.eventAggregatorElement .tags {
  font-size: 12px;
}

.eventAggregatorElement .description {
  margin-top: 12px;
}

.eventAggregatorElement .dateImage {
  display: block;
  list-style: none;
  background: #EEE;
  padding: .5em;
  position: relative;
  float: left;
  width: 80px;
  box-sizing: border-box;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
}

.eventAggregatorElement .dateImage:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(45%, -50%) rotate(45deg);
  transform: translate(45%, -50%) rotate(45deg);
  background: inherit;
  width: .75em;
  height: .75em;
}

.eventAggregatorElement .dateImage .month {
  font-size: .75em;
  font-weight: 600;
  letter-spacing: .5px;
  color: #0054A6;
}

.eventAggregatorElement .dateImage .date {
  font-size: 3em;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.eventAggregatorElement .formElement {
  padding: 10px 0;
}

.eventAggregatorElement .formElement [id$="_start_date_day"],
.eventAggregatorElement .formElement [id$="_end_date_day"] {
  width: 8em;
}

@media only screen and (max-width: 350px) {
  .eventAggregatorElement .dateImage {
    float: none;
    margin-bottom: 1em;
  }
  .eventAggregatorElement .dateImage:after {
    bottom: 0;
    left: 50%;
    top: initial;
    right: initial;
    -webkit-transform: translate(-50%, 45%) rotate(45deg);
    transform: translate(-50%, 45%) rotate(45deg);
  }
  .eventAggregatorElement .summary,
  .eventAggregatorElement .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1020px) {
  .col-md-4 .eventAggregatorElement .dateImage {
    float: none;
    margin-bottom: 1em;
  }
  .col-md-4 .eventAggregatorElement .dateImage:after {
    bottom: 0;
    left: 50%;
    top: initial;
    right: initial;
    -webkit-transform: translate(-50%, 45%) rotate(45deg);
    transform: translate(-50%, 45%) rotate(45deg);
  }
  .col-md-4 .eventAggregatorElement .summary,
  .col-md-4 .eventAggregatorElement .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .eventAggregatorElement .dateImage {
    float: none;
    margin-bottom: 1em;
  }
  .col-md-3 .eventAggregatorElement .dateImage:after {
    bottom: 0;
    left: 50%;
    top: initial;
    right: initial;
    -webkit-transform: translate(-50%, 45%) rotate(45deg);
    transform: translate(-50%, 45%) rotate(45deg);
  }
  .col-md-3 .eventAggregatorElement .summary,
  .col-md-3 .eventAggregatorElement .details {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 999px) {
  .layout-25-25-50 .col-md-6 .eventAggregatorElement .dateImage,
  .layout-25-25-50 .col-md-3 .eventAggregatorElement .dateImage,
  .layout-50-25-25 .col-md-6 .eventAggregatorElement .dateImage,
  .layout-50-25-25 .col-md-3 .eventAggregatorElement .dateImage {
    position: absolute;
    margin-bottom: 0;
  }
  .layout-25-25-50 .col-md-6 .eventAggregatorElement .dateImage:after,
  .layout-25-25-50 .col-md-3 .eventAggregatorElement .dateImage:after,
  .layout-50-25-25 .col-md-6 .eventAggregatorElement .dateImage:after,
  .layout-50-25-25 .col-md-3 .eventAggregatorElement .dateImage:after {
    top: 50%;
    right: 0;
    bottom: initial;
    left: initial;
    -webkit-transform: translate(45%, -50%) rotate(45deg);
    transform: translate(45%, -50%) rotate(45deg);
  }
  .layout-25-25-50 .col-md-6 .eventAggregatorElement .summary,
  .layout-25-25-50 .col-md-6 .eventAggregatorElement .details,
  .layout-25-25-50 .col-md-3 .eventAggregatorElement .summary,
  .layout-25-25-50 .col-md-3 .eventAggregatorElement .details,
  .layout-50-25-25 .col-md-6 .eventAggregatorElement .summary,
  .layout-50-25-25 .col-md-6 .eventAggregatorElement .details,
  .layout-50-25-25 .col-md-3 .eventAggregatorElement .summary,
  .layout-50-25-25 .col-md-3 .eventAggregatorElement .details {
    padding-left: 95px;
  }
  .layout-25-50-25 .col-md-6 .eventAggregatorElement .dateImage,
  .layout-25-50-25 .col-md-3 .eventAggregatorElement .dateImage {
    position: relative;
    margin-bottom: 1em;
  }
  .layout-25-50-25 .col-md-6 .eventAggregatorElement .dateImage:after,
  .layout-25-50-25 .col-md-3 .eventAggregatorElement .dateImage:after {
    bottom: 0;
    left: 50%;
    top: initial;
    right: initial;
    -webkit-transform: translate(-50%, 45%) rotate(45deg);
    transform: translate(-50%, 45%) rotate(45deg);
  }
  .layout-25-50-25 .col-md-6 .eventAggregatorElement .summary,
  .layout-25-50-25 .col-md-6 .eventAggregatorElement .details,
  .layout-25-50-25 .col-md-3 .eventAggregatorElement .summary,
  .layout-25-50-25 .col-md-3 .eventAggregatorElement .details {
    padding-left: 0;
  }
}

.eventPreview {
  text-align: left;
  width: 100%;
  table-layout: fixed;
}

.eventPreview th {
  height: 30px;
  padding: 15px 12px;
  background: #E1E8ED;
  white-space: nowrap;
  border: none;
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
  word-break: break-word;
}

.eventPreview th a {
  color: #FFF;
  font-weight: 600;
}

.eventPreview td {
  font-size: 12px;
  padding: 10px;
  background: #eee;
  vertical-align: top;
  word-break: break-word;
}

.eventPreview td:before {
  content: attr(data-week-view-date) "";
  display: none;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding: 7px 12px;
  border-bottom: 2px solid #FFF;
  background: #0054A6;
  color: #fff;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-size: 1em;
  line-height: 1.1;
  font-weight: 600;
}

.eventPreview td,
.eventPreview th {
  border: 2px solid #FFF;
}

.eventPreview td:first-child,
.eventPreview th:first-child {
  border-left: 0;
}

.eventPreview td:last-child,
.eventPreview th:last-child {
  border-right: 0;
}

.eventPreview .event + .event {
  padding-top: 10px;
}

.eventPreview .noentry {
  word-break: normal;
}

@media only screen and (max-width: 450px) {
  .eventPreview {
    border-top: 2px solid #FFF;
  }
  .eventPreview,
  .eventPreview tbody,
  .eventPreview tr,
  .eventPreview td {
    display: block;
  }
  .eventPreview thead {
    display: none;
  }
  .eventPreview td {
    border: 0;
    padding: 0;
    margin-bottom: 2px;
    word-break: word-break;
  }
  .eventPreview td:before {
    display: block;
  }
  .eventPreview .event {
    padding: 10px;
  }
  .eventPreview .event + .event {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 890px) {
  .col-md-6 .eventPreview {
    border-top: 2px solid #FFF;
  }
  .col-md-6 .eventPreview,
  .col-md-6 .eventPreview tbody,
  .col-md-6 .eventPreview tr,
  .col-md-6 .eventPreview td {
    display: block;
  }
  .col-md-6 .eventPreview thead {
    display: none;
  }
  .col-md-6 .eventPreview td {
    border: 0;
    padding: 0;
    margin-bottom: 2px;
    word-break: word-break;
  }
  .col-md-6 .eventPreview td:before {
    display: block;
  }
  .col-md-6 .eventPreview .event {
    padding: 10px;
  }
  .col-md-6 .eventPreview .event + .event {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-4 .eventPreview {
    border-top: 2px solid #FFF;
  }
  .col-md-4 .eventPreview,
  .col-md-4 .eventPreview tbody,
  .col-md-4 .eventPreview tr,
  .col-md-4 .eventPreview td {
    display: block;
  }
  .col-md-4 .eventPreview thead {
    display: none;
  }
  .col-md-4 .eventPreview td {
    border: 0;
    padding: 0;
    margin-bottom: 2px;
    word-break: word-break;
  }
  .col-md-4 .eventPreview td:before {
    display: block;
  }
  .col-md-4 .eventPreview .event {
    padding: 10px;
  }
  .col-md-4 .eventPreview .event + .event {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .eventPreview {
    border-top: 2px solid #FFF;
  }
  .col-md-3 .eventPreview,
  .col-md-3 .eventPreview tbody,
  .col-md-3 .eventPreview tr,
  .col-md-3 .eventPreview td {
    display: block;
  }
  .col-md-3 .eventPreview thead {
    display: none;
  }
  .col-md-3 .eventPreview td {
    border: 0;
    padding: 0;
    margin-bottom: 2px;
    word-break: word-break;
  }
  .col-md-3 .eventPreview td:before {
    display: block;
  }
  .col-md-3 .eventPreview .event {
    padding: 10px;
  }
  .col-md-3 .eventPreview .event + .event {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 999px) {
  .layout-25-25-50 .col-md-6 .eventPreview,
  .layout-50-25-25 .col-md-6 .eventPreview {
    display: table;
    border-top: 0;
  }
  .layout-25-25-50 .col-md-6 .eventPreview thead,
  .layout-50-25-25 .col-md-6 .eventPreview thead {
    display: table-header-group;
  }
  .layout-25-25-50 .col-md-6 .eventPreview tbody,
  .layout-50-25-25 .col-md-6 .eventPreview tbody {
    display: table-row-group;
  }
  .layout-25-25-50 .col-md-6 .eventPreview tr,
  .layout-50-25-25 .col-md-6 .eventPreview tr {
    display: table-row;
  }
  .layout-25-25-50 .col-md-6 .eventPreview td,
  .layout-25-25-50 .col-md-6 .eventPreview th,
  .layout-50-25-25 .col-md-6 .eventPreview td,
  .layout-50-25-25 .col-md-6 .eventPreview th {
    display: table-cell;
  }
  .layout-25-25-50 .col-md-6 .eventPreview td,
  .layout-50-25-25 .col-md-6 .eventPreview td {
    padding: 10px;
    margin-bottom: none;
    word-break: word-break;
  }
  .layout-25-25-50 .col-md-6 .eventPreview td:before,
  .layout-50-25-25 .col-md-6 .eventPreview td:before {
    display: none;
  }
  .layout-25-25-50 .col-md-6 .eventPreview .event,
  .layout-50-25-25 .col-md-6 .eventPreview .event {
    padding: 0;
  }
  .layout-25-50-25 .col-md-6 .eventPreview {
    border-top: 2px solid #FFF;
  }
  .layout-25-50-25 .col-md-6 .eventPreview,
  .layout-25-50-25 .col-md-6 .eventPreview tbody,
  .layout-25-50-25 .col-md-6 .eventPreview tr,
  .layout-25-50-25 .col-md-6 .eventPreview td {
    display: block;
  }
  .layout-25-50-25 .col-md-6 .eventPreview thead {
    display: none;
  }
  .layout-25-50-25 .col-md-6 .eventPreview td {
    border: 0;
    padding: 0;
    margin-bottom: 2px;
    word-break: word-break;
  }
  .layout-25-50-25 .col-md-6 .eventPreview td:before {
    display: block;
  }
  .layout-25-50-25 .col-md-6 .eventPreview .event {
    padding: 10px;
  }
  .layout-25-50-25 .col-md-6 .eventPreview .event + .event {
    padding-top: 0;
  }
}

@media only screen and (min-width: 891px) and (max-width: 999px) {
  .layout-25-25-50 .col-md-3 .eventPreview,
  .layout-50-25-25 .col-md-3 .eventPreview {
    display: table;
    border-top: 0;
  }
  .layout-25-25-50 .col-md-3 .eventPreview thead,
  .layout-50-25-25 .col-md-3 .eventPreview thead {
    display: table-header-group;
  }
  .layout-25-25-50 .col-md-3 .eventPreview tbody,
  .layout-50-25-25 .col-md-3 .eventPreview tbody {
    display: table-row-group;
  }
  .layout-25-25-50 .col-md-3 .eventPreview tr,
  .layout-50-25-25 .col-md-3 .eventPreview tr {
    display: table-row;
  }
  .layout-25-25-50 .col-md-3 .eventPreview td,
  .layout-25-25-50 .col-md-3 .eventPreview th,
  .layout-50-25-25 .col-md-3 .eventPreview td,
  .layout-50-25-25 .col-md-3 .eventPreview th {
    display: table-cell;
  }
  .layout-25-25-50 .col-md-3 .eventPreview td,
  .layout-50-25-25 .col-md-3 .eventPreview td {
    padding: 10px;
    margin-bottom: none;
    word-break: word-break;
    border: 2px solid #FFF;
  }
  .layout-25-25-50 .col-md-3 .eventPreview td:first-child,
  .layout-50-25-25 .col-md-3 .eventPreview td:first-child {
    border-left: 0;
  }
  .layout-25-25-50 .col-md-3 .eventPreview td:last-child,
  .layout-50-25-25 .col-md-3 .eventPreview td:last-child {
    border-right: 0;
  }
  .layout-25-25-50 .col-md-3 .eventPreview td:before,
  .layout-50-25-25 .col-md-3 .eventPreview td:before {
    display: none;
  }
  .layout-25-25-50 .col-md-3 .eventPreview .event,
  .layout-50-25-25 .col-md-3 .eventPreview .event {
    padding: 0;
  }
}

.pageEl .audioElement h3 {
  margin-bottom: .5em;
}

/* Collectors */
.collectorElement .tags {
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
}

.collectorNews .item {
  position: relative;
  padding: 25px 0;
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.collectorNews .item:nth-of-type(1) {
  border: none;
}

.collectorNews .item > a {
  display: block;
  float: left;
  padding: 3px 15px 7px 0px;
}

.collectorNews .item > a img {
  width: auto;
  display: block;
}

.collectorNews .item > h4 {
  font-size: 18px;
  text-transform: none;
}

.collectorNews .dateAuthor {
  line-height: 1;
  margin: 0;
}

.collectorNews .newsAuthor, .collectorNews .newsDate {
  font-size: 0.75em;
  line-height: 1.25;
  display: inline-block;
  margin-right: .5em;
}

.collectorNews .teaser {
  font-size: 0.875em;
  text-transform: uppercase;
  line-height: 1.25;
  margin: .75em 0;
}

.collectorNews .tags {
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
}

.collectorNews .clearAll {
  display: none;
}

.collectorNews .articleHasImage > h4, .collectorNews .articleHasImage .dateAuthor, .collectorNews .articleHasImage .teaser, .collectorNews .articleHasImage .tags {
  padding-left: 90px;
}

@media only screen and (max-width: 370px) {
  .collectorNews .articleHasImage > a {
    float: none;
  }
  .collectorNews .articleHasImage > h4, .collectorNews .articleHasImage .dateAuthor, .collectorNews .articleHasImage .teaser, .collectorNews .articleHasImage .tags {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-4 .collectorNews .articleHasImage > a {
    float: none;
  }
  .col-md-4 .collectorNews .articleHasImage > h4, .col-md-4 .collectorNews .articleHasImage .dateAuthor, .col-md-4 .collectorNews .articleHasImage .teaser, .col-md-4 .collectorNews .articleHasImage .tags {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .col-md-3 .collectorNews .articleHasImage > a {
    float: none;
  }
  .col-md-3 .collectorNews .articleHasImage > h4, .col-md-3 .collectorNews .articleHasImage .dateAuthor, .col-md-3 .collectorNews .articleHasImage .teaser, .col-md-3 .collectorNews .articleHasImage .tags {
    padding-left: 0;
  }
}

@media (min-width: 769px) and (max-width: 999px) {
  .layout-50-25-25 .col-md-3 .collectorNews .articleHasImage > a,
  .layout-25-25-50 .col-md-3 .collectorNews .articleHasImage > a {
    float: left;
  }
  .layout-50-25-25 .col-md-3 .collectorNews .articleHasImage > h4, .layout-50-25-25 .col-md-3 .collectorNews .articleHasImage .dateAuthor, .layout-50-25-25 .col-md-3 .collectorNews .articleHasImage .teaser, .layout-50-25-25 .col-md-3 .collectorNews .articleHasImage .tags,
  .layout-25-25-50 .col-md-3 .collectorNews .articleHasImage > h4,
  .layout-25-25-50 .col-md-3 .collectorNews .articleHasImage .dateAuthor,
  .layout-25-25-50 .col-md-3 .collectorNews .articleHasImage .teaser,
  .layout-25-25-50 .col-md-3 .collectorNews .articleHasImage .tags {
    padding-left: 90px;
  }
  .layout-25-50-25 .col-md-3 .collectorNews .articleHasImage > a, .layout-25-50-25 .col-md-6 .collectorNews .articleHasImage > a {
    float: none;
  }
  .layout-25-50-25 .col-md-3 .collectorNews .articleHasImage > h4, .layout-25-50-25 .col-md-3 .collectorNews .articleHasImage .dateAuthor, .layout-25-50-25 .col-md-3 .collectorNews .articleHasImage .teaser, .layout-25-50-25 .col-md-3 .collectorNews .articleHasImage .tags, .layout-25-50-25 .col-md-6 .collectorNews .articleHasImage > h4, .layout-25-50-25 .col-md-6 .collectorNews .articleHasImage .dateAuthor, .layout-25-50-25 .col-md-6 .collectorNews .articleHasImage .teaser, .layout-25-50-25 .col-md-6 .collectorNews .articleHasImage .tags {
    padding-left: 0;
  }
}

.collectorDocuments .item,
.collectorPhotos .item {
  padding: 25px 0;
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.collectorDocuments .item:nth-of-type(1),
.collectorPhotos .item:nth-of-type(1) {
  border: none;
}

.collectorDocuments .item .info,
.collectorPhotos .item .info {
  font-size: 1em;
  font-weight: normal;
  float: left;
  margin-left: 25px;
}

.collectorDocuments .item > a img,
.collectorPhotos .item > a img {
  display: none;
}

.collectorDocuments img,
.collectorPhotos img {
  margin: 0 10px 10px 0;
  float: left;
}

.collectorDocuments h4,
.collectorPhotos h4 {
  font-size: 1.125em;
}

.collectorDocuments li h4 a,
.collectorPhotos li h4 a {
  font-size: .75em;
  text-decoration: none;
}

.collectorDocuments .dateAuthor,
.collectorPhotos .dateAuthor {
  color: #666;
  font-size: .75em;
  margin-bottom: .25em;
}

/* Feed Reader */
.feeder > h3 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
      hyphens: auto;
}

.feeder > div:nth-of-type(1) > div {
  padding: 25px 0;
  border-style: solid;
  border-width: 0;
  border-top-color: #ddd;
  border-top-width: 1px !important;
}

.feeder > div:nth-of-type(1) > div:nth-of-type(1) {
  border: none;
}

.feeder > div:nth-of-type(1) > div > ul li:last-child > p:last-child {
  margin-bottom: 0;
}

.feeder .even > ul, .feeder .odd > ul {
  list-style-type: none;
}

.feeder .even > ul ul, .feeder .odd > ul ul {
  list-style-type: disc;
  padding-left: .5em;
  margin-bottom: 1em;
}

.feeder .even > ul ol, .feeder .odd > ul ol {
  margin-bottom: 1em;
}

.feeder .even > ul ul li, .feeder .even > ul ol li, .feeder .odd > ul ul li, .feeder .odd > ul ol li {
  margin-left: 1em;
}

.feeder blockquote {
  float: none;
  color: #666;
  font-size: initial;
  width: initial;
  padding: 0 1em;
  border-left: 2px solid #EEE;
  margin: 1em;
}

.feeder blockquote:before, .feeder blockquote:after {
  display: none;
}

.feeder img {
  max-width: 100%;
}

.feeder table {
  max-width: 100%;
  overflow-x: scroll;
  display: block;
}

.contactElement img {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
  max-width: 50px;
  max-height: 100px;
}

.contactElement img + div {
  max-width: calc(100% - 70px);
}

.contactElement img + div h3 {
  margin-top: -3px;
}

.contactElement h3 {
  color: #0054A6;
  font-size: 1.2em;
  font-weight: 600;
  text-transform: none;
}

.contactElement p {
  color: #666;
  font-size: .75em;
  font-weight: inherit;
  line-height: 1.2em;
  margin-top: 4px;
  margin-bottom: 5px;
  text-align: left;
}

.contactElement p:last-of-type {
  margin-bottom: 9px;
}

.contactElement p:last-child {
  margin-bottom: 0;
}

.contactElement .title {
  border: none;
  padding: 0;
}

.contact-element-first-name {
  display: block;
  font-size: 14px;
  text-transform: uppercase;
}

.contact-element-last-name {
  display: block;
  font-size: 24px;
  margin-top: 2px;
}

.pageElementAdmin .sponsorElement {
  padding-bottom: 10px;
}

.sponsorElement {
  border-top: none;
}

.sponsorElement .description > h3 {
  text-transform: none;
}

.sponsorElement .description .goToLink {
  font-size: .75em;
  font-weight: 600;
  background-color: #eee;
  border: 1px solid #ddd;
  padding: 5px 10px 5px 20px;
  display: inline-block;
  background-position-y: -460px;
  margin: .5em 0;
}

.sponsorElement .imageLink {
  float: left;
  text-align: center;
  margin: 5px 10px 10px 0;
  display: block;
}

.sponsorElement .imageLink img {
  display: block;
}

.sponsorElement.hasImage .description {
  padding-left: 110px;
}

@media only screen and (min-width: 1000px) {
  .col-md-3 .sponsorElement.hasImage .imageLink {
    float: none;
  }
  .col-md-3 .sponsorElement.hasImage .description {
    padding: 0;
  }
}

@media only screen and (min-width: 769px) {
  .col-md-4 .sponsorElement.hasImage .imageLink {
    float: none;
  }
  .col-md-4 .sponsorElement.hasImage .description {
    padding: 0;
  }
}

@media only screen and (max-width: 350px) {
  .sponsorElement.hasImage .imageLink {
    float: none;
  }
  .sponsorElement.hasImage .description {
    padding: 0;
  }
}

/* Poll Element Styles */
.pollElement h3 span {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

.pollElement ul li {
  list-style-type: none;
  padding: 8px 8px 8px 10px;
  margin: 0;
}

.pollElement ul li:first-child {
  padding: 15px 8px 8px 10px;
}

.pollElement ul li:nth-last-child(2) {
  padding: 8px 8px 15px 10px;
}

.pollElement label,
.pollElement h5 {
  font-size: 14px;
  font-weight: 400;
  color: #666;
}

.pollElement h5 {
  text-transform: none;
}

.pollElement label {
  padding-left: 10px;
  vertical-align: middle;
}

.pollElement ul li.pollTotal {
  padding: 15px 8px 8px 10px;
  border-top: 2px solid #ddd;
}

.pollElement ul li.pollTotal h5 {
  font-weight: 600;
}

.pollElement ul li.voteButton {
  position: relative;
  display: block;
  text-align: center;
  border-bottom: none;
  padding: 0;
  max-width: 320px;
}

.pollElement ul li.voteButton:after {
  content: "\f061";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -11px 0 0 18px;
  display: inline-block;
  font-size: 13px;
  font-family: FontAwesome;
  color: #0DB14C;
  cursor: pointer;
  -webkit-transition: color 0.2s ease-in;
          transition: color 0.2s ease-in;
}

.pollElement ul li.voteButton:hover:after {
  color: #fff;
}

.pollElement ul li.voteButton input[type='submit'] {
  width: 100%;
  padding: 10px;
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 700;
  background: #0054A6;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 3px solid #002040;
  text-transform: uppercase;
  text-indent: -20px;
  -webkit-border-radius: 0;
  -webkit-appearance: none;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in;
          transition: all 0.2s ease-in;
}

.pollElement ul li.voteButton input[type='submit']:focus, .pollElement ul li.voteButton input[type='submit']:hover {
  background: #002040;
  outline: 0;
}

.barBackground p {
  white-space: nowrap;
  margin-bottom: 0;
  font-size: 18px;
  color: #333;
}

.contentTabs + .collectorTree.siteMapElement {
  display: inline-block;
  width: 100%;
  border-top: 2px solid #fff;
}

.contentTabs + .collectorTree.siteMapElement a[href*="/document/"] + .info a.title {
  position: relative;
}

.contentTabs + .collectorTree.siteMapElement a[href*="/document/"] + .info a.title:before {
  top: -.2em;
  left: -20px;
}

.contentTabs + .collectorTree.siteMapElement a[href*="/photo_gallery/"] {
  position: relative;
}

.contentTabs + .collectorTree.siteMapElement a[href*="/photo_gallery/"]:before {
  top: -.2em;
  left: -20px;
}

.siteMapElement {
  background: #eee;
}

.siteMapElement h3, .siteMapElement h4 {
  color: #666;
  font-size: .875em;
  font-weight: normal !important;
  padding: 0;
  margin: 0;
  text-transform: none;
}

.siteMapElement .unlimitedHierarchy {
  margin-left: 0;
  padding: 15px;
  background: none;
}

.siteMapElement .unlimitedHierarchy li {
  display: block;
  position: relative;
  list-style-type: none;
  background: none;
  margin-left: 0;
  padding: 0;
}

.siteMapElement .unlimitedHierarchy li div {
  background: none;
}

.siteMapElement .unlimitedHierarchy li li {
  position: relative;
  padding-left: 30px;
}

.siteMapElement .unlimitedHierarchy li li:before, .siteMapElement .unlimitedHierarchy li li:not(.lastLi):after {
  content: "";
  position: absolute;
  top: 0;
  left: 5px;
  display: block;
  width: 25px;
  height: 100%;
  border-left: 1px solid #CCC;
}

.siteMapElement .unlimitedHierarchy li li:before {
  height: 1em;
  border-bottom: 1px solid #CCC;
}

.siteMapElement .unlimitedHierarchy .lastLi {
  background: none;
}

/* News Slideshow Styles */
.drag .newsSlideShow {
  cursor: pointer;
}

.newsSlideShow-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  margin-bottom: 1rem;
  padding-bottom: 2.5rem;
}

.newsSlideShow-article {
  display: none;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 2.5rem);
  border: 2px solid #ddd;
  background-color: #fff;
}

.newsSlideShow-article.current {
  z-index: 1;
}

.newsSlideShow-article img {
  position: absolute;
}

.newsSlideShow-headline {
  position: absolute;
  bottom: .25rem;
  z-index: 1;
  width: 100%;
  margin: 0;
}

.newsSlideShow-headline h1 {
  position: relative;
  display: block;
  width: calc(96% - 7px);
  margin: 0 0 2px 7px;
  padding: 20px;
  font-size: 18px;
  background-color: rgba(0, 0, 0, 0.75);
  text-transform: none;
}

.newsSlideShow-headline h1:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -7px;
  height: 100%;
  width: 5px;
  background-color: #0DB14C;
}

.newsSlideShow-headline h1:after {
  content: "";
  clear: both;
}

.newsSlideShow-headline h1 a {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 32px;
  line-height: 1.2;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .newsSlideShow-headline h1 a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
  }
  .col-md-3 .newsSlideShow-headline h1 a {
    -webkit-line-clamp: 1;
  }
}

.newsSlideShow-headline p {
  display: block;
  width: 96%;
  padding-left: 7px;
  margin: 0 0 2px 0;
  line-height: 1.5em;
  font-size: 12px;
  font-style: italic;
}

.newsSlideShow-headline p span {
  display: block;
  float: left;
  width: auto;
  max-width: calc(100% - 142px);
  height: 2.25rem;
  padding-right: 10px;
  line-height: 2.25rem;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.75);
  text-indent: 10px;
  overflow: hidden;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}

.newsSlideShow-headline p span:empty {
  display: none;
}

.newsSlideShow-headline p a {
  float: left;
  width: 140px;
  margin: 0;
  height: 2.25rem;
  line-height: 2.25rem;
}

.newsSlideShow-thumbnails {
  position: absolute;
  z-index: 10;
  left: 50%;
  bottom: 0;
  width: calc(100% - 5rem);
  height: 2.5rem;
  box-shadow: 0 -2px #ddd;
  list-style-type: none;
  line-height: 1;
  text-align: center;
  background-color: #fff;
  cursor: default;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.col-md-3 .newsSlideShow-thumbnails {
  font-size: .5em;
}

@media only screen and (max-width: 450px) {
  .newsSlideShow-thumbnails {
    font-size: .5em;
  }
}

.newsSlideShow-thumbnails li {
  display: inline-block;
}

.newsSlideShow-thumbnails a {
  display: block;
  padding: 4px;
}

.col-md-3 .newsSlideShow-thumbnails a {
  padding: 6px;
}

@media only screen and (max-width: 450px) {
  .newsSlideShow-thumbnails a {
    padding: 6px;
  }
}

.newsSlideShow-thumbnails a:before {
  content: '';
  display: block;
  width: .75em;
  height: .75em;
  border-radius: 100%;
  background-color: #0054A6;
  -webkit-transition: -webkit-transform .1s ease-in-out, background-color .1s ease-in-out;
  transition: transform .1s ease-in-out, background-color .1s ease-in-out;
}

.newsSlideShow-thumbnails a:hover:before, .newsSlideShow-thumbnails a.current:before {
  background-color: #0DB14C;
  -webkit-transform: scale(1.375, 1.375);
  transform: scale(1.375, 1.375);
}

.newsSlideShow-thumbnails img {
  display: none;
  width: 100%;
}

.newsSlideShow-prev.pill-small-left,
.newsSlideShow-next.pill-small-right {
  position: absolute;
  z-index: 10;
  bottom: 0;
  overflow: hidden;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  background-color: #fff;
  box-shadow: 0 -2px #ddd;
  font-size: 1em;
  text-align: center;
  color: #0054A6;
}

.newsSlideShow-prev.pill-small-left:hover,
.newsSlideShow-next.pill-small-right:hover {
  color: #0DB14C;
  background-color: #fff;
}

.newsSlideShow-prev.pill-small-left:hover:before,
.newsSlideShow-next.pill-small-right:hover:before {
  -webkit-transform: scale(1.375);
  transform: scale(1.375);
}

.newsSlideShow-prev.pill-small-left:before,
.newsSlideShow-next.pill-small-right:before {
  line-height: 2.5;
  content: '\f060';
  display: block;
  color: inherit;
  font-family: 'fontawesome';
  -webkit-transition: -webkit-transform .1s ease-in-out, color .1s ease-in-out;
  transition: transform .1s ease-in-out, color .1s ease-in-out;
}

.newsSlideShow-prev.pill-small-left {
  left: 0;
}

.newsSlideShow-next.pill-small-right {
  right: 0;
}

.newsSlideShow-next.pill-small-right:before {
  content: '\f061';
}

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

.newsSlideShow-empty > p {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin: 0;
}

.newsSlideShow-more.button-small {
  display: block;
  position: relative;
  background-color: #0054A6;
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
  text-indent: -20px;
  text-align: center;
  border: 0;
  -webkit-transition: background-color 0.2s ease-in;
  transition: background-color 0.2s ease-in;
}

.newsSlideShow-more.button-small:after {
  content: "\f061";
  font-family: FontAwesome;
  font-size: 14px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: 56px;
  color: #0DB14C;
  -webkit-transition: color 0.2s ease-in;
  transition: color 0.2s ease-in;
}

.newsSlideShow-more.button-small:hover {
  background-color: #002d5a;
  border: 0;
}

.newsSlideShow-more.button-small:hover:after {
  color: #fff;
}

.newsSlideShow-stop,
.newsSlideShow-play {
  display: none !important;
}

.aspect_ratio_original,
.aspect_ratio_1_1,
.aspect_ratio_4_3,
.aspect_ratio_16_9,
.aspect_ratio_2_1,
.aspect_ratio_3_1,
.aspect_ratio_4_1,
.aspect_ratio_8_5 {
  height: initial !important;
}

.aspect_ratio_original:before {
  content: '';
  float: left;
  padding-bottom: 56.25%;
}

.aspect_ratio_original:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_1_1:before {
  content: '';
  float: left;
  padding-bottom: 100%;
}

.aspect_ratio_1_1:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_4_3:before {
  content: '';
  float: left;
  padding-bottom: 75%;
}

.aspect_ratio_4_3:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_16_9:before {
  content: '';
  float: left;
  padding-bottom: 56.25%;
}

.aspect_ratio_16_9:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_2_1:before {
  content: '';
  float: left;
  padding-bottom: 50%;
}

.aspect_ratio_2_1:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_3_1:before {
  content: '';
  float: left;
  padding-bottom: 33.33333%;
}

.aspect_ratio_3_1:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_4_1:before {
  content: '';
  float: left;
  padding-bottom: 25%;
}

.aspect_ratio_4_1:after {
  content: '';
  display: table;
  clear: both;
}

.aspect_ratio_8_5:before {
  content: '';
  float: left;
  padding-bottom: 62.5%;
}

.aspect_ratio_8_5:after {
  content: '';
  display: table;
  clear: both;
}

@media only screen and (min-width: 767px) {
  .col-md-3 .newsSlideShow-headline h1 a,
  .col-md-4 .newsSlideShow-headline h1 a {
    font-size: 18px;
  }
  .col-md-3 .newsSlideShow-headline p,
  .col-md-4 .newsSlideShow-headline p {
    display: none;
  }
  .col-md-3 .aspect_ratio_4_1 .newsSlideShow-headline,
  .col-md-3 .aspect_ratio_3_1 .newsSlideShow-headline,
  .col-md-3 .aspect_ratio_2_1 .newsSlideShow-headline,
  .col-md-4 .aspect_ratio_4_1 .newsSlideShow-headline,
  .col-md-4 .aspect_ratio_3_1 .newsSlideShow-headline,
  .col-md-4 .aspect_ratio_2_1 .newsSlideShow-headline,
  .col-md-6 .aspect_ratio_4_1 .newsSlideShow-headline,
  .col-md-6 .aspect_ratio_3_1 .newsSlideShow-headline,
  .col-md-6 .aspect_ratio_2_1 .newsSlideShow-headline,
  .col-md-8 .aspect_ratio_4_1 .newsSlideShow-headline,
  .col-md-8 .aspect_ratio_3_1 .newsSlideShow-headline,
  .col-md-8 .aspect_ratio_2_1 .newsSlideShow-headline {
    padding-bottom: 2em;
  }
}

@media only screen and (max-width: 450px) {
  .aspect_ratio_4_1 .newsSlideShow-headline,
  .aspect_ratio_3_1 .newsSlideShow-headline,
  .aspect_ratio_2_1 .newsSlideShow-headline {
    padding-bottom: 2em;
  }
  .newsSlideShow-headline h1 a {
    font-size: 18px;
  }
  .newsSlideShow-headline p {
    display: none;
  }
}

@media only screen and (max-width: 350px) {
  .newsSlideShow-headline p {
    display: none;
  }
}

/* Weather Element Styles */
.weatherElement {
  padding: 20px 0;
  font-family: "Open Sans", sans-serif;
  color: #666;
  border-top-color: #ddd;
  border-bottom-color: #ddd;
  border-width: 3px 0 3px 0;
  -o-border-image: repeating-linear-gradient(-72deg, #AAA 0px, transparent 1px, transparent 3px, #AAA 4px) 3 3;
     border-image: repeating-linear-gradient(-72deg, #AAA 0px, transparent 1px, transparent 3px, #AAA 4px) 3 3;
  border-image: -webkit-repeating-linear-gradient(162deg, #AAA 0px, transparent 1px, transparent 3px, #AAA 4px) 3 3;
}

.weatherElement.weather-noForecast .weather-currentConditions {
  width: 100%;
  border: none;
}

.weatherElement.weather-noForecast .weather-currentConditions .weather-range {
  display: block;
}

.weatherElement .weather-5dayForecast li {
  width: 100%;
  padding: 0;
  font-size: 18px;
  height: 34px;
}

.weatherElement .weather-5dayForecast li .clearfix {
  width: initial;
  float: right;
  clear: none;
}

.weatherElement .weather-5dayForecast li b {
  float: left;
  display: inline;
  clear: none;
  width: 42px;
  font-size: 16px;
  float: left;
  font-weight: 700;
  line-height: 32px;
}

.weatherElement .weather-5dayForecast li img {
  float: left;
  display: inline;
  clear: none;
  width: 30px;
  float: left;
  margin-left: 0;
  margin-top: 5px;
}

.weatherElement .weather-5dayForecast .weather-high, .weatherElement .weather-5dayForecast .weather-low {
  display: inline;
}

.weatherElement .weather-currentConditions {
  text-align: right;
  background: transparent;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  text-shadow: none;
  padding: 15px;
  border: none;
  width: 55%;
  float: left;
}

.weatherElement .weather-currentConditions .weather-icon {
  float: left;
  margin: 0 0 0 -5px;
  width: 33%;
  max-width: 180px;
}

.weatherElement .weather-currentConditions .weather-icon img {
  display: block;
  margin: 0 auto;
  width: 100%;
  opacity: .7;
}

.weatherElement .weather-currentConditions .weather-temperature {
  font-family: "Montserrat", sans-serif;
  font-size: 52px;
  font-weight: 700;
  color: #666;
  line-height: 1;
  margin: 0;
}

.weatherElement .weather-currentConditions .weather-description {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  color: #666;
}

.weatherElement .weather-currentConditions .weather-range {
  font-size: 32px;
  margin: 0;
}

.weatherElement .weather-currentConditions .weather-location {
  font-size: 12px;
  line-height: 1em;
}

.weatherElement .weather-currentConditions p.weather-range {
  display: none;
}

.weatherElement .weather-currentConditions p.weather-location {
  margin: 0;
  line-height: 1.4;
}

.weather-5dayForecast {
  border: 0;
  clear: none;
  width: 45%;
  margin: 0;
  padding: 5px 15px;
  font-size: 16px;
  float: right;
  border-left: 2px solid #ddd;
}

.weather-5dayForecast ul {
  border-radius: 0;
  font-weight: 400;
  list-style: none;
  margin: 0;
  padding: 0;
}

.weather-5dayForecast .weather-high {
  line-height: 32px;
  margin-right: 10px;
}

.weather-5dayForecast .weather-low {
  line-height: 32px;
}

@media only screen and (min-width: 768px) {
  .col-md-3 .weather-currentConditions,
  .col-md-4 .weather-currentConditions,
  .col-md-6 .weather-currentConditions {
    text-align: left;
    width: 100%;
    border: 0;
  }
  .col-md-3 .weather-currentConditions .weather-temperature,
  .col-md-4 .weather-currentConditions .weather-temperature,
  .col-md-6 .weather-currentConditions .weather-temperature {
    font-size: 42px;
    padding-left: 35%;
  }
  .col-md-3 .weather-currentConditions .weather-description,
  .col-md-3 .weather-currentConditions .weather-range,
  .col-md-3 .weather-currentConditions .weather-location,
  .col-md-4 .weather-currentConditions .weather-description,
  .col-md-4 .weather-currentConditions .weather-range,
  .col-md-4 .weather-currentConditions .weather-location,
  .col-md-6 .weather-currentConditions .weather-description,
  .col-md-6 .weather-currentConditions .weather-range,
  .col-md-6 .weather-currentConditions .weather-location {
    padding-left: 35%;
  }
  .col-md-3 .weather-5dayForecast,
  .col-md-4 .weather-5dayForecast,
  .col-md-6 .weather-5dayForecast {
    width: 100%;
    border-left: none;
  }
  .col-md-3 .weather-currentConditions .weather-icon {
    width: 100%;
  }
  .col-md-3 .weather-currentConditions .weather-temperature {
    font-size: 36px;
    padding-left: 0;
  }
  .col-md-3 .weather-currentConditions .weather-description {
    font-size: 16px;
    padding-left: 0;
  }
  .col-md-3 .weather-currentConditions .weather-location {
    font-size: 10px;
    padding-left: 0;
  }
  .col-md-3 .weather-currentConditions .weather-range {
    padding-left: 0;
  }
  .col-md-3 .weather-5dayForecast {
    width: 100%;
    border-left: none;
  }
}

@media (max-width: 1024px) {
  .col-md-4 .weatherElement .weather-5dayForecast li,
  .col-md-3 .weatherElement .weather-5dayForecast li {
    font-size: 14px;
  }
  .col-md-4 .weatherElement .weather-5dayForecast li b,
  .col-md-3 .weatherElement .weather-5dayForecast li b {
    width: 36px;
  }
  .col-md-4 .weatherElement .weather-5dayForecast li img,
  .col-md-3 .weatherElement .weather-5dayForecast li img {
    display: block;
  }
}

@media (max-width: 1000px) and (min-width: 768px) {
  .layout-25-50-25 .col-md-3 .weather-currentConditions .weather-icon {
    float: none;
  }
}

@media only screen and (max-width: 540px) {
  .weatherElement .weather-currentConditions {
    width: 100%;
    border: 0;
  }
  .weatherElement .weather-5dayForecast {
    width: 100%;
    border-left: none;
  }
}

/* pe_survey_report.css **************************************************************************************************************************************** */
#defaultReport {
  clear: both;
}

.report-container {
  clear: both;
  overflow: auto;
  position: relative;
  border: 1px solid #ccc;
}

.report-scroll {
  border: 1px solid #CCC;
}

.itemVariations .columnName {
  display: inline-block;
  width: 50%;
  padding: 5px 0;
}

.reportTableElement .filtered_survey_actions {
  float: right;
  list-style: none;
  margin-left: 10px;
}

.reportTableElement .filtered_survey_actions .icon {
  color: #666;
  font-size: 14px;
  float: left;
  text-indent2: -999em;
  padding: 0 0 0 20px;
  margin: 3px 6px 0 0;
}

.reportTableElement .report_results_count {
  background: url("https://app-assets1.sportngin.com/app_images/registration/gloss_shadow_light.png") repeat-x 0 center #EEE;
  border: 1px solid #DDD;
  border-bottom: none;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  color: #666;
  font-size: 11px;
  font-style: italic;
  font-weight: normal;
  margin: 0;
  padding: 5px 4px 4px;
}

.reportTableElementHeader, .reportTableElementHeader h3, .reportTableElement .filtered_survey_actions li {
  display: inline;
}

.reportTable {
  margin-bottom: 0;
}

.reportTable tbody tr:last-child td {
  border-bottom: none;
}

.reportTable tbody tr td:first-child {
  border-left: none;
}

.reportTable tbody tr td:last-child {
  border-right: none;
}

/* fullscreen report popup */
.fullscreen-overlay {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  z-index: 99999;
}

.fullscreen-popup {
  background: #FFF;
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 20px;
  left: 20px;
  padding: 20px;
}

.fullscreen-popup .fullscreen-close {
  line-height: 20px;
  position: fixed;
  z-index: 99999;
  top: 20px;
  font-weight: bold;
  right: 20px;
  width: 20px;
  height: 20px;
  display: block;
  cursor: pointer;
  color: #999;
  text-align: center;
}

.fullscreen-popup .fullscreen-close:hover {
  color: #c00;
}

/* Venue Status Page Element */
.venueElement .dataTable .heading .title {
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  width: 100%;
  white-space: normal;
}

.venueElement .dataTable .venue_heading {
  margin-right: 5px;
}

.venueElement .dataTable td {
  text-align: left;
}

.venueElement .dataTable .venue_name {
  font-weight: bold;
}

.venueElement .dataTable .txt_open,
.venueElement .dataTable .txt_closed,
.venueElement .dataTable .txt_pending {
  text-align: center;
}

.venueElement .dataTable .txt_open {
  color: #02A218;
}

.venueElement .dataTable .txt_closed {
  color: #E50000;
}

.venueElement .dataTable .txt_pending {
  color: #929292;
}

.venueElement .dataTable .img_open,
.venueElement .dataTable .img_closed,
.venueElement .dataTable .img_pending {
  display: inline-block;
  height: .6em;
  width: .6em;
  margin-right: .5em;
  border-radius: 100%;
  display: none;
}

.venueElement .dataTable .img_open {
  background-color: #02A218;
}

.venueElement .dataTable .img_closed {
  background-color: #E50000;
}

.venueElement .dataTable .img_pending {
  background-color: #929292;
}

@media (max-width: 480px) {
  .venueElement .dataTable td {
    border-right: none;
    display: block;
    width: 100%;
    height: auto;
  }
  .venueElement .dataTable .venue_name {
    font-weight: bold;
  }
  .venueElement .dataTable .txt_open,
  .venueElement .dataTable .txt_closed,
  .venueElement .dataTable .txt_pending {
    text-align: left;
  }
}

@media (min-width: 768px) {
  .col-md-3 .venueElement .dataTable td,
  .col-md-4 .venueElement .dataTable td {
    border-right: none;
    display: block;
    width: 100%;
    height: auto;
  }
  .col-md-3 .venueElement .dataTable .venue_name,
  .col-md-4 .venueElement .dataTable .venue_name {
    font-weight: bold;
  }
  .col-md-3 .venueElement .dataTable .txt_open,
  .col-md-3 .venueElement .dataTable .txt_closed,
  .col-md-3 .venueElement .dataTable .txt_pending,
  .col-md-4 .venueElement .dataTable .txt_open,
  .col-md-4 .venueElement .dataTable .txt_closed,
  .col-md-4 .venueElement .dataTable .txt_pending {
    text-align: left;
  }
}

@media (min-width: 769px) and (max-width: 999px) {
  .layout-25-50-25 .column .venueElement .dataTable td {
    border-right: none;
    display: block;
    width: 100%;
    height: auto;
  }
  .layout-25-50-25 .column .venueElement .dataTable .venue_name {
    font-weight: bold;
  }
  .layout-25-50-25 .column .venueElement .dataTable .txt_open,
  .layout-25-50-25 .column .venueElement .dataTable .txt_closed,
  .layout-25-50-25 .column .venueElement .dataTable .txt_pending {
    text-align: left;
  }
}

/* Power Rankings Element */
.rankingsElement {
  overflow-x: auto;
  overflow-y: hidden;
}

.rankingsElement > h3 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  margin-left: 2px;
}

.rankingsElement .statTable .expandedView {
  display: table-cell;
}

.rankingsElement .statTable td.name, .rankingsElement .statTable th.name {
  text-align: left;
}

.rankingsElement .statTable th:nth-child(1) {
  width: 5%;
}

.rankingsElement .statTable th.logoLink {
  width: 0%;
}

.rankingsElement .statTable th.name {
  width: 65%;
}

.rankingsElement .statTable th:nth-child(4) {
  width: 10%;
}

.rankingsElement .statTable th:nth-child(5) {
  width: 10%;
}

.rankingsElement .statTable th:nth-child(6) {
  width: 10%;
}

.rankingsElement .statTable td:nth-child(1) {
  font-weight: bold;
}

.rankingsElement .statTable td.name a {
  min-width: 180px;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rankingsElement .statTable td.logoLink {
  padding: 0;
}

.rankingsElement .statTable td.logoLink .teamLogo-large_square {
  position: relative;
  display: inline-block;
  float: none;
  background-size: cover !important;
  width: 30px !important;
  vertical-align: middle;
  background: #fff;
  background-size: 100% auto;
  background-position: 50% 50%;
  margin: 2px 6px;
  border: none;
}

.rankingsElement .logoLink .teamLogo-medium {
  float: none;
  margin: 0 auto;
}

.rankingsElement .up,
.rankingsElement .down,
.rankingsElement .noChange {
  position: relative;
  display: block;
  margin: 0 auto;
  width: 20px;
  height: 20px;
  line-height: 20px;
  background: transparent;
  text-align: center;
}

.rankingsElement .up:after,
.rankingsElement .down:after,
.rankingsElement .noChange:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  font-family: FontAwesome;
  font-size: 14px;
}

.rankingsElement .up:after {
  content: "\f062";
  color: #2ac258;
}

.rankingsElement .down:after {
  content: "\f063";
  color: #c22a2a;
}

.rankingsElement .noChange:after {
  content: "\f07e";
  color: #666;
}

/* Single Image Element */
.heroPhotoElement img {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.heroPhotoElement .cutline {
  margin: 0;
  width: 100%;
}

/* Survey Link Element */
.pageElement.surveyLinkElement {
  background: transparent;
  background-image: none;
  text-align: center;
}

.pageElement.surveyLinkElement a {
  display: block;
  width: 100%;
  padding: 10px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  background: #0054A6;
  border-bottom: 3px solid #002040;
  margin-bottom: 5px;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  -webkit-transition: background 0.2s ease-in;
          transition: background 0.2s ease-in;
}

.pageElement.surveyLinkElement a:hover {
  background: #002040;
}

.pageElement.surveyLinkElement a span {
  display: inline-block;
  color: #fff;
  text-decoration: none;
}

.pageElement.surveyLinkElement a span:after {
  content: "\f061";
  display: inline-block;
  margin-left: 6px;
  height: 1rem;
  line-height: 1rem;
  font-size: 13px;
  font-family: FontAwesome;
  color: #0DB14C;
  cursor: pointer;
  -webkit-transform: translate(0, -1px);
          transform: translate(0, -1px);
  -webkit-transition: color 0.2s ease-in;
          transition: color 0.2s ease-in;
}

.pageElement.surveyLinkElement a small {
  font-size: 16px;
  font-weight: 300;
}

.pageElement.surveyLinkElement a:hover > span:after {
  color: #fff;
}

/* Call to Action Element */
.sn-call-to-action,
.sn-call-to-action * {
  box-sizing: border-box;
}

.sn-call-to-action {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  padding: 0;
}

.sn-call-to-action:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 5px;
  background: #0DB14C;
  border-bottom: 2px solid #fff;
  z-index: 10;
}

.sn-call-to-action:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 3px;
  border-top: 2px solid #fff;
  z-index: 10;
  background: -webkit-repeating-linear-gradient(162deg, #aaa 0px, #fff 1px, #fff 3px, #aaa 4px);
  background: repeating-linear-gradient(-72deg, #aaa 0px, #fff 1px, #fff 3px, #aaa 4px);
}

.sn-call-to-action img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

.sn-call-to-action .sn-call-to-action-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  padding: 20px;
  z-index: 1;
  text-align: center;
}

.sn-call-to-action .sn-call-to-action-overlay-inner {
  display: table;
  width: 100%;
  height: 100%;
}

.sn-call-to-action .sn-call-to-action-overlay-text {
  display: table-cell;
  font-size: 10px;
  height: 100%;
  line-height: 1;
  vertical-align: middle;
}

.sn-call-to-action .sn-call-to-action-title {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 0.3em;
  text-transform: uppercase;
}

.sn-call-to-action .sn-call-to-action-subtitle {
  color: #fff;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 130%;
  margin-bottom: 0;
}

.sn-call-to-action .sn-call-to-action-subtitle a,
.sn-call-to-action .sn-call-to-action-subtitle span {
  margin: 0 .25em;
  color: #fff;
  display: inline-block;
}

.sn-call-to-action .sn-call-to-action-subtitle:first-of-type > * {
  padding-top: 5px;
}

/* Slide Up */
.sn-call-to-action.sn-variation-slide-up .sn-call-to-action-overlay {
  background: rgba(0, 84, 166, 0.7);
  top: auto;
  height: 0;
  -webkit-transition: height 0.5s ease;
          transition: height 0.5s ease;
}

.sn-call-to-action.sn-variation-slide-up .sn-call-to-action-title {
  margin-bottom: 20px;
}

.sn-call-to-action.sn-variation-slide-up .sn-call-to-action-subtitle {
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease;
}

.sn-call-to-action.sn-variation-slide-up:hover .sn-call-to-action-overlay {
  height: 100%;
}

.sn-call-to-action.sn-variation-slide-up:hover .sn-call-to-action-subtitle {
  opacity: 1;
}

/* Zoom */
.sn-call-to-action.sn-variation-zoom img {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.5s ease, -webkit-transform 0.5s ease;
          transition: -webkit-transform 0.5s ease, transform 0.5s ease;
}

.sn-call-to-action.sn-variation-zoom:hover img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

/* Text Zoom */
.sn-call-to-action.sn-variation-text-zoom .sn-call-to-action-overlay-text {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.5s ease, -webkit-transform 0.5s ease;
          transition: -webkit-transform 0.5s ease, transform 0.5s ease;
}

.sn-call-to-action.sn-variation-text-zoom:hover .sn-call-to-action-overlay-text {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Border */
.sn-call-to-action.sn-variation-border .sn-call-to-action-overlay {
  box-shadow: inset 0 0 0 0 transparent, inset 0 0 0 0 transparent;
  -webkit-transition: box-shadow 0.5s ease-in;
          transition: box-shadow 0.5s ease-in;
}

.sn-call-to-action.sn-variation-border:hover .sn-call-to-action-overlay {
  box-shadow: inset 0 7px 0 10px rgba(0, 84, 166, 0.7), inset 0 -5px 0 10px rgba(0, 84, 166, 0.7);
}

/* mirrored CTA preview img alignment fixes */
.pe25 .elementPreview img,
.pe33 .elementPreview img {
  width: 100%;
  margin: 0px;
}

.sn-call-to-action.sn-variation-tall-text img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: initial;
  min-width: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.sn-call-to-action.sn-variation-zoom.sn-variation-tall-text:hover img {
  transform: scale(1.2) translate(-40%, -40%);
  -webkit-transform: scale(1.2) translate(-40%, -40%);
}

/* paragraph spacing */
.pe25 .sn-call-to-action-overlay-text p {
  margin-bottom: .15em;
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
  .col-md-4 .sn-call-to-action .sn-call-to-action-title, .col-md-3 .sn-call-to-action .sn-call-to-action-title {
    font-size: 20px;
  }
  .col-md-4 .sn-call-to-action .sn-call-to-action-subtitle, .col-md-3 .sn-call-to-action .sn-call-to-action-subtitle {
    font-size: 14px;
  }
}

@media only screen and (max-width: 350px) {
  .sn-call-to-action .sn-call-to-action-title {
    font-size: 20px;
  }
  .sn-call-to-action .sn-call-to-action-subtitle {
    font-size: 14px;
  }
}

.touch-screen .sn-call-to-action.sn-variation-slide-up .sn-call-to-action-overlay,
.touch-screen .sn-call-to-action.sn-variation-slide-up:focus .sn-call-to-action-overlay,
.touch-screen .sn-call-to-action.sn-variation-slide-up:hover .sn-call-to-action-overlay {
  height: 100%;
  -webkit-transition: none;
          transition: none;
}

.touch-screen .sn-call-to-action.sn-variation-slide-up .sn-call-to-action-subtitle,
.touch-screen .sn-call-to-action.sn-variation-slide-up:focus .sn-call-to-action-subtitle,
.touch-screen .sn-call-to-action.sn-variation-slide-up:hover .sn-call-to-action-subtitle {
  opacity: 1;
  -webkit-transition: none;
          transition: none;
}

.touch-screen .sn-call-to-action.sn-variation-border .sn-call-to-action-overlay,
.touch-screen .sn-call-to-action.sn-variation-border:focus .sn-call-to-action-overlay,
.touch-screen .sn-call-to-action.sn-variation-border:hover .sn-call-to-action-overlay {
  -webkit-transition: none;
          transition: none;
  box-shadow: inset 0 7px 0 10px rgba(0, 84, 166, 0.7), inset 0 -5px 0 10px rgba(0, 84, 166, 0.7);
}

.touch-screen .sn-call-to-action.sn-variation-text-zoom .sn-call-to-action-overlay-text,
.touch-screen .sn-call-to-action.sn-variation-text-zoom:focus .sn-call-to-action-overlay-text,
.touch-screen .sn-call-to-action.sn-variation-text-zoom:hover .sn-call-to-action-overlay-text {
  -webkit-transition: none;
          transition: none;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.pageEl .textBlockElement table {
  border-style: solid;
  border-color: #999;
}

.pageEl .textBlockElement table caption {
  text-align: center;
  font-size: 14px;
  padding: 5px;
  font-weight: bold;
}

.pageEl .textBlockElement table td, .pageEl .textBlockElement table th {
  padding: 2px 12px;
}

.pageEl .textBlockElement table:not([border]) {
  border-style: none;
  border-spacing: 2px;
  border-collapse: separate;
}

.pageEl .textBlockElement table:not([border]) th {
  height: 30px;
  padding: 15px 12px;
  background: #E1E8ED;
  white-space: nowrap;
  border: none;
  color: #333333;
  line-height: 1.1;
  font: 600 12px/1.2 "Montserrat", sans-serif;
}

.pageEl .textBlockElement table:not([border]) td {
  font-size: 12px;
  padding: 2px 12px;
  height: 30px;
  background: #eee;
}

.pageEl .textBlockElement table[align="center"] {
  margin-left: auto;
  margin-right: auto;
}

.pageEl .textBlockElement blockquote {
  font-family: "Open Sans", sans-serif;
  font-style: italic;
  font-weight: 400;
  font-size: 1.5em;
  padding: 15px 1em;
  float: none;
  width: 75%;
  margin: auto;
  border-top: solid 2px #0DB14C;
  border-bottom: solid 2px #0DB14C;
}

.pageEl .textBlockElement .leftTextImage br,
.pageEl .textBlockElement .rightTextImage br {
  display: none;
}

.pageEl .textBlockElement p img {
  height: auto !important;
  max-width: 100%;
}

.pageEl .textBlockElement .text > ol, .pageEl .textBlockElement .text > ul {
  list-style-position: inside;
  margin-left: 0;
}

/* Code Element */
.codeElement object,
.codeElement embed,
.codeElement iframe {
  max-width: 100%;
}

.codeElement code {
  color: inherit;
  background-color: inherit;
}

.displayCodeElement pre {
  padding: 10px;
  border: solid 1px #333;
  background: #666;
  color: #fff;
}

.pageElementAdmin .codeElement pre {
  padding: 10px;
  border: solid 1px #333;
  background: #666;
  color: #fff;
}

.pageElementAdmin .codeElement .codeErrorMessage {
  margin: 5px 0 0;
  padding: 5px 10px;
  background-color: #c51515;
  font-weight: 600;
  font-size: 0.875em;
  color: #fff;
}

.pageElementAdmin .codeElement.codeError {
  background-color: #fdd9d9;
  border: 1px solid #c51515;
  padding: 10px;
  color: #333;
}

/* serious displaiy issues in chrome 15 Windows when combined with 3d transforms */
#GameShowScoreboard,
#FOP,
.fopPopUp {
  text-rendering: optimizespeed;
}

.sportTableLabel .teamLogo {
  float: left;
  margin-right: 5px;
}

.sportTableLabel .teamName,
.sportTableLabel h4.teamName {
  padding: 0;
}

.widgetHierarchy {
  overflow-x: auto;
  overflow-y: hidden;
}

.widgetHierarchy > ul li li .seasonDisplay {
  display: none;
}

.widgetHierarchy ul {
  list-style-type: none;
}

.widgetHierarchy .lastLi {
  margin-bottom: 0;
}

.gameXtras {
  display: block;
  list-style-type: none;
  font-size: 10px;
}

.gameXtras li {
  border-top: 1px solid #D5D5D5;
  padding: 2px 0;
}

.gameXtras label {
  font-weight: bold;
  margin-right: 5px;
}

.status_in_progress {
  font-style: italic;
  color: #5e8d0f;
}

.boxscore .status_in_progress {
  color: #a1e32f;
}

#TeamStatsDiv .stat-category-header,
#PlayerStatsDiv .stat-category-header,
#TeamInstanceStatsDiv .stat-category-header {
  margin: 20px 0;
  color: #0054A6;
  font: bold 38px/1.25 "Montserrat", sans-serif;
  text-transform: initial;
}

#TeamStatsDiv *[id^="team-sm"],
#PlayerStatsDiv *[id^="player-sm"],
#TeamInstanceStatsDiv *[id^="team-sm"],
#TeamInstanceStatsDiv *[id^="player-sm"] #TeamInstanceStatsDiv *[id^="division-team-sm"] {
  margin-bottom: 15px;
}

#TeamStatsDiv *[id^="team-sm"]:last-child,
#PlayerStatsDiv *[id^="player-sm"]:last-child,
#TeamInstanceStatsDiv *[id^="team-sm"]:last-child,
#TeamInstanceStatsDiv *[id^="player-sm"] #TeamInstanceStatsDiv *[id^="division-team-sm"]:last-child {
  margin-bottom: 0;
}

#TeamStatsDiv *[id^="team-sm"] h3,
#PlayerStatsDiv *[id^="player-sm"] h3,
#TeamInstanceStatsDiv *[id^="team-sm"] h3,
#TeamInstanceStatsDiv *[id^="player-sm"] #TeamInstanceStatsDiv *[id^="division-team-sm"] h3 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

#pageContentContainer h3.stat-category-header {
  border-top: solid 1px #999;
  background: #666;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #666), color-stop(100%, #333));
  background: -webkit-linear-gradient(top, #666 0%, #333 100%);
  background: linear-gradient(top, #666 0%, #333 100%);
  -moz-border-radius-topleft: 4px;
  -moz-border-radius-topright: 4px;
  -moz-border-radius-bottomright: 0px;
  -moz-border-radius-bottomleft: 0px;
  border-radius: 4px 4px 0px 0px;
  color: #fff;
  height: 2em;
  line-height: 2em;
  margin-bottom: .5em;
  text-indent: 10px;
}

h3.stat-category-header .stat-category-nav {
  position: absolute;
  right: 0;
  font-size: 11px;
  color: #0054A6;
}

#tab_completegamelist_content .pageElement {
  overflow: auto;
}

/* filter styles */
.tag-filterForm {
  display: block;
  width: 100%;
  padding: 20px 8px;
}

.tag-filterForm label {
  float: left;
  margin-right: 8px;
}

.tag-filterForm label select {
  margin-right: 4px;
}

.tag-filterForm .inputChoice {
  float: left;
  margin: 0 5px 0 0;
  padding: 6px 0 0 0;
}

.tag-filterForm .inputChoice label {
  margin-right: 4px;
  padding: 2px 2px 0 0;
  font-size: .75em;
}

.tag-filterForm .tag-filterWrap {
  display: inline-block;
  padding: 2px 12px 8px 0;
  height: 30px;
}

.tag-filterForm .tag-filterWrap.button {
  transform: translate(0, -10px);
  -webkit-transform: translate(0, -10px);
}

.col-md-3 .tag-filterForm .tag-filterWrap.button,
.col-md-4 .tag-filterForm .tag-filterWrap.button {
  margin-top: 10px;
}

#PreviewStatsDiv .next_game {
  background-color: #333;
  color: #FFF;
  overflow: hidden;
  padding: 10px;
  background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0) 51%, transparent 95%, rgba(0, 0, 0, 0.2) 100%);
  background-image: linear-gradient(rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0) 51%, transparent 95%, rgba(0, 0, 0, 0.2) 100%);
  border-radius: 10px 10px 0 0 / 100% 100% 0 0;
  border-bottom: 1px solid #444;
}

#RosterPlayerStats {
  position: relative;
}

#RosterPlayerStats .next_game_splits {
  border-bottom: 10px solid #333;
  margin-top: 0;
  padding: 0;
}

#RosterPlayerStats .next_game_splits .NginTableControls {
  background-color: #333;
  color: #FFF;
}

#RosterPlayerStats .next_game .info {
  padding-top: 6px;
  text-align: center;
  line-height: 16px;
  width: 20%;
  float: left;
}

#RosterPlayerStats .next_game .header {
  display: block;
  font-size: 18px;
  margin-bottom: 2px;
}

#RosterPlayerStats .next_game .vs_or_at {
  font-size: 30px;
  display: block;
  margin-bottom: 20px;
}

#RosterPlayerStats .next_game .time {
  display: block;
  font-size: 10px;
  color: #999;
}

#RosterPlayerStats .next_game .team {
  float: left;
  width: 32%;
  background: #555;
  padding: 2%;
}

#RosterPlayerStats .next_game .away_team {
  padding-right: 6%;
  text-align: left;
  border-radius: 7px 30% 30% 0 / 100% 100% 0 0;
  box-shadow: inset -10px 2px 20px rgba(0, 0, 0, 0.4), 0 0 1px 1px rgba(255, 255, 255, 0.2);
}

#RosterPlayerStats .next_game .home_team {
  float: right;
  padding-left: 6%;
  text-align: right;
  border-radius: 30% 7px 0 30% / 100% 100% 0 0;
  box-shadow: inset 10px 2px 20px rgba(0, 0, 0, 0.4), 0 0 1px 1px rgba(255, 255, 255, 0.2);
}

#RosterPlayerStats .team_logo {
  display: inline-block;
}

#RosterPlayerStats .team_name {
  font-size: 18px;
  line-height: 20px;
  height: 20px;
  margin: 4px 0 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#RosterPlayerStats .stat-category-header {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  margin-top: 15px;
}

#RosterPlayerStats .statTable {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
}

#RosterPlayerStats .statTable .last td {
  font-weight: bold;
  background-color: transparent;
}

#RosterPlayerStats .goToLink {
  color: #0DB14C;
  font-size: 13px;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 15px;
  padding-left: 0;
  color: #0054A6;
}

#RosterPlayerStats .goToLink:after {
  color: #0054A6;
  content: '\f061';
  display: inline-block;
  font-family: 'FontAwesome';
  margin: -.1em 0 0 .4em;
  font-size: .9em;
}

#RosterPlayerStats .goToLink:before {
  display: none;
}

#RosterPlayerStats td.date,
#RosterPlayerStats td.name,
#RosterPlayerStats td.score,
#RosterPlayerStats td.split {
  white-space: nowrap;
}

#RosterPlayerStats td:first-child,
#RosterPlayerStats th:first-child {
  text-align: left;
  padding-left: 10px;
}

#RosterPlayerStats tr[data-toggles] td:first-child {
  padding-left: 1.8em;
}

#RosterPlayerStats tr.totals td {
  background-color: #555;
  color: #FFF;
}

#RosterPlayerStats tr.season td {
  background-color: #DDD;
  border-top: 1px solid #BBB;
}

#RosterPlayerStats tr.subseason td {
  background-color: #F7F7F7;
}

#RosterPlayerStats tr.game_log + tr.subseason td {
  border-top: 1px solid #CCC;
}

#RosterPlayerStats tr.subseason_totals {
  background: #C1C1C1;
}

#RosterPlayerStats tr.subseason td {
  color: #676767;
  font-weight: bold;
}

#GameLogDiv .result {
  width: 7%;
  min-width: 50px;
}

#GameLogDiv .opponent {
  width: 20%;
}

#CareerStatsDiv .statTable td.description {
  text-align: left;
}

#CareerStatsDiv .statTable tr.season td.date {
  padding-left: 20px;
}

#RosterPlayerStats .inactive_notice {
  color: white;
  background-color: #9f171d;
  padding: 10px 0 10px 10px;
  margin-bottom: 15px;
  width: 99%;
}

#RosterPlayerStats .inactive_notice strong {
  text-transform: uppercase;
}

i.designation {
  background-image: url(/app_images/roster_player_designations.gif);
  display: inline-block;
}

i.designation.uncommitted {
  background-position: 0px 0px;
  width: 10px;
  height: 10px;
}

i.designation.suspended {
  background-position: -15px 0px;
  width: 10px;
  height: 10px;
}

i.designation.rookie {
  background-position: -30px 0px;
  width: 10px;
  height: 10px;
}

i.designation.pmj {
  background-position: -45px 0px;
  width: 26px;
  height: 10px;
}

i.designation.injured {
  background-position: -76px 0px;
  width: 10px;
  height: 10px;
}

i.designation.import {
  background-position: -91px 0px;
  width: 18px;
  height: 10px;
}

i.designation.committed {
  background-position: -114px 0px;
  width: 10px;
  height: 10px;
}

i.designation.affiliate {
  background-position: -129px 0px;
  width: 10px;
  height: 10px;
}

.rosterTableOverflow {
  overflow-x: auto;
  overflow-y: visible;
}

.rosterListingTable .photo {
  width: 3%;
}

.rosterListingTable .photo img {
  border-radius: 100%;
  border: 3px solid #ddd;
  display: block;
  height: 50px;
  width: 50px;
  margin: 0 auto;
}

.rosterListingTable .number {
  width: 3%;
}

.rosterListingTable tbody td.name {
  text-align: center;
  width: 20%;
}

.rosterListingTable tbody td {
  width: 10%;
}

/* Game Center */
.logo-gradient {
  position: absolute;
  height: 90px;
  width: 100px;
}

.winners-notch {
  background: url("https://app-assets1.sportngin.com/app_images/game_center/winnersNotch.png");
  bottom: 0;
  height: 8px;
  left: 50%;
  margin: 0 0 0 -8px;
  position: absolute;
  width: 16px;
}

/* Game List */
.gameListTeam {
  height: 20px;
  line-height: 21px;
  clear: both;
  margin-bottom: 5px;
  overflow: hidden;
}

.gameListTeam .score {
  float: left;
  font-weight: bold;
  margin-right: 5px;
  padding-left: 10px;
  text-align: right;
  min-width: 6%;
}

GameLiveVideo {
  width: 100%;
  text-align: center;
}

/* In Progress Highlights */
tr.in_progress .game_status {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_center/inprogressBG.png");
  /* FF3.6+ */
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(65, 138, 0, 0)), color-stop(100%, rgba(65, 138, 0, 0.5)));
  /* Chrome,Safari4+ */
  background-image: -webkit-linear-gradient(left, rgba(65, 138, 0, 0) 0%, rgba(65, 138, 0, 0.5) 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  /* IE10+ */
  background-image: linear-gradient(left, rgba(65, 138, 0, 0) 0%, rgba(65, 138, 0, 0.5) 100%);
  /* W3C */
  background-position: right 50%;
  background-repeat: repeat-y;
}

tr.in_progress .game_status img,
.boxscore-extras.in_progress p.details a img {
  box-shadow: 0px 0px 5px 1px rgba(255, 255, 255, 0.65);
}

/* SPORT NGIN LIVE LINKS */
p.watchLive-live, p.watchLive-recap {
  display: block;
  height: 38px;
  margin: 15px 20px 15px 15px;
  text-decoration: none;
}

p.watchLive-live a, p.watchLive-recap a {
  display: block;
  float: right;
  height: 38px;
  margin: 0 -5px 0 0;
  text-indent: -999999px;
  width: 100%;
}

p.watchLive-live {
  background: url("https://app-assets1.sportngin.com/app_images/live/watchLive-live.png") 0 0;
}

p.watchLive-live a {
  background: url("https://app-assets1.sportngin.com/app_images/live/watchLive-live.png") 100% -38px;
}

p.watchLive-recap {
  background: url("https://app-assets1.sportngin.com/app_images/live/watchLive-recap.png") 0 0;
}

p.watchLive-recap a {
  background: url("https://app-assets1.sportngin.com/app_images/live/watchLive-recap.png") 100% -38px;
}

p.watchLive-live:hover, p.watchLive-recap:hover {
  background-position: 0   -76px;
}

p.watchLive-live:hover a, p.watchLive-recap:hover a {
  background-position: 100% -114px;
}

p.watchLive-live:active, p.watchLive-recap:active {
  background-position: 0  -152px;
}

p.watchLive-live:active a, p.watchLive-recap:active a {
  background-position: 100% -190px;
}

.boxscore-extras p.watchLive-link {
  float: right;
  margin-top: -2px;
}

.boxscore-extras p.watchLive-link a {
  padding: 8px 5px 2px;
}

.theme-game-list-widget .statTable.sn-table-game-list th, .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-score):not(.home-team-score) {
  text-align: left;
}

.theme-game-list-widget .statTable.sn-table-game-list .date-time,
.theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number {
  font-size: 11px;
  text-transform: uppercase;
}

.theme-game-list-widget .statTable.sn-table-game-list .time {
  text-transform: lowercase;
}

.theme-game-list-widget .statTable.sn-table-game-list .team-logo {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: -11px 5px -9px 0;
  vertical-align: middle;
}

.theme-game-list-widget .statTable.sn-table-game-list .status a {
  color: #0DB14C;
  font-size: 13px;
  text-transform: uppercase;
  font-size: 11px;
  position: relative;
  display: block;
  padding-right: 1em;
}

.theme-game-list-widget .statTable.sn-table-game-list .status a:after {
  color: #0054A6;
  content: '\f061';
  display: inline-block;
  font-family: 'FontAwesome';
  margin: -.1em 0 0 .4em;
  font-size: .9em;
}

.theme-game-list-widget .statTable.sn-table-game-list .status a:after {
  position: absolute;
  right: 0;
}

@media only screen and (min-width: 1000px) {
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list {
    table-layout: fixed;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list td {
    word-wrap: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
    width: 4em;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .date-time-header {
    width: 14.5em;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number-header {
    width: 6em;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .status-header {
    width: 10em;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number {
    white-space: normal;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > * {
    height: 1.5em;
    display: inline-block;
    vertical-align: middle;
    word-wrap: normal;
    overflow: hidden;
    text-align: right;
    text-overflow: clip;
    direction: rtl;
    max-width: 100%;
  }
  .layout-100 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:after {
    content: "…";
    position: relative;
    top: -1.75em;
    display: inline-block;
    background: #EEE;
    width: 1em;
    height: 1.7em;
    line-height: 2;
    left: -100%;
    margin-right: -.99em;
    margin-top: -.5em;
    margin-bottom: -.5em;
    vertical-align: middle;
  }
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list {
  display: block;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list thead,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list thead,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list thead,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list thead {
  display: none;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list tbody,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list tbody,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list tbody,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list tbody {
  display: block;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list td,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list td,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list td,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list td {
  display: inline-block;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list tr,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list tr,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list tr,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list tr {
  font-size: 11px;
  position: relative;
  overflow: hidden;
  display: block;
  padding-top: 72px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 6px;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list tr:not(:last-child),
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list tr:not(:last-child),
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list tr:not(:last-child),
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list tr:not(:last-child) {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
  margin-bottom: 10px;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score),
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score),
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score),
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score) {
  padding: 0;
  background: none;
  height: auto;
  font-size: 11px;
  text-transform: uppercase;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score):not(.status),
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score):not(.status),
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score):not(.status),
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score):not(.status) {
  margin-right: 6px;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .away-team-name,
.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .away-team-name,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .away-team-name,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .away-team-name,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
  position: absolute;
  top: 2px;
  left: 0;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 30px;
  width: calc(100% - 4em - 2px);
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
  top: 34px;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
  width: 4em;
  left: auto;
  right: 0;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:before,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:before,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:before,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:before {
  content: "Game ID: ";
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .status,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .status,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .status,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .status {
  float: right;
  margin-top: 1px;
}

.col-md-3 .theme-game-list-widget .statTable.sn-table-game-list .status a,
.col-md-4 .theme-game-list-widget .statTable.sn-table-game-list .status a,
.col-md-6 .theme-game-list-widget .statTable.sn-table-game-list .status a,
.col-md-8 .theme-game-list-widget .statTable.sn-table-game-list .status a {
  font-size: 11px;
}

@media only screen and (max-width: 999px) {
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list thead {
    display: none;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list tbody {
    display: block;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list td {
    display: inline-block;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list tr {
    font-size: 11px;
    position: relative;
    overflow: hidden;
    display: block;
    padding-top: 72px;
    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 6px;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list tr:not(:last-child) {
    border-style: solid;
    border-width: 0;
    border-bottom-color: #ddd;
    border-bottom-width: 1px !important;
    margin-bottom: 10px;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score) {
    padding: 0;
    background: none;
    height: auto;
    font-size: 11px;
    text-transform: uppercase;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list td:not(.away-team-name):not(.home-team-name):not(.away-team-score):not(.home-team-score):not(.status) {
    margin-right: 6px;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .away-team-name,
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
    position: absolute;
    top: 2px;
    left: 0;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 30px;
    width: calc(100% - 4em - 2px);
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .home-team-name,
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
    top: 34px;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .away-team-score,
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .home-team-score {
    width: 4em;
    left: auto;
    right: 0;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .game-id-game-number > *:before {
    content: "Game ID: ";
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .status {
    float: right;
    margin-top: 1px;
  }
  .col-md-12 .theme-game-list-widget .statTable.sn-table-game-list .status a {
    font-size: 11px;
  }
}

.gameListElement .sn-table-game-list {
  white-space: nowrap;
}

.gameListElement .sn-table-game-list .status a {
  padding-right: 0;
}

.gameListElement .sn-table-game-list .status a:after {
  content: '';
}

.gameListElement .sn-table-game-list .away-team-score > div,
.gameListElement .sn-table-game-list .home-team-score > div {
  min-width: 3em;
}

.gameListElement .sn-table-game-list .away-team-name > div,
.gameListElement .sn-table-game-list .home-team-name > div {
  min-width: 14em;
}

.gameListElement .sn-table-game-list .venue-subvenue > div {
  min-width: 12em;
}

.gameListElement .sn-table-game-list .game-id-game-number > div {
  min-width: 4em;
}

.gameListElement .sn-table-game-list .status > div {
  min-width: 6em;
}

#GameShowScoreboardSimple {
  margin-bottom: 15px;
}

#GameShowScoreboardSimple .game-header {
  margin-bottom: 15px;
}

/* Sport Header
-------------------------------------------------------------------- */
#sport-header {
  float: left;
  display: block;
  width: 100%;
}

#sport-header .teamLogo {
  left: 15px;
  height: 40px;
  width: 120px;
}

#sport-header #snm_advert {
  display: inline-block;
  text-decoration: none;
  padding: 10px;
  background: transparent;
  position: absolute;
  z-index: 1;
  opacity: 0.8;
  -webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
}

#sport-header #snm_advert:before {
  width: 30px;
  height: 25px;
  position: absolute;
  display: block;
  font: normal 14px/1em "Montserrat", sans-serif;
  font-size: 1.75em;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  background: url("https://app-assets1.sportngin.com/app_images/marketing/mobilePhone.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

#sport-header #snm_advert:hover {
  opacity: 1;
}

#sport-header #snm_advert span,
#sport-header #snm_advert strong {
  color: #444;
  font-size: 9px;
  text-align: left;
  display: block;
  line-height: 13px;
  display: block;
  padding-left: 33px;
}

/* Leagues and Levels Breadcrumbs
-------------------------------------------------------------------- */
#sport-crumbs {
  background: #fff;
  position: relative;
  float: left;
  display: block;
  width: 100%;
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 3px !important;
}

#sport-crumbs.no-crumbs {
  -o-border-image: none;
     border-image: none;
}

#sport-crumbs .sport-crumbs-btns {
  display: block;
  float: left;
  overflow-x: scroll;
  overflow-y: hidden;
  -ms-overflow-style: none;
  width: 100%;
  min-height: 46px;
}

#sport-crumbs .sport-crumbs-btns::-webkit-scrollbar {
  display: none;
}

#sport-crumbs ul {
  display: inline-block;
  float: left;
}

#sport-crumbs ul li {
  float: left;
  list-style: none;
}

#sport-crumbs ul li a {
  padding: 0px;
}

#sport-crumbs ul li a:before {
  content: "\f054";
  color: #ccc;
  display: inline-block;
  font: normal 10px/1em FontAwesome;
  padding: 2px;
  position: relative;
  margin: 0 0 0 10px;
}

#sport-crumbs ul li:first-child a:before {
  display: none;
}

#sport-crumbs ul li.crumbSelected {
  background: #fff;
  position: relative;
}

#sport-crumbs ul li.crumbSelected a {
  color: #000;
}

#sport-crumbs ul li.crumbSelected .arrow-down:after {
  content: "\f0d8";
  color: #000;
}

#sport-crumbs .sport-crumbs-list ul li a {
  padding: 10px 20px;
}

#sport-crumbs a {
  color: #666666;
  display: block;
  outline: medium none;
  padding: 10px 20px;
  position: relative;
  text-decoration: none;
  font-weight: normal;
}

#sport-crumbs a span {
  display: inline-block;
  font-size: 16px;
  padding: 10px;
  text-align: center;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#sport-crumbs a span:after {
  border-radius: 20px;
  font: 16px/1em FontAwesome;
  margin: auto;
  padding: 4px;
  text-align: center;
  color: #0054A6;
}

#sport-crumbs a .arrow-down {
  padding-left: 0px;
  padding-right: 15px;
}

#sport-crumbs a:hover {
  color: #000;
}

#sport-crumbs .arrow-down:after {
  content: "\f0d7";
  display: inline-block;
}

#sport-crumbs .sport-crumbs-list {
  display: none;
  text-align: left;
  float: left;
  margin: auto;
  position: absolute;
  top: 49px;
  width: 100%;
  max-width: 50%;
  z-index: 20;
  left: 0px;
  border-bottom: 4px solid #0DB14C;
}

#sport-crumbs .sport-crumbs-list.thisCrumb {
  display: block !important;
  -webkit-animation: dropdown-season 0.2s ease-in;
  animation: dropdown-season 0.2s ease-in;
}

#sport-crumbs .sport-crumbs-list ul {
  list-style: none;
  width: 100%;
}

#sport-crumbs .sport-crumbs-list ul li {
  width: 100%;
  display: block;
}

#sport-crumbs .sport-crumbs-list ul li a {
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  display: block;
  font-size: 12px;
  line-height: 24px;
  padding: 5px 10px;
  text-decoration: none;
  width: 100%;
  display: block;
}

#sport-crumbs .sport-crumbs-list ul li a:before {
  display: none;
}

#sport-crumbs .sport-crumbs-list ul li a:hover {
  color: #fff;
  background-color: #000;
}

#sport-crumbs .sport-crumbs-list ul li a img {
  margin: 0 3px -3px 0;
}

#sport-crumbs .sport-crumbs-list ul .sport-crumbs-list-close {
  display: block;
  background: rgba(0, 0, 0, 0.85);
}

#sport-crumbs .sport-crumbs-list ul .sport-crumbs-list-close a {
  display: block;
  float: right;
  text-align: right;
  width: 50px;
  border-bottom: 0px;
  background: transparent;
  padding: 10px 10px 0px 10px;
}

#sport-crumbs .sport-crumbs-list ul .sport-crumbs-list-close a:after {
  content: "\f00d";
  position: relative;
  font: normal normal normal 12px/1em FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  border-radius: 40px;
  padding: 3px 5px;
  color: #fff;
  opacity: 0.7;
}

#sport-crumbs .sport-crumbs-list ul .sport-crumbs-list-close a:after:hover {
  color: #000;
  border-color: #000;
}

#sport-crumbs .sport-crumbs-list ul .sport-crumbs-list-close a:hover {
  background: transparent;
  color: #fff;
}

#sport-crumbs a.last_child, #sport-crumbs a.last_child:hover {
  background: none;
}

.dropdown-wrapper:before {
  display: none;
}

.prototip .sport-crumbs-list {
  display: block;
}

/* Sport Tools
-------------------------------------------------------------------- */
#sport-header .sport-tools {
  margin: 10px 0px;
  border-bottom: 3px solid #ececec;
}

#sport-header .sport-tools ul li {
  -webkit-transition: border 0.2s ease-in;
          transition: border 0.2s ease-in;
  display: inline-block;
  float: left;
}

#sport-header .sport-tools ul li a {
  cursor: pointer;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: block;
  font-size: .9em;
  font: 400 13px/1.5 "Montserrat", sans-serif;
  padding: 10px 15px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 100%;
  border-top: solid 1px white;
  border-left: solid 1px white;
  border-right: solid 1px white;
  color: #333333;
}

#sport-header .sport-tools ul li a:before {
  font: normal normal normal 14px/1em FontAwesome;
  padding: 0px;
  display: none;
}

#sport-header .sport-tools ul li:hover {
  border-bottom: 5px solid #0054A6;
}

#sport-header .sport-tools ul .selected {
  color: #fff;
  border-bottom: 5px solid #0054A6;
  border-right: 0px;
}

#sport-header .sport-tools ul #tool-home a:before {
  content: "\f015";
}

#sport-header .sport-tools ul #tool-roster a:before {
  content: "\f007";
}

#sport-header .sport-tools ul #tool-game-schedule a:before {
  content: "\f133";
}

#sport-header .sport-tools ul #tool-player-stats a:before {
  content: "\f080";
}

#sport-header .sport-tools ul #tool-team-stats a:before {
  content: "\f1fe";
}

#sport-header .sport-tools ul #tool-standings a:before {
  content: "\f1b3";
}

#sport-header .sport-tools ul #tool-bracket a:before {
  content: "\f0e8";
}

#sport-header .sport-tools ul #tool-photo a:before {
  content: "\f03e";
}

#sport-header .sport-tools ul #tool-video a:before {
  content: "\f1c8";
}

#sport-header .sport-tools ul #tool-posts a:before {
  content: "\f086";
}

#sport-header .sport-tools ul .tool-yellow-admin a:before {
  content: "\f013";
}

#sport-header .sport-tools ul .tool-yellow-manage-team a:before {
  content: "\f024";
}

#sport-header .sport-tools ul.tools {
  width: 100%;
}

#sport-header .sport-tools .button-tool {
  float: left;
}

#sport-header .sport-tools li,
#sport-header .sport-tools #autoRefreshBar li {
  display: inline;
  float: left;
}

#sport-header .sport-tools li.tool-yellow {
  border-color: #edc52c;
}

#sport-header .sport-tools li.tool-yellow a {
  background: #fddd40 url("https://app-assets1.sportngin.com/app_images/sport-header/btnsBG-yl.gif") 0 0 repeat-x;
  border-color: #ffc;
  color: #807540;
}

#sport-header .sport-tools li.tool-yellow:hover {
  border-color: #dda300;
  color: #594100;
}

#sport-header .sport-tools li.tool-yellow:hover a {
  background-color: #fddd40;
  background-position: 0 -80px;
  border-color: #ffc;
  color: #1a1a1a;
}

#sport-header .sport-tools li.tool-yellow:active {
  border-color: #dda300;
  color: #594100;
}

#sport-header .sport-tools li.tool-yellow:active a {
  background-color: #fddd40;
  background-position: 0 -160px;
  color: #333;
}

.sport-tools li {
  -webkit-transition: border 0.2s ease-in;
          transition: border 0.2s ease-in;
  display: inline-block;
  float: left;
}

.sport-tools li a {
  list-style: none;
}

.sport-tools li a,
#autoRefreshBar li a,
#autoRefreshBar li label {
  background-color: transparent;
  color: #0054A6;
  cursor: pointer;
  display: block;
  font: bold 13px/1.1 "Montserrat", sans-serif;
  text-transform: uppercase;
  outline: medium none;
  padding: 10px;
  text-decoration: none;
  text-shadow: 1px 1px 1px #fff;
  width: auto;
}

.sport-tools li:hover,
#autoRefreshBar li:hover,
#sport-slider li:hover,
.sport-tools li.selected {
  border-bottom: 5px solid #0054A6;
}

#autoRefreshBar .selected {
  color: #fff;
  border-bottom: 5px solid #0054A6;
}

.sport-tools li:active,
#autoRefreshBar li:hover {
  color: #333;
}

.sport-tools li:hover a,
#autoRefreshBar li:hover a,
#autoRefreshBar li:hover label {
  background-color: transparent;
  background-position: 0 -80px;
  color: #003a73;
}

.sport-tools li:active a,
#autoRefreshBar li:active a,
#autoRefreshBar li:active label {
  background-color: #f9f9f9;
  background-position: 0 -160px;
  color: #333;
}

.sport-tools .selected a,
#autoRefreshBar .selected a,
#autoRefreshBar .selected label,
.sport-tools li.selected:hover a,
#autoRefreshBar li.selected:hover a,
#autoRefreshBar li.selected:hover label {
  color: #0054A6;
  font-weight: bold;
  background-position: 0 -240px;
}

body #autoRefreshBar {
  margin: 10px 0 20px;
  padding: 5px 10px 0;
}

body #autoRefreshBar li {
  display: inline-block;
  list-style: none;
}

body #autoRefreshBar p {
  margin-bottom: 0;
  line-height: 34px;
}

/* Admin Menu
-------------------------------------------------------------------- */
.sport-admin-buttons {
  float: right;
  margin: 14px 4px 0 0;
  list-style: none;
}

.sport-admin-buttons ul {
  list-style: none;
}

.sport-admin-buttons ul li {
  display: inline;
}

/* Yes, double ID's because I only want to target this when it's a child of the sport-header. It will be moved elsewhere when the Tip js fires. */
#sport-header #tool-pages-menu,
#sport-header #sport-admin-menu {
  display: none;
}

/* Specific Pills
-------------------------------------------------------------------- */
#tool-home a:hover span {
  background-position: 0 -80px;
}

#tool-home a:active span {
  background-position: 0 -160px;
}

#tool-home.selected span {
  background-position: 0 -240px;
}

#tool-createWidget {
  float: right;
}

#tool-createWidget a {
  background: #fddd40 url("https://app-assets1.sportngin.com/app_images/sport-header/btnsBG-yl.gif") 0 0 repeat-x;
  border-color: #ffc;
}

/* Team Mini Header
-------------------------------------------------------------------- */
.teamMiniHeader {
  padding-bottom: 5px;
}

.teamMiniHeader .teamLogo-small {
  float: left;
}

.teamMiniHeader h4 {
  font-size: 16px;
  margin-left: 5px;
  line-height: 20px;
  float: left;
}

/* Overlay
-------------------------------------------------------------------- */
#sport-tools-overlay {
  background: #fff url(/app_images/loader4.gif) 50% 50% no-repeat;
  opacity: 0.5;
  position: absolute;
  z-index: 2;
}

@media only screen and (max-width: 1024px) {
  #sport-header .sport-tools ul li a {
    font-size: .8em;
  }
}

@media only screen and (max-width: 769px) {
  #sport-header #sport-crumbs ul li.crumbSelected {
    position: static;
  }
  #sport-header #sport-crumbs .sport-crumbs-list {
    max-width: 100%;
  }
  #sport-header #sport-crumbs a span {
    font-size: 0.70em;
  }
  #sport-header #sport-crumbs a span:after {
    font: 10px/1em FontAwesome;
  }
  #sport-header #sport-crumbs a .arrow-down {
    margin-left: 0px;
  }
  #sport-header .sport-tools ul li a {
    padding: 10px 2px;
    font-size: 0em;
  }
  #sport-header .sport-tools ul li a:before {
    display: block;
  }
}

/* Sport/League/Level/Team Name
-------------------------------------------------------------------- */
#sport-header {
  /* Team Colors
  -------------------------------------------------------------------- */
  /* .color[0,1,2][r][-sm,-m,-l,-xl] (defaults to left, large) */
  /* Borders -> */
  /* Top */
  /* Right */
  /* Left */
  /* Bottom */
  /* Separator Color */
  /* Primary Color */
  /* Secondary Color */
  /* Edging
  -------------------------------------------------------------------- */
}

#sport-header .sport-colors {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 25px 25px 12.5px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#sport-header .sport-colors .team-logo-wrapper {
  display: block;
  height: 75px;
  width: 75px;
  margin-right: 20px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 769px) {
  #sport-header .sport-colors .team-logo-wrapper {
    width: 44px;
    height: 44px;
  }
}

#sport-header .sport-colors .team-logo-wrapper, #sport-header .sport-colors .team-logo-wrapper:hover {
  color: #ccc;
}

#sport-header .sport-colors .team-logo-wrapper.nologo:after {
  content: '';
  display: block;
  width: 7px;
  height: 100%;
  margin: auto;
  border-left-width: 8px;
  border-right-width: 8px;
  border-left-style: solid;
  border-right-style: solid;
  background: transparent;
}

@media only screen and (max-width: 768px) {
  #sport-header .sport-colors .team-logo-wrapper.nologo:after {
    width: 3px;
    border-right-width: 4px;
    border-left-width: 4px;
  }
}

#sport-header .sport-colors h2 {
  width: 100%;
  max-width: 75%;
  font: bold 38px/1.25 "Montserrat", sans-serif;
}

@media only screen and (max-width: 768px) {
  #sport-header .sport-colors h2 {
    font: bold 1.3em/1.4em "Montserrat", sans-serif;
  }
}

#sport-header .sport-colors h2 a {
  display: inline-block;
  text-decoration: none;
}

#sport-header .sport-colors div.player_photo {
  border: 3px solid #0054A6;
  background-color: #0054A6;
  left: 10px;
  top: 10px;
  height: 70px;
  width: 70px;
}

#sport-header .sport-colors .teamLogo-small {
  font-size: 18px;
}

#sport-header .abs0,
#sport-header .abs0r {
  position: absolute;
  overflow: hidden;
  width: 0;
  height: 0;
}

#sport-header .abs0 {
  left: 0;
}

#sport-header .abs0r {
  right: 0;
}

#sport-header .color0-sm, #sport-header .color0-m {
  border-top: 12px solid #fff;
  border-right: 36px  solid transparent !important;
  border-left: 36px  solid #fff;
  border-bottom: 12px solid transparent !important;
  display: none;
}

#sport-header .color0, #sport-header .color0-l {
  border-top: 22px solid #fff;
  border-right: 66px  solid transparent !important;
  border-left: 66px  solid #fff;
  border-bottom: 22px solid transparent !important;
  display: none;
}

#sport-header .color0-xl {
  border-top: 32px solid #fff;
  border-right: 96px  solid transparent !important;
  border-left: 96px  solid #fff;
  border-bottom: 32px solid transparent !important;
  display: none;
}

#sport-header .color0r-sm, #sport-header .color0r-m {
  border-top: 12px solid #fff;
  border-right: 36px  solid #fff;
  border-left: 36px  solid transparent !important;
  border-bottom: 12px solid transparent !important;
  display: none;
}

#sport-header .color0r, #sport-header .color0r-l {
  border-top: 22px solid #fff;
  border-right: 66px  solid #fff;
  border-left: 66px  solid transparent !important;
  border-bottom: 22px solid transparent !important;
  display: none;
}

#sport-header .color0r-xl {
  border-top: 32px solid #fff;
  border-right: 96px  solid #fff;
  border-left: 96px  solid transparent !important;
  border-bottom: 32px solid transparent !important;
  display: none;
}

#sport-header .color1-sm, #sport-header .color1-m {
  border-top: 10px solid #fff;
  border-right: 30px  solid transparent !important;
  border-left: 30px  solid #fff;
  border-bottom: 10px solid transparent !important;
  display: none;
}

#sport-header .color1, #sport-header .color1-l {
  border-top: 20px solid #fff;
  border-right: 60px  solid transparent !important;
  border-left: 60px  solid #fff;
  border-bottom: 20px solid transparent !important;
  display: none;
}

#sport-header .color1-xl {
  border-top: 30px solid #fff;
  border-right: 90px  solid transparent !important;
  border-left: 90px  solid #fff;
  border-bottom: 30px solid transparent !important;
  display: none;
}

#sport-header .color1r-sm, #sport-header .color1r-m {
  border-top: 10px solid #fff;
  border-right: 30px  solid #fff;
  border-left: 30px  solid transparent !important;
  border-bottom: 10px solid transparent !important;
  display: none;
}

#sport-header .color1r, #sport-header .color1r-l {
  border-top: 20px solid #fff;
  border-right: 60px  solid #fff;
  border-left: 60px  solid transparent !important;
  border-bottom: 20px solid transparent !important;
  display: none;
}

#sport-header .color1r-xl {
  border-top: 30px solid #fff;
  border-right: 90px  solid #fff;
  border-left: 90px  solid transparent !important;
  border-bottom: 30px solid transparent !important;
  display: none;
}

#sport-header .color2-sm, #sport-header .color2-m {
  border-top: 15px solid #fff;
  border-right: 45px  solid transparent !important;
  border-left: 45px  solid #fff;
  border-bottom: 15px solid transparent !important;
  display: none;
}

#sport-header .color2, #sport-header .color2-l {
  border-top: 25px solid #fff;
  border-right: 75px  solid transparent !important;
  border-left: 75px  solid #fff;
  border-bottom: 25px solid transparent !important;
  display: none;
}

#sport-header .color2-xl {
  border-top: 35px solid #fff;
  border-right: 105px solid transparent !important;
  border-left: 105px solid #fff;
  border-bottom: 35px solid transparent !important;
  display: none;
}

#sport-header .color2r-sm, #sport-header .color2r-m {
  border-top: 15px solid #fff;
  border-right: 45px  solid #fff;
  border-left: 45px  solid transparent !important;
  border-bottom: 15px solid transparent !important;
  display: none;
}

#sport-header .color2r, #sport-header .color2r-l {
  border-top: 25px solid #fff;
  border-right: 75px  solid #fff;
  border-left: 75px  solid transparent !important;
  border-bottom: 25px solid transparent !important;
  display: none;
}

#sport-header .color2r-xl {
  border-top: 35px solid #fff;
  border-right: 105px solid #fff;
  border-left: 105px solid transparent !important;
  border-bottom: 35px solid transparent !important;
  display: none;
}

#sport-header .edge {
  background: transparent url("https://app-assets1.sportngin.com/app_images/sport-header/edge.png") 0 0 repeat-x;
  height: 12px;
  width: 100%;
}

#sport-header .edge-tools {
  background: transparent url("https://app-assets1.sportngin.com/app_images/sport-header/tools-edge.png") 0 0 repeat-x;
  height: 12px;
  width: 100%;
}

/* Team Logo
-------------------------------------------------------------------- */
/*
  Logo sizes are...
  20 x 20 - tiny
  60 x 20 - small
  90 x 30 - medium
  120 x 40 - large
  150 x 50 - extra large
  300 x 100 - print
*/
/*Shape*/
.teamLogo,
.teamLogo-tiny,
.teamLogo-small,
.teamLogo-medium,
.teamLogo-large,
.teamLogo-extra_large,
.teamLogo-print,
.teamLogor,
.teamLogor-tiny,
.teamLogor-small,
.teamLogor-medium,
.teamLogor-large,
.teamLogor-extra_large,
.teamLogor-print {
  display: block;
  text-decoration: none;
}

/*Size*/
.teamLogo-tiny,
.teamLogor-tiny {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-tiny.png") 50% 50% no-repeat;
  height: 20px !important;
  width: 20px !important;
}

.teamLogo-small,
.teamLogor-small {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-small.png") 50% 50% no-repeat;
  height: 20px !important;
  width: 20px !important;
}

.teamLogo-medium,
.teamLogor-medium {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-medium.png") 50% 50% no-repeat;
  height: 30px !important;
  width: 90px !important;
  border: 1px solid #ddd;
  background-color: #fafafa;
}

.teamLogo,
.teamLogo-large,
.teamLogor,
.teamLogor-large {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-large.png") 50% 50% no-repeat;
  height: 40px !important;
  width: 120px !important;
}

.teamLogo-extra_large,
.teamLogor-extra_large {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-extra_large.png") 50% 50% no-repeat;
  height: 50px !important;
  width: 150px !important;
}

.teamLogo-print,
.teamLogor-print {
  background: url("https://app-assets1.sportngin.com/app_images/team_logos/team-print.png") 50% 50% no-repeat;
  height: 100px !important;
  width: 300px !important;
}

/*Orientation*/
.sport-colors .teamLogo,
.sport-colors .teamLogo-medium,
.sport-colors .teamLogo-large,
.sport-colors .teamLogo-extra_large,
.sport-colors .teamLogo-print {
  left: 15px;
  top: 10px;
}

.sport-colors .teamLogor,
.sport-colors .teamLogor-medium,
.sport-colors .teamLogor-large,
.sport-colors .teamLogor-extra_large,
.sport-colors .teamLogor-print {
  left: auto;
  right: 15px;
  top: 10px;
}

.sport-colors .teamLogo-small {
  left: 5px;
  top: 5px;
}

.sport-colors .teamLogor-small {
  left: auto;
  right: 5px;
  top: 5px;
}

/* In Tables */
table .teamLogo,
table .teamLogo-tiny,
table .teamLogo-small,
table .teamLogo-medium,
table .teamLogo-large,
table .teamLogo-extra_large,
table .teamLogo-print,
.sportTableLabel .teamLogo,
.sportTableLabel .teamLogo-tiny,
.sportTableLabel .teamLogo-small,
.sportTableLabel .teamLogo-medium,
.sportTableLabel .teamLogo-large,
.sportTableLabel .teamLogo-extra_large,
.sportTableLabel .teamLogo-print {
  margin-right: 10px;
  vertical-align: middle;
  display: inline-block;
  background-color: #fff;
}

table .teamLogo:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-tiny:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-small:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-medium:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-large:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-extra_large:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
table .teamLogo-print:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-tiny:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-small:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-medium:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-large:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-extra_large:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]),
.sportTableLabel .teamLogo-print:not([style*="background-image:url(/app_images/team_logos/team-tiny.png);"]) {
  background-size: 100% auto;
}

table .teamLogor,
table .teamLogor-tiny,
table .teamLogor-small,
table .teamLogor-medium,
table .teamLogor-large,
table .teamLogor-extra_large,
table .teamLogor-print,
.sportTableLabel .teamLogor,
.sportTableLabel .teamLogor-tiny,
.sportTableLabel .teamLogor-small,
.sportTableLabel .teamLogor-medium,
.sportTableLabel .teamLogor-large,
.sportTableLabel .teamLogor-extra_large,
.sportTableLabel .teamLogor-print {
  float: right;
  margin-left: 5px;
}

/* Widgets - Universal
---------------------------------------------------------------------------------------------------- */
.widgetFooter .teamLogo-tiny {
  float: right;
  margin: 0 5px 0 0;
}

.widgetFooter .linkText {
  float: right;
  line-height: 20px;
}

.widgetFooter .linkArrow {
  float: right;
}

.widgetHierarchy h4 {
  margin: 5px 0;
}

/* Widgets - in Lightbox
---------------------------------------------------------------------------------------------------- */
.widget-source {
  display: block;
  font-size: 1.2em;
  text-transform: uppercase;
}

.widget-data {
  display: block;
  color: #000;
}

.widget-filters {
  display: block;
  color: #666;
  font-size: 0.9em;
}

/* Widget Footer
---------------------------------------------------------------------------------------------------- */
.widgetFooter {
  background: #fefefe;
  border: 1px solid #e6e6e6;
  font-size: 10px;
  margin: 5px 0 0;
  padding: 5px;
}

/* Widget - Roster Player Stats Widget
---------------------------------------------------------------------------------------------------- */
.widget-roster-player ul li {
  padding: 0px;
}

.widget-roster-player ul li.lastLi {
  background: #e6e6e6;
}

.widget-roster-player ul li.lastLi h4 {
  font-size: 1em;
  padding: 15px;
  margin-bottom: 0px;
}

.widget-roster-player ul li.lastLi h4 a {
  text-transform: uppercase;
}

.widget-roster-player ul li.lastLi h4 span {
  color: #333;
}

.widget-roster-player ul li.lastLi .leader-highlight {
  padding-bottom: 15px;
}

.widget-roster-player ul li.lastLi .leader-highlight .sport-colors {
  margin: auto;
  border: 0px;
  width: auto;
  display: inline-block;
}

.widget-roster-player ul li.lastLi .leader-highlight .sport-colors .edge {
  display: none;
}

.widget-roster-player ul li.lastLi .leader-highlight .sport-colors .player_photo {
  overflow: hidden;
  margin: 0px 15px 10px 15px;
  position: relative;
  top: auto;
  left: auto;
  max-height: 70px;
  max-width: 70px;
  width: 100%;
  height: 100%;
  border: 3px solid #0054A6;
  background-color: #C7C7C7;
}

.widget-roster-player ul li.lastLi .leader-highlight .sport-colors .player_photo a img {
  width: 100%;
  height: 100%;
  display: block;
}

.widget-roster-player ul li.lastLi .leader-highlight .stats {
  margin: auto;
  position: relative;
  float: left;
  display: inline-block;
}

.widget-roster-player ul li.lastLi .leader-highlight .stats p.stats-minor {
  padding: 0px;
  font-size: 15px;
}

.widget-roster-player ul li.lastLi .leader-highlight .stats p.stats-major {
  font-size: 2em;
  padding: 0px;
}

.widget-roster-player ul li.lastLi .leader-highlight .stats p.stats-major:after {
  border: 0px;
  display: none;
}

.widget-roster-player ul li.lastLi .noEntry {
  padding: 15px;
}

.widget-roster-player table {
  background: #fafafa;
  padding: 0;
  width: 100%;
}

.widget-roster-player table .rank {
  width: 1%;
}

.widget-roster-player table .stat {
  font-weight: bold;
  text-align: right;
}

.widget-roster-player .leader-highlight {
  background: #e6e6e6;
  position: relative;
  text-align: center;
  width: 100%;
}

.widget-roster-player .leader-highlight p {
  margin: 0px;
}

.widget-roster-player .leader-highlight p.playerName {
  font-size: 14px;
  text-align: left;
  padding: 5px 10px 10px;
}

[id^="widget_roster_widget"] .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  position: relative;
}

[id^="widget_roster_widget"] .sportTableLabel .teamLogo-tiny {
  left: 14px;
  position: absolute;
  top: 14px;
}

[id^="widget_roster_widget"] .sportTableLabel * {
  color: inherit;
}

[id^="widget_roster_widget"] .sportTableLabel h4.teamName {
  font-size: 24px;
  margin: 0;
  padding-left: 30px;
}

[id^="widget_roster_widget"] .sportTableLabel .seasonDisplay,
[id^="widget_roster_widget"] .sportTableLabel .expandedView {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-transform: none;
}

[id^="widget_roster_widget"] .sportTableLabel .linkText {
  display: block;
}

[id^="widget_roster_widget"] .sportTableLabel .season-separator {
  display: none;
}

.activePlayers > h4 {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
}

/* Widget - Game List
---------------------------------------------------------------------------------------------------- */
.widget-gameTable th {
  text-align: left;
}

.widget-gameTable a {
  outline: none;
}

.game-location-small-list {
  display: block;
  text-align: right;
  padding: 2px;
  margin-top: 3px;
  border-top: dotted 1px #CCC;
  font-size: 9px;
}

.showMoreGames {
  margin-top: 2px;
}

/* Widget - Team Buttons
---------------------------------------------------------------------------------------------------- */
.widget-teamButtons .sport-colors {
  position: relative;
  line-height: 1.3;
  padding: 0;
}

.widget-teamButtons a {
  background: #0054A6;
  border-bottom: 3px solid #002040;
  margin-bottom: 5px;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  -webkit-transition: border-bottom 0.2s ease-in, background-color 0.2s ease-in;
          transition: border-bottom 0.2s ease-in, background-color 0.2s ease-in;
  -webkit-appearance: none;
  color: #fff;
  display: block;
  font-size: inherit;
  padding: 12px 12px 10px 65px;
}

.widget-teamButtons a:hover {
  background: #002040;
}

.widget-teamButtons a:hover .teamLogo-small {
  background-color: #0054A6;
}

.widget-teamButtons .teamLogo-small {
  background-color: #002040;
  background-size: cover;
  border-radius: 0;
  display: block;
  float: left;
  left: -53px;
  margin-top: -10px;
  overflow: visible;
  position: absolute;
  top: 50%;
  width: 40px !important;
}

.widget-teamButtons .teamLogo-small:after {
  background: #0DB14C;
  content: '';
  height: 100%;
  position: absolute;
  right: -5px;
  width: 3px;
}

.widget-teamButtons .teamname {
  font-weight: 600;
}

.widget-teamButtons .teamname-separator {
  padding-left: 2px;
  padding-right: 2px;
}

@media (min-width: 1025px) {
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol,
  .col-md-6 .widget-teamButtons.columns-3 .teamBtnCol,
  .col-md-4 .widget-teamButtons.columns-3 .teamBtnCol, .widget-teamButtons.columns-2 .teamBtnCol {
    box-sizing: border-box;
    float: left;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol + .teamBtnCol,
  .col-md-6 .widget-teamButtons.columns-3 .teamBtnCol + .teamBtnCol,
  .col-md-4 .widget-teamButtons.columns-3 .teamBtnCol + .teamBtnCol, .widget-teamButtons.columns-2 .teamBtnCol + .teamBtnCol {
    padding-left: 5px;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol,
  .col-md-6 .widget-teamButtons.columns-3 .teamBtnCol,
  .col-md-4 .widget-teamButtons.columns-3 .teamBtnCol {
    width: 33.3%;
  }
  .col-md-6 .widget-teamButtons.columns-3,
  .col-md-4 .widget-teamButtons.columns-3,
  .col-md-4 .widget-teamButtons.columns-2,
  .col-md-3 .widget-teamButtons.columns-2,
  .col-md-3 .widget-teamButtons.columns-1 {
    text-align: center;
  }
  .col-md-6 .widget-teamButtons.columns-3 a,
  .col-md-4 .widget-teamButtons.columns-3 a,
  .col-md-4 .widget-teamButtons.columns-2 a,
  .col-md-3 .widget-teamButtons.columns-2 a,
  .col-md-3 .widget-teamButtons.columns-1 a {
    padding-left: 12px;
  }
  .col-md-6 .widget-teamButtons.columns-3 .teamLogo-small,
  .col-md-4 .widget-teamButtons.columns-3 .teamLogo-small,
  .col-md-4 .widget-teamButtons.columns-2 .teamLogo-small,
  .col-md-3 .widget-teamButtons.columns-2 .teamLogo-small,
  .col-md-3 .widget-teamButtons.columns-1 .teamLogo-small {
    display: block;
    float: none;
    left: auto;
    margin: 0 auto 9px;
    position: relative;
    top: auto;
  }
  .col-md-6 .widget-teamButtons.columns-3 .teamLogo-small:after,
  .col-md-4 .widget-teamButtons.columns-3 .teamLogo-small:after,
  .col-md-4 .widget-teamButtons.columns-2 .teamLogo-small:after,
  .col-md-3 .widget-teamButtons.columns-2 .teamLogo-small:after,
  .col-md-3 .widget-teamButtons.columns-1 .teamLogo-small:after {
    height: 3px;
    width: 100%;
    left: 0;
    right: 0;
    bottom: -5px;
  }
  .col-md-6 .widget-teamButtons.columns-3 .teamname-separator,
  .col-md-4 .widget-teamButtons.columns-3 .teamname-separator,
  .col-md-4 .widget-teamButtons.columns-2 .teamname-separator,
  .col-md-3 .widget-teamButtons.columns-2 .teamname-separator,
  .col-md-3 .widget-teamButtons.columns-1 .teamname-separator {
    display: block;
    height: 0;
    overflow: hidden;
    width: 0;
  }
  .col-md-6 .widget-teamButtons.columns-3,
  .col-md-3 .widget-teamButtons.columns-3 {
    font-size: 13px;
  }
  .col-md-4 .widget-teamButtons.columns-3 {
    font-size: 11px;
  }
  .col-md-4 .widget-teamButtons.columns-3 a {
    padding: 8px 4px 4px;
  }
  .widget-teamButtons.columns-2 .teamBtnCol {
    width: 50%;
  }
  .col-md-6 .widget-teamButtons.columns-2 {
    font-size: 15px;
  }
  .col-md-4 .widget-teamButtons.columns-2,
  .col-md-3 .widget-teamButtons.columns-2 {
    font-size: 13px;
  }
  .col-md-4 .widget-teamButtons.columns-2 a,
  .col-md-3 .widget-teamButtons.columns-2 a {
    padding: 10px 8px 6px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .col-md-12 .widget-teamButtons.columns-3,
  .col-md-4 .widget-teamButtons.columns-3,
  .col-md-3 .widget-teamButtons.columns-3,
  .col-md-4 .widget-teamButtons.columns-2,
  .col-md-3 .widget-teamButtons.columns-2,
  .col-md-4 .widget-teamButtons.columns-1,
  .col-md-3 .widget-teamButtons.columns-1 {
    text-align: center;
  }
  .col-md-12 .widget-teamButtons.columns-3 a,
  .col-md-4 .widget-teamButtons.columns-3 a,
  .col-md-3 .widget-teamButtons.columns-3 a,
  .col-md-4 .widget-teamButtons.columns-2 a,
  .col-md-3 .widget-teamButtons.columns-2 a,
  .col-md-4 .widget-teamButtons.columns-1 a,
  .col-md-3 .widget-teamButtons.columns-1 a {
    padding-left: 12px;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamLogo-small,
  .col-md-4 .widget-teamButtons.columns-3 .teamLogo-small,
  .col-md-3 .widget-teamButtons.columns-3 .teamLogo-small,
  .col-md-4 .widget-teamButtons.columns-2 .teamLogo-small,
  .col-md-3 .widget-teamButtons.columns-2 .teamLogo-small,
  .col-md-4 .widget-teamButtons.columns-1 .teamLogo-small,
  .col-md-3 .widget-teamButtons.columns-1 .teamLogo-small {
    display: block;
    float: none;
    left: auto;
    margin: 0 auto 9px;
    position: relative;
    top: auto;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamLogo-small:after,
  .col-md-4 .widget-teamButtons.columns-3 .teamLogo-small:after,
  .col-md-3 .widget-teamButtons.columns-3 .teamLogo-small:after,
  .col-md-4 .widget-teamButtons.columns-2 .teamLogo-small:after,
  .col-md-3 .widget-teamButtons.columns-2 .teamLogo-small:after,
  .col-md-4 .widget-teamButtons.columns-1 .teamLogo-small:after,
  .col-md-3 .widget-teamButtons.columns-1 .teamLogo-small:after {
    height: 3px;
    width: 100%;
    left: 0;
    right: 0;
    bottom: -5px;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamname-separator,
  .col-md-4 .widget-teamButtons.columns-3 .teamname-separator,
  .col-md-3 .widget-teamButtons.columns-3 .teamname-separator,
  .col-md-4 .widget-teamButtons.columns-2 .teamname-separator,
  .col-md-3 .widget-teamButtons.columns-2 .teamname-separator,
  .col-md-4 .widget-teamButtons.columns-1 .teamname-separator,
  .col-md-3 .widget-teamButtons.columns-1 .teamname-separator {
    display: block;
    height: 0;
    overflow: hidden;
    width: 0;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol,
  .col-md-12 .widget-teamButtons.columns-2 .teamBtnCol {
    box-sizing: border-box;
    float: left;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol + .teamBtnCol,
  .col-md-12 .widget-teamButtons.columns-2 .teamBtnCol + .teamBtnCol {
    padding-left: 5px;
  }
  .col-md-12 .widget-teamButtons.columns-3 .teamBtnCol {
    width: 33.3%;
  }
  .col-md-12 .widget-teamButtons.columns-2 .teamBtnCol {
    width: 50%;
  }
}

@media (min-width: 500px) and (max-width: 768px) {
  .widget-teamButtons.columns-3 .teamBtnCol, .widget-teamButtons.columns-2 .teamBtnCol {
    box-sizing: border-box;
    float: left;
  }
  .widget-teamButtons.columns-3 .teamBtnCol + .teamBtnCol, .widget-teamButtons.columns-2 .teamBtnCol + .teamBtnCol {
    padding-left: 5px;
  }
  .widget-teamButtons.columns-3 {
    text-align: center;
  }
  .widget-teamButtons.columns-3 a {
    padding-left: 12px;
  }
  .widget-teamButtons.columns-3 .teamLogo-small {
    display: block;
    float: none;
    left: auto;
    margin: 0 auto 9px;
    position: relative;
    top: auto;
  }
  .widget-teamButtons.columns-3 .teamLogo-small:after {
    height: 3px;
    width: 100%;
    left: 0;
    right: 0;
    bottom: -5px;
  }
  .widget-teamButtons.columns-3 .teamname-separator {
    display: block;
    height: 0;
    overflow: hidden;
    width: 0;
  }
  .widget-teamButtons.columns-3 .teamBtnCol {
    width: 33.3%;
  }
  .widget-teamButtons.columns-2 .teamBtnCol {
    width: 50%;
  }
}

/* -- Filterable, Sortable Table Variant */
.widget-teamButtons table {
  width: 100%;
}

.widget-teamButtons thead {
  background: #ccc;
  border: 1px solid #bbb;
}

.widget-teamButtons th:first-child {
  padding: 5px;
}

.widget-teamButtons td:first-child {
  min-width: 45px;
}

.widget-teamButtons td .sport-colors {
  border: none;
  min-width: 45px;
}

.widget-teamButtons td .teamname {
  padding: 5px 0;
}

.widget-teamButtons tbody a,
.widget-teamButtons tbody a:hover,
.widget-teamButtons tbody a:active {
  background: none;
  border: none;
  color: #808080;
  display: block;
  margin: 0;
  text-decoration: none;
}

.widget-teamButtons tbody tr {
  background: #f4f4f4 url(<%= asset_path_for("/app_images/widgets/teamButtonBG.gif") %>) 0 0 repeat-x;
  border: 1px solid #bbb;
  color: #808080;
}

.widget-teamButtons tbody tr:hover {
  background-color: #e5e5e5;
  background-position: 0 -140px;
  border: 1px solid #666;
  color: #1a1a1a;
  text-decoration: none;
}

.widget-teamButtons tbody tr:active {
  background-color: #f6f6f6;
  background-position: 0 -280px;
  border: 1px solid #999;
  color: #333;
  text-decoration: none;
}

/* Widget - Team Buttons
---------------------------------------------------------------------------------------------------- */
.singleSurveyResultWidget {
  line-height: 1.5em;
}

.column .singleSurveyResultWidget b {
  opacity: 0.8;
}

.column .singleSurveyResultWidget b,
.column .singleSurveyResultWidget span {
  display: block;
  float: left;
}

.pe100 .singleSurveyResultWidget b,
.pe66 .singleSurveyResultWidget b,
.pe50 .singleSurveyResultWidget b {
  margin: 0 1% 0 0;
  text-align: right;
  width: 25%;
}

.pe100 .singleSurveyResultWidget span,
.pe66 .singleSurveyResultWidget span,
.pe50 .singleSurveyResultWidget span {
  width: 70%;
}

.pe33 .singleSurveyResultWidget b,
.pe33 .singleSurveyResultWidget span,
.pe25 .singleSurveyResultWidget b,
.pe25 .singleSurveyResultWidget span {
  float: none;
}

#lightboxBody .singleSurveyResultWidget {
  margin: 15px 15px -15px;
}

#lightboxBody .singleSurveyResultWidget .odd,
#lightboxBody .singleSurveyResultWidget .even {
  background: none;
}

/* Widget - Gallery
---------------------------------------------------------------------------------------------------- */
.galleryWidget {
  background: #DDD url("https://app-assets1.sportngin.com/app_images/widgets/galleryBG.png") 0 26px repeat-x;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
}

.galleryWidget .scrollable {
  position: relative;
  width: 100%;
  height: auto;
}

.galleryWidget .scrollable .items {
  position: relative;
  width: auto;
  padding: 10px 0px 10px 10px;
}

.galleryWidget .header {
  color: #FFF;
  font-size: 11px;
  background: #333;
  text-align: right;
  width: 100%;
  display: block;
  position: relative;
}

.galleryWidget .header h3 {
  display: inline;
  float: left;
  margin: 0;
  font-size: 11px;
  padding: 5px 10px;
  width: 65%;
}

.galleryWidget .header a {
  color: #999;
  display: inline-block;
  padding: 5px 10px;
  zoom: 1;
  *display: inline;
  text-decoration: none;
  background: #444;
  -webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
}

.galleryWidget .header a:hover {
  color: #FFF;
}

.galleryWidget .next,
.galleryWidget .prev {
  position: absolute;
  height: 0;
  width: 29px;
  height: 100px;
  bottom: 0;
  cursor: pointer;
  display: none;
}

.galleryWidget .next {
  right: 0;
}

.galleryWidget .prev {
  left: 0;
}

.galleryWidget .next span,
.galleryWidget .prev span {
  position: absolute;
  height: 0;
  width: 9px;
  padding-top: 14px;
  overflow: hidden;
  top: 43px;
  left: 10px;
  background: url("https://app-assets1.sportngin.com/app_images/widgets/galleryNav.png") 0 0 no-repeat;
}

.galleryWidget .prev:hover span {
  background-position: -9px 0;
}

.galleryWidget .next span {
  background-position: -27px 0;
}

.galleryWidget .next:hover span {
  background-position: -36px 0;
}

.galleryWidget .prev.disabled span {
  background-position: -18px 0;
}

.galleryWidget .next.disabled span {
  background-position: -45px 0;
}

.galleryWidget .item {
  background: #FFF;
  width: 75px;
  height: 75px;
  margin: 0px 8px 8px 0px;
  opacity: 0.93;
}

.galleryWidget .item:hover {
  background: #333;
  opacity: 1;
}

.galleryWidget .item .thumb {
  display: block;
  height: 75px;
  overflow: hidden;
  line-height: 0;
  background: #DDD;
  text-align: center;
}

.galleryWidget .item img.vert {
  width: 100%;
}

.galleryWidget .item img.horiz {
  height: 100%;
}

.dropdown-wrapper {
  display: block;
  position: relative;
  width: 100%;
  float: left;
  clear: both;
  z-index: 2;
  background: #efefef;
}

.dropdown-wrapper:before {
  content: "";
  height: 100%;
  display: none;
  width: 40px;
  position: absolute;
  left: -40px;
  top: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, transparent), color-stop(100%, rgba(0, 0, 0, 0.12)));
  background: -webkit-linear-gradient(left, transparent 0%, rgba(0, 0, 0, 0.12) 100%);
  background: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.12) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#1f000000',GradientType=1 );
}

.dropdown-wrapper #megaDropDown-season {
  background: #404040;
  display: inline-block;
  margin: auto;
  outline: medium none;
  text-align: left;
  text-decoration: none;
  height: 100%;
  position: relative;
  padding: 0px 50px 10px 10px;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  float: right;
  min-width: 150px;
}

.dropdown-wrapper #megaDropDown-season .season {
  color: #fff;
  display: block;
  font: normal 10px/1em "Montserrat", sans-serif;
  margin: auto;
  width: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dropdown-wrapper #megaDropDown-season .subseason {
  color: #fff;
  font: bold 12px/1em "Montserrat", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dropdown-wrapper #megaDropDown-season:after {
  content: "\f0d7";
  display: none;
  position: absolute;
  right: 10px;
  top: 10px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  color: #fff;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  border-radius: 100px;
  color: #fff;
  font: normal 20px/1em FontAwesome;
  padding: 0px 4px 4px 4px;
}

.dropdown-wrapper #megaDropDown-season-callout {
  background: rgba(0, 0, 0, 0.75);
  color: #ddd;
  padding: 10px;
  text-align: left;
  position: absolute;
  right: 0;
  width: 100%;
  max-width: 230px;
  z-index: 2;
  padding: 15px 15px 20px 15px;
  display: none;
  top: 100%;
  border-bottom: 4px solid #0DB14C;
}

.dropdown-wrapper #megaDropDown-season-callout .season-title {
  display: block;
  font: bold 12px "Montserrat", sans-serif;
  padding: 0 0 5px;
  margin: 5px 0;
}

.dropdown-wrapper #megaDropDown-season-callout .season-title span {
  float: left;
}

.dropdown-wrapper #megaDropDown-season-callout select {
  width: 100%;
  border: 0px;
  background: #333;
  background-image: url("https://app-assets1.sportngin.com/app_images/select-down-arrow.svg");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 27px;
  padding: 10px;
  color: #fff;
  display: block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.dropdown-wrapper #megaDropDown-season-callout a {
  border-radius: 1px;
  -webkit-transition: all 0.2s ease-in;
          transition: all 0.2s ease-in;
  display: block;
  font-size: 12px;
  padding: 2px 5px;
  text-decoration: none;
  background: #333;
  text-align: center;
  color: #ddd;
  margin-bottom: 3px;
}

.dropdown-wrapper #megaDropDown-season-callout a:hover {
  background: #222;
}

.dropdown-wrapper #megaDropDown-season-callout a.close {
  background: transparent;
  border-radius: 100%;
  color: #fff;
  display: block;
  float: right;
  font-size: 12px;
  font-weight: bold;
  margin: 0;
  padding: 0px 6px 2px 6px;
}

.dropdown-wrapper #megaDropDown-season-callout a.close:hover {
  background: transparent;
}

.dropdown-wrapper #megaDropDown-season-callout a.current {
  background: #000;
  border-radius: 1px;
  -webkit-transition: all 0.2s ease-in;
          transition: all 0.2s ease-in;
  color: #aaa;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  font-weight: normal;
  padding: 5px 10px;
  text-align: center;
  letter-spacing: .3px;
}

.dropdown-wrapper #megaDropDown-season-callout a.current:hover {
  background: #333;
}

.dropdown-wrapper #megaDropDown-season-callout .footer {
  margin: 10px 0 0;
}

.dropdown-wrapper #megaDropDown-season-callout optgroup option {
  margin: 0;
  padding: 0 0 0 10px;
}

.dropdown-wrapper #megaDropDown-season.mdd-active {
  cursor: pointer;
  background-color: #222;
}

.dropdown-wrapper #megaDropDown-season.mdd-active:after {
  display: block;
}

.dropdown-wrapper #megaDropDown-season.mdd-active:hover {
  background-color: #333;
}

.dropdown-wrapper.mdd-active-open #megaDropDown-season:after {
  content: "\f0d8";
}

.dropdown-wrapper.mdd-active-open #megaDropDown-season-callout {
  display: block;
  -webkit-animation: dropdown-season 0.2s ease-in;
  animation: dropdown-season 0.2s ease-in;
}

@media only screen and (max-width: 768px) {
  /* Seasons Mega Drop Down */
  .dropdown-wrapper {
    max-width: 100%;
    width: 100%;
  }
  .dropdown-wrapper:before {
    display: none;
  }
  .dropdown-wrapper #megaDropDown-season .season {
    font-size: 10px;
  }
  .dropdown-wrapper #megaDropDown-season .subseason {
    font-size: 9px;
  }
  .dropdown-wrapper #megaDropDown-season-callout {
    max-width: 100%;
  }
}

#GameShowContent.game_show_nextgen .GameShowDataContainer.play_by_play {
  padding: 0;
}

body .GameShowDataContainer.play_by_play .StatWidget,
body .GameShowDataContainer.play_by_play .StatWidgetColumn .StatWidgetHolder {
  margin: 0 0 0 0;
}

#PBP {
  padding-bottom: 16px;
  background: #eee;
}

#PBP-loader + #PBP {
  display: none;
}

@media screen and (min-width: 800px) {
  #PBP .pbp-list:before {
    content: '';
    position: absolute;
    background-color: #ccc;
    left: 50%;
    top: 0;
    height: 100%;
    width: 1px;
  }
}

#PBP .pbp-header:not(:first-child) {
  margin-top: 48px;
}

#PBP .pbp-header:not(:first-child) .homeTeam,
#PBP .pbp-header:not(:first-child) .awayTeam {
  display: none;
}

#PBP .pbp-team-header {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}

#PBP .pbp-team-header .homeTeam,
#PBP .pbp-team-header .awayTeam {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  color: #fff;
  width: 50%;
  padding: 10px 6px;
}

@media screen and (min-width: 550px) {
  #PBP .pbp-team-header .homeTeam,
  #PBP .pbp-team-header .awayTeam {
    padding-left: 12px;
    padding-right: 12px;
  }
}

#PBP .pbp-team-header .homeTeam {
  -ms-flex-pack: end;
  -webkit-box-pack: end;
          justify-content: flex-end;
}

#PBP .pbp-team-header .homeTeam .team_logo {
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
          order: 1;
  margin-left: 8px;
}

#PBP .pbp-team-header .awayTeam .team_logo {
  margin-right: 8px;
}

#PBP .pbp-team-header .team_logo {
  display: none;
}

@media screen and (min-width: 400px) {
  #PBP .pbp-team-header .team_logo {
    display: block;
  }
}

#PBP .pbp-team-header .interval {
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
          order: 1;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  width: 100%;
  background-color: #eee;
  text-transform: capitalize;
  text-align: center;
}

@media screen and (min-width: 550px) {
  #PBP .pbp-team-header .interval {
    font-size: 18px;
  }
}

#PBP .pbp-team-header .interval span {
  display: block;
  margin: 16px 0 8px;
}

#PBP .pbp-team-header .interval br {
  display: none;
}

#PBP .clockTime {
  position: absolute;
  top: 0;
  color: #fff;
  text-align: center;
  min-width: 35%;
}

@media screen and (min-width: 400px) {
  #PBP .clockTime {
    min-width: 18%;
  }
}

@media screen and (min-width: 800px) {
  #PBP .clockTime {
    min-width: 22.5%;
    background-color: #eee;
    color: #666;
  }
}

#PBP .play {
  position: relative;
  margin: 6px;
  width: calc(60% - 6px);
  background: #fff;
  font-size: 12px;
}

@media screen and (min-width: 400px) {
  #PBP .play {
    width: calc(55% - 6px);
  }
}

@media screen and (min-width: 550px) {
  #PBP .play {
    width: calc(55% - 12px);
    margin-top: 12px;
    margin-bottom: 12px;
    font-size: 14px;
  }
}

@media screen and (min-width: 800px) {
  #PBP .play {
    width: calc(45% - 12px);
  }
}

#PBP .playAway {
  margin-left: 6px;
}

@media screen and (min-width: 550px) {
  #PBP .playAway {
    margin-left: 12px;
  }
}

@media screen and (min-width: 800px) {
  #PBP .playAway {
    text-align: right;
  }
}

#PBP .playAway .clockTime {
  right: 0;
}

@media screen and (min-width: 800px) {
  #PBP .playAway .clockTime {
    right: -22.5%;
  }
}

@media screen and (min-width: 800px) {
  #PBP .playAway .playerPhoto {
    float: right;
    margin-right: 0;
    margin-left: 8px;
  }
}

#PBP .playHome {
  margin-left: 40%;
  margin-right: 6px;
}

@media screen and (min-width: 400px) {
  #PBP .playHome {
    margin-left: 45%;
  }
}

@media screen and (min-width: 550px) {
  #PBP .playHome {
    margin-right: 12px;
  }
}

@media screen and (min-width: 800px) {
  #PBP .playHome {
    margin-left: 55%;
  }
}

#PBP .playHome .playType {
  text-align: right;
  padding-left: 35%;
}

@media screen and (min-width: 400px) {
  #PBP .playHome .playType {
    padding-left: 18%;
  }
}

@media screen and (min-width: 800px) {
  #PBP .playHome .playType {
    padding-left: 8px;
    text-align: left;
  }
}

@media screen and (min-width: 800px) {
  #PBP .playHome .clockTime {
    left: -22.5%;
  }
}

#PBP .playerName {
  margin-bottom: 0;
}

#PBP .playerName br {
  display: none;
}

#PBP .playerName a:after {
  content: ' ';
}

#PBP .playerInfo {
  overflow: hidden;
}

#PBP .playerPhoto {
  float: left;
  margin-right: 8px;
}

#PBP .playType {
  color: #fff;
  background: black;
}

#PBP .playType,
#PBP .playerInfo,
#PBP .extraDetails,
#PBP .clockTime {
  padding: 4px;
}

@media screen and (min-width: 550px) {
  #PBP .playType,
  #PBP .playerInfo,
  #PBP .extraDetails,
  #PBP .clockTime {
    padding: 8px;
  }
}

#PBP .extraDetails {
  padding-top: 0;
}

.pitchTracker > h3 {
  margin-bottom: .5em;
}

.pitchTracker .regulations {
  margin-top: 1em;
}

.pitchTracker .regulations ul {
  margin-top: 1em;
}

.pitchTracker .regulations li {
  margin-left: 2.3em;
}

.siteContainer > #masterScoreboard {
  background: transparent;
  max-width: 940px;
  margin: 18px auto;
}

html.has-mobile-nav .siteContainer > #masterScoreboard {
  margin: 0;
}

#masterScoreboard {
  background: #fff;
}

#masterScoreboard .scoreboardRibbon {
  margin: 0px;
}

.scoreboardRibbon {
  background: rgba(7, 7, 7, 0.75);
  z-index: 0;
}

.pageElement .scoreboardRibbon {
  margin: 0 5px;
}

.scoreboardRibbon {
  height: 151px;
  position: relative;
  text-transform: capitalize;
  overflow: hidden;
  padding-top: 13px;
}

.scoreboardRibbon .next_button, .scoreboardRibbon .previous_button {
  width: 30px;
  height: 125px;
  cursor: pointer;
  z-index: 500;
  color: #0DB14C;
  display: block;
  font: .875em FontAwesome;
  line-height: 125px;
  position: absolute;
  text-align: center;
}

.scoreboardRibbon .next_button:hover, .scoreboardRibbon .previous_button:hover {
  background: rgba(7, 7, 7, 0.75);
}

.scoreboardRibbon .next_button::-moz-selection, .scoreboardRibbon .previous_button::-moz-selection {
  background: transparent;
}

.scoreboardRibbon .next_button::selection, .scoreboardRibbon .previous_button::selection {
  background: transparent;
}

.scoreboardRibbon .next_button::-moz-selection, .scoreboardRibbon .previous_button::-moz-selection {
  background: transparent;
}

.scoreboardRibbon .next_button_disabled, .scoreboardRibbon .previous_button_disabled {
  cursor: default;
}

.scoreboardRibbon .next_button_disabled:before, .scoreboardRibbon .previous_button_disabled:before {
  color: #999;
}

.scoreboardRibbon .next_button_disabled:hover, .scoreboardRibbon .previous_button_disabled:hover {
  background: transparent;
}

.scoreboardRibbon .previous_button {
  left: 8px;
}

.scoreboardRibbon .previous_button:before {
  content: "\f060";
}

.scoreboardRibbon .next_button {
  right: 8px;
}

.scoreboardRibbon .next_button:before {
  content: "\f061";
}

.scoreboardRibbon .container {
  height: 125px;
  overflow: hidden;
  position: absolute;
  left: 45px;
  right: 45px;
  z-index: 490;
  padding: 0px;
  width: auto;
}

.scoreboardRibbon .container ul {
  width: 100000px;
  position: relative;
}

.scoreboardRibbon .game {
  display: block;
  float: left;
  width: 154px;
}

.scoreboardRibbon .gameLink {
  height: 125px;
  width: 100%;
  cursor: pointer;
  margin: 0px;
  padding: 0px;
  text-decoration: none;
  cursor: pointer;
  background: #fff;
}

.scoreboardRibbon a > span {
  display: block;
  font-weight: normal;
  color: #666;
  line-height: 1.5em;
  padding-left: 10px;
  padding-right: 10px;
}

.scoreboardRibbon a > span:last-child {
  padding-bottom: 8px;
}

.scoreboardRibbon .date {
  background: #0054A6;
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  letter-spacing: .5px;
  margin-bottom: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  text-transform: uppercase;
  white-space: nowrap;
}

.scoreboardRibbon .team {
  font-size: 12px;
  display: block;
  clear: both;
}

.scoreboardRibbon .game {
  padding-right: 2px;
}

.scoreboardRibbon .game:last-child {
  padding-right: 0;
}

.scoreboardRibbon .game .name {
  float: left;
  clear: left;
  max-width: 105px;
  white-space: nowrap;
  word-wrap: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: bold;
}

.scoreboardRibbon .game .score {
  float: right;
  font-weight: bold;
}

.scoreboardRibbon .game .status {
  clear: both;
  font-family: "Montserrat", sans-serif;
  font-size: 11px;
  font-weight: 600;
  padding-top: 10px;
  text-transform: uppercase;
}

.scoreboardRibbon .game .boom .name {
  color: #0054A6;
}

.scoreboardRibbon .game .boom .score {
  color: #0054A6;
}

.scoreboardRibbon .in_progress .status {
  color: #0054A6;
  font-style: italic;
  font-weight: bold;
}

.scoreboardRibbon .completed .status {
  font-weight: bold;
}

@media (min-width: 1000px) {
  .col-md-3 .scoreboardRibbon .container {
    left: 25px;
    right: 25px;
  }
  .col-md-3 .scoreboardRibbon .previous_button,
  .col-md-3 .scoreboardRibbon .next_button {
    width: 18px;
  }
  .col-md-3 .scoreboardRibbon .previous_button {
    left: 4px;
  }
  .col-md-3 .scoreboardRibbon .next_button {
    right: 4px;
  }
}

/* Old class name, but I'm not sure all the places it's rendered */
.bracket-container {
  margin: 0;
  overflow: auto;
  position: relative;
  text-align: center;
  background: #FFF;
}

.theme-bracket {
  display: inline-table;
  table-layout: fixed;
  text-align: left;
  font: bold 14px "Open Sans", sans-serif;
}

.theme-bracket-round {
  display: table-cell;
  min-width: 230px;
  max-width: 330px;
}

.theme-bracket-round-title {
  text-align: center;
  text-transform: uppercase;
  padding: 10px;
}

.theme-bracket-nodes {
  list-style: none;
  padding: 1px 0;
}

.theme-bracket-depth-1 .theme-bracket-node,
.theme-bracket-depth-1 .theme-bracket-gap {
  line-height: 132px;
}

.theme-bracket-depth-2 .theme-bracket-node,
.theme-bracket-depth-2 .theme-bracket-gap {
  line-height: 264px;
}

.theme-bracket-depth-3 .theme-bracket-node,
.theme-bracket-depth-3 .theme-bracket-gap {
  line-height: 528px;
}

.theme-bracket-depth-4 .theme-bracket-node,
.theme-bracket-depth-4 .theme-bracket-gap {
  line-height: 1056px;
}

.theme-bracket-depth-5 .theme-bracket-node,
.theme-bracket-depth-5 .theme-bracket-gap {
  line-height: 2112px;
}

.theme-bracket-depth-6 .theme-bracket-node,
.theme-bracket-depth-6 .theme-bracket-gap {
  line-height: 4224px;
}

.theme-bracket-depth-7 .theme-bracket-node,
.theme-bracket-depth-7 .theme-bracket-gap {
  line-height: 8448px;
}

.theme-bracket-depth-8 .theme-bracket-node,
.theme-bracket-depth-8 .theme-bracket-gap {
  line-height: 16896px;
}

.theme-bracket-depth-9 .theme-bracket-node,
.theme-bracket-depth-9 .theme-bracket-gap {
  line-height: 33792px;
}

.theme-bracket-node {
  position: relative;
  padding: 0 10px;
}

.theme-bracket-node:before {
  content: "";
  display: block;
  position: absolute;
  width: 25px;
  top: 50%;
  right: 0;
  border-top: 1px solid #CCC;
}

.theme-bracket-node:after {
  content: "";
  display: block;
  position: absolute;
  width: 23px;
  left: 100%;
  margin-left: -1px;
  border-left: 1px solid #CCC;
}

.theme-bracket-node-upper:after,
.theme-bracket-compressible .theme-bracket-node-lower:after {
  top: 50%;
  border-bottom: 1px solid #CCC;
  bottom: 19px;
}

.theme-bracket-node-lower:after,
.theme-bracket-compressible .theme-bracket-node-upper:after {
  bottom: 50%;
  border-top: 1px solid #CCC;
  top: 21px;
}

.theme-bracket-compressible .theme-bracket-node-lower:after {
  border-top: none;
  bottom: auto;
  height: 20px;
}

.theme-bracket-compressible .theme-bracket-node-upper:after {
  border-bottom: none;
  top: auto;
  height: 20px;
}

.theme-bracket-node-leaf:before,
.theme-bracket-node-leaf:after {
  display: none;
}

.theme-bracket-game {
  position: relative;
  z-index: 1;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  margin: -1px 0;
  color: inherit;
  line-height: 1.2;
  font: bold 14px "Open Sans", sans-serif;
  text-decoration: none !important;
  padding: 15px 15px;
  -webkit-transition: background-color 0.2s ease-in;
          transition: background-color 0.2s ease-in;
}

.theme-bracket-game:hover {
  color: inherit;
  background-color: #EEE;
}

.theme-bracket-game:hover .theme-bracket-team-slot,
.theme-bracket-game:hover .theme-bracket-team-slot > * {
  border-color: #EEE;
  -webkit-transition: background-color 0.2s ease-in;
          transition: background-color 0.2s ease-in;
}

.theme-bracket-team-slot {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 0;
}

.theme-bracket-team-slot ~ .theme-bracket-team-slot {
  padding-top: 10px;
  border-right: 1px solid #CCC;
  -webkit-transition: background-color 0.2s ease-in;
          transition: background-color 0.2s ease-in;
}

.theme-bracket-team-slot > * {
  display: table-cell;
  vertical-align: middle;
  line-height: 30px;
  border-bottom: 1px solid #CCC;
  overflow: hidden;
  -webkit-transition: background-color 0.2s ease-in;
          transition: background-color 0.2s ease-in;
}

.theme-bracket-team-slot.winner .theme-bracket-team,
.theme-bracket-team-slot.winner .theme-bracket-score,
.theme-bracket-team-slot.winner .theme-bracket-team-name {
  color: #FFF;
  background: #0054A6;
}

.theme-bracket-team-logo {
  width: 32px;
  border-bottom: none;
}

.theme-bracket-team-logo img {
  display: block;
  height: 30px;
  width: 30px;
  background: #DDD;
}

.theme-bracket-seed {
  display: inline-block;
  width: 1.2em;
  font: normal 12px "Open Sans", sans-serif;
}

.theme-bracket-team {
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-left: 6px;
  padding-right: 6px;
}

.theme-bracket-team-name {
  color: #0054A6;
}

.tbd-team .theme-bracket-team-name {
  color: inherit;
  font-weight: normal;
}

.theme-bracket-score {
  width: 2em;
  padding-right: 6px;
  text-align: right;
}

.theme-bracket-game-details {
  font: normal 12px "Open Sans", sans-serif;
  font-size: 11px;
  display: table;
  table-layout: fixed;
  height: 30px;
  line-height: 1.2;
  width: 100%;
}

.theme-bracket-game-details > * {
  display: block;
  text-transform: uppercase;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 0 6px 0 32px;
}

.theme-bracket-game-details > *:first-child {
  padding-top: 5px;
}

.theme-bracket-game-details > *:only-child {
  display: table-cell;
  vertical-align: middle;
}

@media only screen and (max-width: 450px) {
  .theme-bracket {
    display: block;
  }
  .theme-bracket-round {
    display: block;
    max-width: initial;
    min-width: initial;
  }
  .theme-bracket-round + .theme-bracket-round .theme-bracket-round-title {
    margin-top: 10px;
  }
  .theme-bracket-node {
    padding: 0;
    line-height: initial !important;
  }
  .theme-bracket-node:last-child .theme-bracket-game {
    border-style: solid;
    border-width: 0;
    border-bottom-color: #ddd;
    border-bottom-width: 1px !important;
  }
  .theme-bracket-game {
    border-style: solid;
    border-width: 0;
    border-top-color: #ddd;
    border-top-width: 1px !important;
  }
  .theme-bracket-team-slot, .theme-bracket-team-slot > * {
    border-width: 0 !important;
  }
  .theme-bracket-node:before,
  .theme-bracket-node:after,
  .theme-bracket-gap {
    display: none;
  }
}

/* Bracket Select Tag */
.descendant_bracket {
  margin: 0 15px 15px;
}

/* Tooltip */
.prototip .darkgrey .content p {
  color: #ccc;
}

/* Lightbox */
#bracket-seed-list-container {
  float: right;
  margin: 10px 0;
  text-align: right;
}

#bracket-teams-container {
  float: left;
  margin: 10px 0;
}

#seed-status {
  color: #666;
  float: left;
  font-size: 10px;
  font-weight: normal;
}

#seed-status b {
  color: #333;
  font-size: 11px;
}

#bracket-seed-list,
#bracket-teams {
  background: #fef4c0;
  border: 1px solid #fef1af;
  margin: 10px 0;
  padding: 10px;
  width: 250px;
  text-align: left;
}

#bracket-seed-list {
  background: #fef4c0;
  padding: 10px 10px 10px 35px;
}

#bracket-teams {
  list-style: none;
}

#bracket-seed-list li {
  background: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-selected-bottom.png") 0 100% no-repeat;
  cursor: move;
  margin: 0 0 2px;
  padding: 0 0 3px;
}

#bracket-seed-list li p {
  background: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-selected-top.png") 0 0 no-repeat;
  color: #000;
}

#bracket-teams li {
  background: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-bottom.png") 0 100% no-repeat;
  cursor: move;
  padding: 0 0 3px;
}

#bracket-teams li p {
  background: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-top.png") 0 0 no-repeat;
  color: #a5954c;
}

#bracket-seed-list p, #bracket-teams p {
  padding: 5px 5px 2px 10px;
  line-height: 18px;
  margin: 1px 0 !important;
}

/* Seed Links */
#bracket-teams p a.seed,
#bracket-seed-list a.unseed {
  color: #bfb27b;
  cursor: pointer;
  display: inline;
  float: right;
  font-size: 9px;
  line-height: 18px;
  padding: 0 5px;
  text-decoration: underline;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
}

#bracket-teams p a.seed:hover,
#bracket-seed-list a.unseed:hover {
  background: #fef7d0;
  color: #40391d;
}

#bracket-seed-list a.seed,
#bracket-teams p a.unseed {
  display: none;
}

/* Hover */
#bracket-teams li:hover {
  background-image: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-selected-bottom.png");
}

#bracket-teams li:hover p {
  background-image: url("https://app-assets1.sportngin.com/app_images/bracketing/lightbox-team-selected-top.png");
}

/* Seed States */
.needsMore #seed-status {
  color: #666;
}

.needsMore #bracket-seed-list {
  background: #fef4c0 url("https://app-assets1.sportngin.com/app_images/bracketing/bracket-lightbox-seed-bg.png") 100% 100% no-repeat;
  padding-bottom: 35px;
}

.tooMuch #bracket-seed-list {
  background: #e7b794;
  border: 1px solid #b93d41;
}

.tooMuch #seed-status,
.tooMuch #seed-status b {
  color: #a20012;
}

.ready #bracket-seed-list {
  background: #fef9dc;
  border: 1px solid #339933;
}

.ready #seed-status {
  color: #339933;
}

/* Roster & Game Center Buttons
  -------------------------------------------------------------------- */
#sport-slider {
  background: #f2f2f2;
  border: 1px solid #e6e6e6;
  border-radius: 2px;
  clear: both;
  margin: 0px 0px 15px 0px;
  overflow: hidden;
  position: relative;
  padding: 5px;
  display: block;
}

#sport-slider .inner-wrap {
  display: block;
  min-height: 70px;
  /* Slider Track */
}

#sport-slider .inner-wrap #track {
  bottom: 0;
  clear: both;
  height: 10px;
  position: absolute;
  width: 100%;
  z-index: 100;
  background-color: #ddd;
  border: 1px solid #ccc;
  display: none;
}

#sport-slider .inner-wrap #track #handle {
  background-color: #888;
  cursor: move;
  height: 10px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100px;
  z-index: 100;
  border-radius: 1px;
}

.sportsPage .prototip {
  display: none !important;
}

#scrollbox {
  position: absolute;
  width: 1%;
}

#track-left {
  background-position: 0 -10px;
  float: left;
}

#track-right {
  background-position: -6px -10px;
  float: right;
}

#track-left,
#track-right {
  height: 10px;
  width: 10px;
}

/* Scrollable Container
  -------------------------------------------------------------------- */
#scroll-container {
  padding: 0 0 15px;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  min-height: 70px;
}

#scroll-container::-webkit-scrollbar {
  display: none;
}

/* Player/Roster Buttons
  -------------------------------------------------------------------- */
#sport-slider li {
  margin: 0 0 0 2px;
}

/* Game Buttons
  -------------------------------------------------------------------- */
#sport-slider .month {
  background: url("https://app-assets1.sportngin.com/app_images/months.gif") 0 0;
  display: inline-block;
  float: left;
  height: 45px;
  margin: 2px 2px 0 0;
  width: 10px;
  text-indent: -999999px;
}

/* Months */
#sport-slider .mth-jan {
  background-position: 0 0;
}

#sport-slider .mth-feb {
  background-position: -10px 0;
}

#sport-slider .mth-mar {
  background-position: -20px 0;
}

#sport-slider .mth-apr {
  background-position: -30px 0;
}

#sport-slider .mth-may {
  background-position: -40px 0;
}

#sport-slider .mth-jun {
  background-position: -50px 0;
}

#sport-slider .mth-jul {
  background-position: -60px 0;
}

#sport-slider .mth-aug {
  background-position: -70px 0;
}

#sport-slider .mth-sep {
  background-position: -80px 0;
}

#sport-slider .mth-oct {
  background-position: -90px 0;
}

#sport-slider .mth-nov {
  background-position: -100px 0;
}

#sport-slider .mth-dec {
  background-position: -110px 0;
}

#sport-slider .mth-tbd {
  background-position: -120px 0;
}

#sport-slider .games {
  float: left;
  display: inline-block;
}

#sport-slider .games li {
  position: static;
}

#sport-slider .games a {
  padding: 3px 4px 3px;
}

#sport-slider .games span {
  display: block;
  text-align: center;
}

#sport-slider .games .dayOfTheWeek {
  font: normal 8px "Montserrat", sans-serif;
  text-transform: uppercase;
}

#sport-slider .games .date {
  font: normal 18px "Montserrat", sans-serif;
}

#sport-slider .games .outcome {
  font-weight: normal;
  margin: 0;
  text-align: center;
}

/* Prototip Tooltips - General
    -------------------------------------------------------------------- */
#tooltips {
  display: none;
}

/* This div is where the tooltips are stored in the markup. Prototip grabs them from here, and clones/displays them in the right place when you hover over the trigger */
.prototip .ngin .tooltip-outer {
  background: #e6e6e6;
  border: 1px solid #333;
  position: relative;
  width: 320px;
}

.prototip .ngin .tooltip-outer h3 {
  background: #363636 url("https://app-assets1.sportngin.com/app_images/tooltips/headerBG.gif") 0 0 repeat-x;
  border-bottom: 1px solid #333;
  color: #fff;
  font-size: 1.1em;
  line-height: 30px;
  padding: 0 10px;
  text-align: left;
}

.prototip .ngin .tooltip-inner {
  height: 94px;
  position: relative;
  width: 200px;
}

.prototip .ngin .mult_games {
  width: 350px;
}

.prototip .ngin .rosterTooltip {
  width: 200px;
}

.prototip_StemWrapper {
  margin: 8px 0 0 !important;
}

/* Player */
.stats {
  margin: 0 0 10px 85px;
}

.stats .stats-major {
  font-weight: bold;
  font-size: 18px;
  display: block;
  padding: 15px 5px 0px 15px;
  width: auto;
}

.stats .stats-major:after {
  content: '';
  display: block;
  max-width: 100px;
  margin: auto;
  border-bottom: 1px solid #ddd;
  padding-top: 5px;
}

.stats .stats-minor {
  display: block;
  padding: 5px 0px 0px 0px;
  width: auto;
}

/* Tool tip */
.prototip .ngin .tooltip-inner .stats {
  float: left;
  margin: 0;
  position: absolute;
  left: 94px;
  top: 25px;
  text-align: center;
}

.prototip .ngin .tooltip-inner .stats .position {
  background: url("https://app-assets1.sportngin.com/app_images/tooltips/bio-groove.png") 50% 100% no-repeat;
  font-weight: bold;
  font-size: 18px;
  display: block;
  padding: 0 0 15px;
  width: 90px;
}

.prototip .ngin .tooltip-inner .stats .bio {
  display: block;
  padding: 10px 0 5px;
  width: 100px;
}

/* Game Score */
.score-home {
  background: #e6e6e6 url("https://app-assets1.sportngin.com/app_images/tooltips/vs-r.png") 0% 50% no-repeat;
  float: right;
  width: 160px;
}

.score-away {
  background: #e6e6e6 url("https://app-assets1.sportngin.com/app_images/tooltips/vs-l.png") 100% 50% no-repeat;
  float: left;
  width: 160px;
}

.mult_games .score-away, .mult_games .score-home {
  width: 175px;
}

.score-away .score, .score-home .score {
  font: bold 48px "Montserrat", sans-serif;
}

.prototip .ngin .game .tooltip-inner {
  min-height: 120px;
  width: 320px;
}

.prototip .ngin .game {
  width: 320px;
}

.prototip .score {
  border: none;
  text-align: center;
}

/* Team Name */
.score-home .teamName, .score-away .teamName {
  font-size: 12px;
  height: 16px;
  line-height: 16px;
  overflow: hidden;
  text-transform: uppercase;
  text-align: center;
}

.score-home .teamName {
  padding: 0 10px 0 15px;
}

.score-away .teamName {
  padding: 0 15px 0 10px;
}

.mult_games .teamName {
  background: none;
  border: none;
  font-size: 10px;
  height: 30px;
  line-height: 35px;
}

.mult_games .score-away .teamName {
  color: #666;
  text-align: left;
  padding: 0 0 2px 5px;
}

.mult_games .score-home .teamName {
  color: #666;
  text-align: right;
  padding: 0 5px 2px 0;
}

/* Game Listing */
.game-listing {
  background: url("https://app-assets1.sportngin.com/app_images/tooltips/game-listingBG.gif") 0 100% repeat-x;
}

.game-listing .sport-colors {
  min-height: 30px;
  height: 30px;
}

.game-listing .score-home {
  background: transparent url("https://app-assets1.sportngin.com/app_images/tooltips/vs-sm-lt-r.gif") 0 5px no-repeat;
}

.game-listing .score-away {
  background: transparent url("https://app-assets1.sportngin.com/app_images/tooltips/vs-sm-lt-l.gif") 100% 5px no-repeat;
}

.game-listing .score {
  font: normal 24px "Montserrat", sans-serif;
}

.game-listing .score-home .score {
  background: none;
  margin: 0 75px 0 0;
  float: right;
  padding: 0;
  text-align: right;
}

.game-listing .score-away .score {
  background: none;
  margin: 0 0 0 75px;
  float: left;
  padding: 0;
  text-align: left;
}

.game-listing p {
  background: #ccc;
  border-top: 1px solid #b3b3b3;
  padding: 10px 0;
  text-align: center;
}

/* Page Title
-------------------------------------------------------------------- */
#sport-header .pageTitle {
  font-size: 32px;
  margin: 0 15px;
  padding: 20px 0 10px;
  text-align: center;
}

.rosterPlayerInfoElement {
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: center;
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 3px !important;
}

@media screen and (min-width: 500px) {
  .rosterPlayerInfoElement {
    position: relative;
    padding-bottom: 6px;
    text-align: left;
  }
}

.rosterPlayerInfoElement h3 {
  margin-bottom: 20px;
  background-color: transparent !important;
  border-color: transparent !important;
  color: #666 !important;
  text-transform: none;
  font-size: 2rem;
  position: relative;
}

@media screen and (min-width: 500px) {
  .rosterPlayerInfoElement h3 {
    width: calc(100% - 200px - 20px);
    float: right;
  }
}

.rosterPlayerInfoElement h3 small {
  display: inline-block;
  padding: .25em .5em;
  font-size: 1.25rem;
  background-color: #0054A6;
  color: #fff;
}

.rosterPlayerInfoElement .RosterPlayerInfoImage img {
  display: block;
  max-height: 250px;
  max-width: 200px;
  margin: auto;
}

@media screen and (min-width: 500px) {
  .rosterPlayerInfoElement .RosterPlayerInfoImage img {
    margin: 0;
    float: left;
  }
}

.rosterPlayerInfoElement table {
  display: inline-block;
  margin-top: 20px;
  margin-bottom: 20px;
}

@media screen and (min-width: 500px) {
  .rosterPlayerInfoElement table {
    max-width: calc(100% - 200px - 20px);
    margin-left: 20px;
    margin-top: 0;
  }
}

.rosterPlayerInfoElement th,
.rosterPlayerInfoElement td {
  font-size: 1rem;
  text-align: left;
}

.rosterPlayerInfoElement tr:not(:first-child) th,
.rosterPlayerInfoElement tr:not(:first-child) td {
  padding-top: 10px;
}

.rosterPlayerInfoElement th {
  padding-right: 20px;
}

.rosterPlayerInfoElement th:after {
  content: ':';
}

#rosterPlayerConnections-search,
.rosterPlayerToConnect {
  background: #fdf4bc;
  border: 1px solid #fde686;
  margin: 10px 0;
  padding: 10px;
}

.rosterPlayerToConnect img {
  float: left;
  height: 50px;
  margin: 0 5px 0 0;
  width: 50px;
}

.rosterPlayerToConnect h2 {
  margin: 0 0 5px 0;
}

.rosterPlayerToConnect h3 {
  margin: 5px 0;
}

#lightboxBody .rosterPlayerConnections p {
  line-height: 140%;
  margin-bottom: 10px;
}

.rosterPlayerConnection-header {
  padding: 5px 0 0;
}

.rosterPlayerConnection-header img {
  margin: -5px 10px 0 0;
  height: 70px;
  width: 70px;
}

.rosterPlayerToConnect .rosterPlayerConnections {
  border-top: 1px dotted #fde686;
  margin: 10px 0 -10px;
  padding: 10px 0 0;
}

.rosterPlayerConnections {
  clear: both;
  line-height: 18px;
}

.rosterPlayerConnections p,
.rosterPlayerConnections h3 {
  clear: both;
}

.rosterPlayerConnections p strong {
  font-size: 13px;
}

.rosterPlayerConnections p img {
  float: left;
  height: 50px;
  margin: 0 10px 0 0;
  width: 50px;
}

#rosterPlayerConnections-search h3,
#rosterPlayerConnections-search-results h3 {
  margin-bottom: 5px;
}

#rosterPlayerConnections-search-results {
  margin: 0 10px;
}

#rosterPlayerConnections-search-results i {
  background: url("https://app-assets1.sportngin.com/app_images/miniLoader.gif") 0 50% no-repeat;
  padding-left: 20px;
}

.rosterPlayerInfoElement-template {
  margin-bottom: 10px;
  position: relative;
  display: block;
  margin: auto;
  width: 100%;
}

.rosterPlayerConnection-checked, .rosterPlayerConnection-unchecked {
  border-radius: 4px;
  margin: 0 5px 0 0;
  padding: 2px 3px;
}

.rosterPlayerConnection-checked {
  background: #fcf0ab;
  border: 1px solid #fde686;
}

.rosterPlayerConnection-unchecked {
  background: #fbe98b;
  border: 1px solid #fccd22;
}

.defaultPlayerInfo h3 {
  padding-top: 31px;
}

#rosterPlayerConnections-button {
  background: #fff;
  color: #333;
  cursor: pointer;
  font-size: 12px;
  line-height: normal;
  padding: 5px 0 5px 0;
  position: absolute;
  top: 0;
  left: 0;
}

#rosterPlayerConnections-button .teamLogo-tiny {
  display: inline-block;
  margin-right: 3px;
  vertical-align: middle;
}

#rosterPlayerConnections-button i {
  display: inline-block;
  margin-left: 4px;
  margin-top: -2px;
  vertical-align: middle;
}

#rosterPlayerConnections-button i:after {
  border-radius: 20px;
  border: 1px solid #777;
  content: "\f078";
  display: inline-block;
  font: 12px/1em FontAwesome;
  padding: 4px;
  text-align: center;
}

#rosterPlayerConnections-button.rpc-open i:after {
  content: "\f077";
}

#rosterPlayerConnections-dropdown {
  box-shadow: none;
  font-size: 12px;
}

#rosterPlayerConnections-dropdown > div {
  background: #fff;
  border: 1px solid #777;
  padding: 8px 10px;
  position: absolute;
  top: 31px;
}

#rosterPlayerConnections-dropdown h3 {
  font: inherit;
  float: none;
  margin: 0;
  padding: 0 0 2px;
  width: auto;
}

#rosterPlayerConnections-dropdown li {
  list-style: none;
  padding: 5px 0 0;
}

#rosterPlayerConnections-dropdown .teamLogo-tiny {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

@media (max-width: 499px) {
  .defaultPlayerInfo h3 {
    padding-top: 0;
  }
  #rosterPlayerConnections-button {
    position: static;
    display: block;
    margin-top: 10px;
  }
  #rosterPlayerConnections-dropdown {
    left: 0;
    position: absolute;
    text-align: left;
    width: 100%;
  }
  #rosterPlayerConnections-dropdown > div {
    display: table;
    left: 50%;
    position: relative;
    top: 100%;
    -webkit-transform: translatex(-50%);
            transform: translatex(-50%);
  }
}

/* GAME/SHOW CONTENT */
/* FIELD OF PLAY & LIVE VIDEO */
#LiveGame {
  position: relative;
  margin-bottom: 25px;
  padding-top: 40px;
  clear: both;
}

#LiveGame .background,
#LiveGame .background .graphics {
  background: #000;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}

#LiveGame .background .graphics {
  min-height: 535px;
}

#LiveGame .background .graphics * {
  height: 100%;
  left: 50%;
  margin-left: -500px;
  position: absolute;
  top: 0;
  width: 1000px;
}

#LiveGame .background .top {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/fop_bg_top.png") center top;
  height: 150px;
}

#LiveGame .background .mid {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/fop_bg_mid.png") center top;
  height: auto;
  top: 150px;
  bottom: 384px;
}

#LiveGame .background .bottom {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/fop_bg_bottom.png") center top;
  height: 384px;
  top: auto;
  bottom: 0;
}

#LiveGame .background .awayTeamFade {
  width: 700px;
}

#LiveGame .background .homeTeamFade {
  width: 700px;
  margin-left: -200px;
}

.gameShow #GS_Video {
  overflow-x: auto;
  overflow-y: visible;
}

.gameShow #GS_Video > iframe {
  max-width: 100%;
}

#GS_Video {
  text-align: center;
  padding: 0 20px;
  position: relative;
  top: -10px;
  margin: 25px 0;
}

#currentPlay + #GS_Video {
  top: -25px;
}

#GS_VideoWrap {
  display: inline-block;
  zoom: 1;
  *display: inline;
  background: #000;
  border: 13px outset #222;
  -o-border-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/video_border.png") 30 repeat;
  border-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/video_border.png") 30 repeat;
  box-shadow: 0 15px 30px #000;
}

#GameLiveVideo {
  background: #000;
}

#GameLiveVideo object {
  display: block;
  margin: 0 auto;
}

/* MAIN SPORT ID */
#GameShowContent {
  margin: 30px 15px 15px;
  overflow: visible;
  position: relative;
  font-size: 100%;
}

#GameShowContent a {
  text-decoration: none;
}

#GameShowContent .rapidContentGeneral,
#GameShowContent #contentTabsLoader {
  width: 70%;
  position: relative;
  z-index: 3;
  background: white;
  /* Old browsers */
  overflow: hidden;
  min-height: 400px;
}

#GameShowContent .tab_menu-listLoader {
  padding: 100px 0;
  min-height: 150px;
}

#GameShowContent #tab_gs3_game_stats_content.rapidContentGeneral {
  width: 100%;
}

#GameShowContent.noComments .rapidContentGeneral, #GameShowContent.noComments #contentTabsLoader {
  width: 100%;
}

#GameShowContent span.team_logo img {
  border-radius: 5px 5px 5px 5px;
  vertical-align: middle;
}

#GameShowContent li {
  list-style: none;
}

/* TOP LEVEL SECTIONS */
#GameShowContent .game_info {
  overflow: hidden;
}

/* TABBED NAVIGATION */
#GameShowContent .tab_menu {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
      user-select: none;
  overflow: hidden;
  width: 70%;
  box-shadow: inset 0 -1px 0 #efefef;
}

#GameShowContent .tab_menu #iscoreGame {
  float: right;
  text-align: right;
  padding-right: 10px;
}

#liveGameSimple {
  padding-top: 0;
  margin-bottom: 10px;
}

#GameShowContent.game_show_nextgen #scorekeeperGame {
  float: right;
  text-align: right;
  padding-top: 7px;
  padding-right: 8px;
  color: #bbb;
}

#GameShowContent .tab_menu #iscoreTimestamp {
  color: #aaa;
}

/* MAIN GAME DATA COLUMN */
#GameShowContent ul.tab_menu-list {
  padding: 0 10px;
  list-style-type: none;
  float: left;
  position: relative;
  z-index: 4;
  overflow: hidden;
}

#GameShowContent li.tab_menu-tab {
  float: left;
  border-top: 1px solid #efefef;
  border-right: 1px solid #efefef;
  border-left: 1px solid #efefef;
  border-bottom: 1px solid #efefef;
  text-align: center;
}

#GameShowContent li.tab_menu-tab a {
  display: block;
  padding: 12px 10px 8px;
  color: #666;
  font-weight: bold;
  background: #E7E7E7;
}

#GameShowContent li.tab_menu-tab.selected a {
  background-color: #fff;
  color: #333;
  border-bottom: none;
}

#GameShowContent li.tab_menu-tab a:hover {
  color: #333;
}

/* SIDEBAR */
.GameShowDataColumn {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  box-orient: vertical;
  background: #DDD;
  position: absolute;
  top: 75px;
  bottom: 25px;
  right: 0;
  width: 30%;
  overflow: auto;
  border-bottom: solid 1px #fff;
  border-radius: 0 5px 5px 0;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

.GameShowDataColumn .gameShowColumnSection {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  box-orient: vertical;
  -webkit-box-flex: 100;
  -moz-box-flex: 100;
  box-flex: 100;
  width: 100%;
}

.GameShowDataColumn .gameShowColumnHeader {
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  margin: 0;
  padding: 1px;
  background: #ccc;
  /* Old browsers */
}

#GameShowContent .GameShowDataColumn .gameShowColumnHeader h3 {
  padding: 10px;
  margin: 0;
}

#GameShowContent .GameShowDataColumn .gameShowColumnHeader h3 .action {
  float: right !important;
  margin-top: -2px;
}

#GameShowContent .GameShowDataColumn .gameShowColumnHeader.collapsable_handle h3 {
  background-image: url("https://app-assets1.sportngin.com/app_images/user/expand_arrows.png");
  background-position: -92px -39px;
  background-repeat: no-repeat;
  padding-left: 24px;
}

#GameShowContent .GameShowDataColumn .collapsed .gameShowColumnHeader.collapsable_handle h3 {
  background-image: url("https://app-assets1.sportngin.com/app_images/user/expand_arrows.png");
  background-position: -142px 11px;
}

.GameShowDataColumn .gameShowColumnContent {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  overflow: auto;
  padding2: 0 5px;
  width: 100%;
}

.GameShowDataColumn .gameShowColumnSection.news {
  box-flex: 0;
  max-height: 50%;
}

.GameShowDataColumn .gameShowColumnSection:first-child .gameShowColumnHeader {
  border-radius: 0 5px 0 0;
}

.GameShowDataColumn .gameShowColumnSection:last-child .gameShowColumnContent {
  border-radius: 0 0 5px 0;
}

/* MAIN CONTENT CONTAINERS */
.GameShowDataContainer {
  padding: 20px 0 0 20px;
}

.GameShowDataContainer .StatWidgetGroup {
  background: #FFF;
  /* Old browsers */
  margin: 0 10px 10px 10px;
  overflow: hidden;
  position: relative;
  z-index: 25;
}

.GameShowDataContainer.game_stats .StatWidgetGroup {
  border-radius: 5px;
}

.GameShowDataContainer .StatWidgetGroup.inset {
  border: 1px solid #efefef;
}

.GameShowDataContainer.game_summary .StatWidgetGroup.inset,
.GameShowDataContainer.game_preview .StatWidgetGroup.inset {
  background: #FFF;
  /* Old browsers */
}

.StatWidgetTabsGroup {
  margin: -10px 20px 0 0;
  overflow: hidden;
  padding-top: 10px;
}

/*////////// MAIN STAT WIDGET CONTAINERS //////////*/
.StatWidgetContainer {
  display: block;
  float: left;
  overflow: hidden;
  padding: 20px 0 0 20px;
  width: 100%;
}

.StatWidgetContainer-sub {
  overflow: hidden;
}

.StatWidgetColumn {
  display: block;
  float: left;
}

.StatWidget {
  display: block;
  margin: 0 20px 20px 0;
}

.StatWidgetHolder .StatWidgetContainer-sub {
  margin-right: 0;
}

/*////////// INDIVIDUAL STAT WIDGETS (SPORT AGNOSTIC) //////////*/
.z10 {
  z-index: 10;
}

.z9 {
  z-index: 9;
}

.z8 {
  z-index: 8;
}

.z7 {
  z-index: 7;
}

.z6 {
  z-index: 6;
}

.z5 {
  z-index: 5;
}

.z4 {
  z-index: 4;
}

.z3 {
  z-index: 3;
}

.z2 {
  z-index: 2;
}

.z1 {
  z-index: 1;
}

.width25 {
  width: 25%;
}

.width33 {
  width: 33.333333%;
}

.width50 {
  width: 50%;
}

.width66 {
  width: 66.666666%;
}

.width75 {
  width: 75%;
}

.width100 {
  width: 100%;
}

#GameShowContent .StatWidgetHolder p.noEntry,
#GameShowContent .StatWidget span.no_stats {
  border-radius: 5px;
  display: block;
  width: 100%;
  padding: 5px 0;
  text-align: center;
}

#GameShowContent .team_stats-list .noEntry {
  display: block;
  border-top: none;
  font-style: normal;
  font-size: 9px;
  background-color: #cccccc;
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/diagonal_stripes.png");
}

#GameShowContent .StatWidgetTabsGroup-inset {
  background: #666666;
  /* Old browsers */
  border-radius: 5px;
  box-shadow: inset 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
  margin: 0 20px 0 0;
}

#GameShowContent ul.StatWidgetTabs-inset {
  border-bottom: solid 1px #fff;
  list-style-type: none;
  margin-bottom: 20px;
  overflow: hidden;
  width: 100%;
}

#GameShowContent ul.StatWidgetTabs-inset.tabs-1 li {
  width: 100%;
}

/* Sets tab width for 1-list item */
#GameShowContent ul.StatWidgetTabs-inset.tabs-2 li {
  width: 50%;
}

/* Sets tab width for 2-list items */
#GameShowContent ul.StatWidgetTabs-inset.tabs-3 li {
  width: 33.333333%;
}

/* Sets tab width for 3-list items */
#GameShowContent ul.StatWidgetTabs-inset a:link,
#GameShowContent ul.StatWidgetTabs-inset a:visited {
  color: #ddd;
}

#GameShowContent ul.StatWidgetTabs-inset a:hover,
#GameShowContent ul.StatWidgetTabs-inset a:active {
  color: #fff;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li:before {
  content: none;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li {
  background: rgba(255, 255, 255, 0.35);
  color: #ccc;
  display: block;
  float: left;
  margin: 0;
  padding: 10px 0;
  text-align: center;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.25);
  text-transform: uppercase;
}

#GameShowContent ul.StatWidgetTabs-inset.stats_toggle li {
  color: #ddd;
  cursor: pointer;
}

#GameShowContent ul.StatWidgetTabs-inset.stats_toggle li:hover {
  color: #fff;
}

#GameShowContent .GameShowDataContainer.play_by_play .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li {
  width: 20%;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li.selected,
#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li:hover,
#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li:active {
  background: none;
  color: #fff;
  position: relative;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.5);
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li.selected a {
  color: #fff;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/border-black.png"), url("https://app-assets1.sportngin.com/app_images/game_show_3/border-white.png");
  background-repeat: repeat-y;
  background-position: right, left;
  position: relative;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li:first-child {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/border-black.png");
  background-repeat: repeat-y;
  background-position: right;
}

#GameShowContent .StatWidgetTabsGroup-inset ul.StatWidgetTabs-inset li:last-child {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/border-white.png");
  background-repeat: repeat-y;
  background-position: left;
}

.StatWidgetTabs-inset .carrot {
  display: none;
}

.StatWidgetTabs-inset li.selected .carrot {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/carrot-up.png");
  background-repeat: no-repeat;
  background-position: 50% bottom;
  display: block;
  height: 38px;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

#GameShowContent ul.StatWidgetTabs {
  list-style-type: none;
  width: 100%;
}

#GameShowContent ul.StatWidgetTabs li {
  background: #b2b2b2;
  border-radius: 5px 0px 0px 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  color: #666;
  display: block;
  float: left;
  margin: 0 0 0 0;
  padding: 0 0 0 20px;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  height: 3em;
  line-height: 3em;
  position: relative;
}

#GameShowContent ul.StatWidgetTabs li h3 {
  display: block;
  float: left;
}

#GameShowContent ul.StatWidgetTabs li span {
  display: block;
  float: left;
  height: 43px;
  left: 100%;
  width: 69px;
  position: absolute;
  top: -7px;
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/tab-edge-right.png");
  background-color: transparent;
}

x-#GameShowContent ul.StatWidgetTabs li:before {
  content: url("https://app-assets1.sportngin.com/app_images/game_show_3/tab-edge-right-gray.png");
  position: absolute;
  left: 100%;
  top: -7px;
}

#GameShowContent ul.StatWidgetTabs li.selected {
  background: #fff;
  position: relative;
  z-index: 50;
}

#GameShowContent ul.StatWidgetTabs li.more_stats {
  background: none;
  box-shadow: none;
  display: block;
  float: right;
  opacity: .5;
  filter: Alpha(opacity=50);
  padding: 0;
  text-shadow: 1px 1px 0px white;
}

#GameShowContent ul.StatWidgetTabs li.more_stats:before {
  content: none;
}

#GameShowContent ul.StatWidgetTabs li.live_game_sheet {
  background: #cccccc;
  background-image: #898989;
  cursor: pointer;
  padding: 0 10px;
  border-radius: 5px;
  border-top: solid 1px #e5e5e5;
  color: black;
  font-size: 10px;
  font-weight: bold;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.25);
  opacity: 1;
  height: 20px;
  line-height: 20px;
  border: solid 1px #666666;
  border-top: initial;
  border-top: solid 1px #333333;
  border-bottom: solid 1px white;
  float: right;
}

#GameShowContent ul.StatWidgetTabs li.live_game_sheet:hover {
  background-image: #424242;
  color: #fff;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.25);
}

#GameShowContent ul.StatWidgetTabs-mini {
  list-style-type: none;
  width: 100%;
}

/* COMBINE THESE -mini STYLES WITH REGULAR STYLES WHERE POSSIBLE */
#GameShowContent ul.StatWidgetTabs-mini li {
  background: #b2b2b2;
  border-radius: 5px 0px 0px 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  color: #666;
  display: block;
  float: left;
  margin: 0 20px 0 0;
  padding: 0 0 0 1em;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  height: 2.5em;
  line-height: 2.5em;
  position: relative;
}

#GameShowContent ul.StatWidgetTabs-mini li:before {
  content: url("https://app-assets1.sportngin.com/app_images/game_show_3/tab-edge-right-gray.png");
  position: absolute;
  left: 100%;
  top: -7px;
}

#GameShowContent ul.StatWidgetTabs-mini li.selected {
  background: #fff;
  position: relative;
  z-index: 50;
}

#GameShowContent ul.StatWidgetTabs-mini li.selected:before {
  content: url("https://app-assets1.sportngin.com/app_images/game_show_3/tab-edge-right.png");
  position: absolute;
  left: 100%;
  top: -7px;
}

#GameShowContent ul.StatWidgetTabs-mini li.more_stats {
  background: none;
  box-shadow: none;
  display: block;
  float: right;
  opacity: .5;
  filter: Alpha(opacity=50);
  padding: 0;
  text-shadow: 1px 1px 0px white;
}

#GameShowContent ul.StatWidgetTabs-mini li.more_stats:before {
  content: none;
}

/* PLAYER STAT WIDGET - LEADER */
.StatWidget.player_stat-leader-header {
  background: #fff;
  color: #444;
  margin: 0 30px 0 10px;
  padding: 0;
  text-align: left;
}

.StatWidget.player_stat-leader-header div {
  display: block;
  height: 100%;
  padding: 5px 0;
  width: 100%;
}

span.player_stat-leader-header {
  font-size: 1.125em;
  font-weight: 600;
  color: #0054A6;
  text-align: center;
  width: 100%;
}

#GameShowContent .player_stat-leader {
  background: white;
  /* Old browsers */
  color: #fff;
  font-weight: bold;
  padding: 10px;
  overflow: hidden;
  text-transform: uppercase;
}

.player_stat-leader div {
  overflow: hidden;
  position: relative;
}

.player_stat-leader .player_photo {
  display: block;
  margin: 0 0 10px 0;
  position: absolute;
  width: 105px;
  height: 105px;
  top: 0;
  left: 0;
}

.player_stat-leader .player_photo span.player_photo_image {
  display: block;
  width: 100px;
  height: 100px;
  border: 3px solid #f0f0f0;
  border-radius: 50%;
  background-clip: padding-box;
  overflow: hidden;
}

.player_stat-leader .player_photo span.player_photo_image img.portrait {
  display: block;
  width: 105%;
  margin: -2% 0 0 -2%;
}

.player_stat-leader .player_photo span.player_photo_image img.landscape {
  height: 100%;
  vertical-align: middle;
  margin: -9999px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_photo span.player_photo_image {
  line-height: 58px;
}

.player_stat-leader .player_statbox {
  display: block;
  margin: 0 0 5px 110px;
  height: 100px;
}

.player_stat-leader .player_statbox span.statbox_stat {
  font-size: 2.5em;
  height: 60%;
  color: #333;
  background: #fff;
  line-height: 70px;
}

.player_stat-leader .player_statbox span.statbox_category {
  font-size: .875em;
  height: 40%;
  color: #0054A6;
  background: #fff;
  line-height: 16px;
  text-decoration: none;
}

.player_stat-leader .player_statbox span.statbox_category span {
  display: inline-block;
  line-height: 100%;
  vertical-align: middle;
}

.player_stat-leader .player_statbox span {
  display: block;
  text-align: center;
}

.player_stat-leader ul {
  font-size: 12px;
  height: 30px;
}

.player_stat-leader ul li {
  line-height: 30px;
  text-indent: 10px;
  vertical-align: middle;
}

.player_stat-leader .player_no {
  clear: left;
  display: block;
  float: left;
  text-align: center;
  text-indent: -4px;
  text-transform: none;
  width: 50px;
}

.playerStatLeaderElement .player_stat-leader .player_name {
  display: block;
  font-size: 1.125em;
  font-weight: 600;
  color: #0054A6;
  background: #fff;
  float: left;
  max-height: 30px;
  text-transform: none;
  overflow: hidden;
  text-indent: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.GameShowDataContainer.game_preview .player_stat-leader ul li.player_name {
  max-width: 185px;
}

.GameShowDataContainer.game_summary .player_stat-leader ul li.player_name {
  max-width: 120px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_name {
  max-width: 120px;
}

.GameShowDataContainer.game_preview .player_stat-leader .player_name {
  max-width: 180px;
}

.player_stat-leader .player_stats-extra {
  clear: left;
  display: block;
  float: left;
  width: 100%;
}

.player_stat-leader .player_stats-extra ul {
  background-image: none;
  color: #333;
  font-weight: normal;
  margin-top: 10px;
  text-shadow: none;
}

.player_stat-leader .player_stats-extra ul:before {
  display: table;
}

.player_stat-leader .player_stats-extra ul:after {
  clear: both;
}

.player_stat-leader .player_stats-extra ul li {
  display: block;
  float: left;
  font-size: .875em;
  background-color: #666;
  color: #fff;
  font-weight: 600;
  height: 56px;
  margin-left: 0px;
  text-align: center;
  text-indent: 0;
}

.player_stat-leader .player_stats-extra ul li span {
  display: block;
  height: 50%;
  vertical-align: middle;
  width: 100%;
}

.player_stat-leader .player_stats-extra ul li span.stat {
  background-color: #666;
  color: #333;
  background: #fff;
  border-bottom: 1px solid #f0f0f0;
  font-weight: 400;
}

.player_stat-leader .player_stats-extra ul li:first-child {
  margin-left: 0;
}

.player_stat-leader .player_stats-extra.stat_5 ul li {
  width: 20%;
}

.player_stat-leader .player_stats-extra.stat_4 ul li {
  width: 25%;
}

.player_stat-leader .player_stats-extra.stat_3 ul li {
  width: 33.333333%;
}

.player_stat-leader .player_stats-extra.stat_2 ul li {
  width: 50%;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_stats-extra {
  display: none;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_photo {
  display: block;
  margin: 0 0 10px 0;
  position: absolute;
  width: 60px;
  height: 60px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_statbox {
  height: 60px;
  margin: 0 0 10px 70px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_statbox span.statbox_stat {
  font-size: 21px;
  height: 50%;
  line-height: 25px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_statbox span.statbox_category {
  font-size: 10px;
  height: 50%;
  line-height: 30px;
}

.GameShowDataContainer.game_summary .player_stat-leader ul {
  background-position: 0 50%;
  font-size: 10px;
  height: 30px;
}

.GameShowDataContainer.game_summary .player_stat-leader ul li {
  line-height: 30px;
  text-indent: 5px;
}

.GameShowDataContainer.game_summary .player_stat-leader .player_no {
  background-position: -20px 50%;
  text-align: center;
  text-indent: -5px;
  width: 35px;
}

/* TEAM STAT WIDGET - COMPARISON */
#GameShowContent .StatWidgetContainer.team_stat-comparison {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/vertical_divider.png") repeat-y 50% 50%;
}

#GameShowContent .homeTeam, #GameShowContent .awayTeam {
  background: transparent;
  background-color: #fff;
}

.team_stat-comparison .stat_category {
  text-transform: uppercase;
}

#GameShowContent .team_stat-comparison h3 {
  margin-bottom: 5px;
}

#GameShowContent .team_stat-comparison .stat-bar_graph {
  margin-bottom: 5px;
  overflow: hidden;
  width: 100%;
}

.team_stat-comparison .stat-bar_graph .awayTeam,
.team_stat-comparison .stat-bar_graph .homeTeam {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/stat_comparison-shine.png");
  background-repeat: repeat-x;
  background-position: 50% 50%;
  display: block;
  float: left;
  height: 30px;
  max-width: 98%;
  min-width: 2%;
}

#tab_gs3_game_summary_content .team_stat-comparison .stat-bar_graph .awayTeam,
#tab_gs3_game_summary_content .team_stat-comparison .stat-bar_graph .homeTeam {
  max-width: 88%;
  min-width: 12%;
}

#tab_gs3_player_stats_content .player_stats-list-header .teamLogo-tiny {
  margin-top: 4px;
}

.team_stat-comparison .stat-bar_graph .awayTeam {
  border-radius: 5px 0px 0px 5px;
}

.team_stat-comparison .stat-bar_graph .homeTeam {
  border-radius: 0px 5px 5px 0px;
}

.team_stat-comparison .stat_totals {
  display: block;
  float: left;
  text-transform: uppercase;
}

.team_stat-comparison .stat_totals:last-child {
  float: right;
  text-align: right;
}

.team_stat-comparison .stat_totals h2 {
  color: #333;
  display: block;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.75);
}

.team_stat-comparison .stat-bar_graph .awayTeam span img,
.team_stat-comparison .stat-bar_graph .homeTeam span img {
  padding: 5px;
  vertical-align: middle;
}

.team_stat-comparison .stat-bar_graph .homeTeam span img {
  float: right;
}

#GameShowContent .vertical_graph-container {
  background: #ccc;
  border-radius: 5px 5px 5px 5px;
  overflow: hidden;
  padding: 10px;
  width: 100%;
}

#GameShowContent .vertical_graph-category {
  display: block;
  float: left;
  text-align: center;
  width: 50%;
}

#GameShowContent .vertical_graph-category h3 {
  clear: both;
  display: block;
  text-transform: uppercase;
}

#GameShowContent .vertical_graph-single {
  display: block;
  float: left;
}

#GameShowContent .vertical_graph-bar {
  display: block;
  height: 50px;
  width: 30px;
}

/* PLAYER STAT WIDGET - LIST */
#GameShowContent .table_container table thead th {
  white-space: nowrap;
  padding: 0 5px;
}

#GameShowContent .table_container table td.player_name {
  white-space: nowrap;
  padding-right: 20px;
}

#GameShowContent .table_container {
  background: #ffffff;
  margin: auto;
  padding: 10px 20px 20px 20px;
  border: 1px solid #efefef;
}

.GameShowDataContainer.play_by_play .table_container {
  margin: 0 20px 20px 0;
}

.GameShowDataContainer.play_by_play .StatWidgetColumn .StatWidgetHolder {
  margin-right: 20px;
}

#GameShowContent ul.player_stats-list-header.awayTeam, #GameShowContent ul.player_stats-list-header.homeTeam {
  background: #fff;
  color: #333;
  overflow: hidden;
  width: 100%;
  padding: 0 0 5px 0;
  text-align: center;
}

#GameShowContent ul.player_stats-list-header.awayTeam li h3, #GameShowContent ul.player_stats-list-header.homeTeam li h3 {
  padding: 10px;
}

#GameShowContent ul.player_stats-list-header li {
  display: inline-block;
  width: 100%;
  padding: 0 0 10px;
  text-transform: uppercase;
}

#GameShowContent ul.player_stats-list-header li h2 {
  color: #333;
}

.right-column-ad-content ul.player_stats-list-header li h2 {
  font-size: 24px;
}

/* TEAM STAT WIDGET - LIST */
#GameShowContent ul.team_stats-list-header {
  background: #666;
  color: #fff;
  overflow: hidden;
  width: 100%;
}

#GameShowContent ul.team_stats-list-header li h3 {
  padding: 10px;
}

#GameShowContent ul.team_stats-list-header li {
  display: block;
  float: left;
  height: 36px;
  line-height: 36px;
  padding-left: 10px;
  text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
}

#GameShowContent ul.team_stats-list-header li.team_logo {
  float: right;
  padding: 0;
  text-align: center;
  width: 10%;
}

#GameShowContent ul.team_stats-list-header li.team_logo span {
  padding: 7px 0;
  vertical-align: middle;
}

#GameShowContent ul.team_stats-list-header li.team_logo span a {
  margin: 0 auto;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1em;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list:first-child {
  margin-top: -10px;
}

#GameShowContent ul.team_stats-list li ul {
  overflow: hidden;
  border-bottom: 2px solid #f0f0f0;
}

#GameShowContent ul.team_stats-list li ul li {
  display: block;
  float: left;
  line-height: 1.5em;
  padding: 8px 0;
  text-align: center;
  vertical-align: middle;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li {
  line-height: 1.5em;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list span.team_logo {
  display: block;
  height: 20px;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat-bar_graph .awayTeam span {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  display: block;
  position: relative;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat-bar_graph .homeTeam span {
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  position: relative;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list span.team_logo a {
  display: none;
}

#GameShowContent ul.team_stats-list li ul li.stat_category {
  width: 33.3%;
}

#GameShowContent ul.team_stats-list li ul li.stat-bar_graph {
  display: none;
}

#GameShowContent ul.team_stats-list li ul li.stat-bar_graph span a {
  border: none;
}

#GameShowContent ul.team_stats-list li ul li.team_stat {
  float: right;
  text-align: center;
  width: 33.3%;
  font-weight: 400;
}

#GameShowContent span.ts1,
#GameShowContent span.ts2 {
  font-size: .65em;
  text-transform: uppercase;
  display: none;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat_category {
  overflow: hidden;
  text-indent: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 30%;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat-bar_graph {
  width: 40%;
  display: none;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat-bar_graph span img {
  display: none;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.team_stat,
#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list-header li.team_logo {
  width: 15%;
}

#GameShowContent .GameShowDataContainer.game_stats ul.team_stats-list li ul li.stat-bar_graph span {
  height: 20px;
}

#GameShowContent .GameShowDataContainer.game_summary .team_stat-comparison .StatWidget {
  margin-bottom: 15px;
}

.GameShowDataContainer.game_summary span.ts1,
.GameShowDataContainer.game_summary span.ts2 {
  clear: left;
  color: #333;
  display: block;
  font-weight: normal;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul {
  overflow: hidden;
  border-bottom: none;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat_category {
  font-weight: bold;
  height: 20px;
  line-height: 15px;
  padding: 0;
  text-transform: uppercase;
  width: 100%;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph {
  clear: left;
  margin: 0;
  padding: 0;
  width: 100%;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph .awayTeam,
#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph .homeTeam {
  height: 30px;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph span {
  height: 30px;
  padding: 5px;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph .awayTeam span {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  display: block;
  position: relative;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph .homeTeam span {
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  position: relative;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.stat-bar_graph .homeTeam span a {
  display: block;
  position: absolute;
  right: 5px;
  top: 5px;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.team_stat {
  font-size: 1.5em;
  font-weight: bold;
  height: 30px;
  line-height: 35px;
  padding: 0;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.75);
  width: 75px;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.team_stat.ts1 {
  float: left;
  text-align: left;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.team_stat.ts2 {
  float: right;
  text-align: right;
}

#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.team_stat.ts1 span,
#GameShowContent .GameShowDataContainer.game_summary ul.team_stats-list li ul li.team_stat.ts2 span {
  height: 15px;
  line-height: 15px;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list li ul li.stat-bar_graph .awayTeam,
#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list li ul li.stat-bar_graph .homeTeam {
  height: 30px;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list li ul li.stat-bar_graph span a {
  display: none;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list li ul li.stat-bar_graph .awayTeam span {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  display: block;
  height: 30px;
  margin: 0;
  position: relative;
}

#GameShowContent .GameShowDataContainer.game_preview ul.team_stats-list li ul li.stat-bar_graph .homeTeam span {
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  height: 30px;
  margin: 0;
  position: relative;
}

#GameShowContent .stat-bar_graph div.awayTeam {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/stat_comparison-shine.png");
  background-repeat: repeat-x;
  background-position: 50% 50%;
  border-radius: 5px 0px 0px 5px;
  display: block;
  float: left;
  height: 20px;
  width: 35%;
}

#GameShowContent .stat-bar_graph div.homeTeam {
  background-position: 50% 50%;
  border-radius: 0px 5px 5px 0px;
  display: block;
  float: left;
  height: 20px;
  width: 65%;
}

/* GAME DETAILS */
#GameShowContent .StatWidgetContainer.header {
  background: rgba(0, 0, 0, 0.25);
  color: #999;
  margin: 0;
  /* padding: 10px 0 10px 20px; */
  text-transform: uppercase;
}

#GameShowContent .StatWidgetContainer-sub.header {
  margin: 0 0 -15px 0;
}

#GameShowContent ul.game_details li {
  border-bottom: 1px solid #999;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  color: #999;
  font-size: 10px;
  padding: .25em 0;
}

#GameShowContent ul.game_details li h3 {
  padding: .5em 0;
  text-transform: uppercase;
}

#GameShowContent ul.game_details li.subcategory {
  text-indent: 1.25em;
}

#GameShowContent ul.game_details a,
#GameShowContent ul.game_details a:visited {
  color: #ccc;
  text-decoration: none;
}

#GameShowContent ul.game_details a:hover,
#GameShowContent ul.game_details a:active {
  color: #fff;
  text-decoration: underline;
}

#GameShowContent .StatWidgetContainer.game_details.header {
  padding: 10px 0;
  text-indent: 20px;
}

#GameShowContent .StatWidgetContainer li.play_details.away {
  float: left;
}

#GameShowContent .StatWidgetContainer li.play_details.home {
  float: right;
  padding-right: 10px;
}

#GameShowContent .StatWidgetContainer li.team_score.home {
  float: left;
  padding-left: 10px;
}

#GameShowContent .StatWidgetContainer li.team_score.away {
  float: right;
}

#GameShowContent .StatWidgetContainer li.shooutout_total {
  font-size: 1.5em;
  height: 30px;
  line-height: 35px;
  padding: 0 10px;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.75);
  width: 55px;
  text-align: center;
}

#GameShowContent .StatWidgetContainer li.shooutout_total.away {
  float: right;
}

/* GAME PREVIEW SPECIFIC STYLES */
.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer {
  padding: 10px 0 0 10px;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub {
  margin-right: 10px;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub.has_team_widgets {
  float: right;
  width: 66.6%;
  margin-right: 0;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub .StatWidgetColumn.width50 {
  width: 50%;
}

.StatWidgetGroupContainer.game_preview-header .StatWidget {
  margin: 0 10px 10px 0;
}

.StatWidgetGroupContainer.game_preview-column .StatWidgetGroup {
  margin: 0;
}

.StatWidgetGroupContainer.game_preview-header .carrot.down {
  background: #000;
  display: block;
  float: left;
  height: 25px;
  width: 100%;
}

.GameShowDataContainer.game_preview .StatWidgetHolder .StatWidget.game_preview {
  margin-right: 0;
}

.GameShowDataContainer.game_preview span.team_logo {
  display: inline-block;
  margin: 0 auto;
}

.GameShowDataContainer.game_preview ul.player_stats-list-header {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/scoring_summary-shine.png") repeat-x 50% 50%;
}

/* GAME STATS SPECIFIC STYLES */
.GameShowDataContainer.game_stats .team_stats-list-header span.team_logo {
  display: block;
}

.GameShowDataContainer.game_stats .player_stats-list-header span.team_logo {
  display: block;
  margin-top: 8px;
}

.GameShowDataContainer.game_stats .player_stats-list-header.sub span.team_logo {
  display: block;
  margin-top: 5px;
}

.StatWidgetGroupContainer.player_stats .table_container {
  margin-top: 0;
  padding: 10px;
}

.StatWidgetGroupContainer.player_stats .carrot {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/carrot-player_stats_list-header.png") no-repeat 50% 50%;
  display: block;
  height: 10px;
  margin: 0 auto;
  padding: 0;
  top: 0;
  width: 24px;
}

.StatWidgetGroupContainer.player_stats .player_stats_header {
  margin-bottom: 0;
}

.StatWidgetGroupContainer.player_stats table.player_stats-list sortable th {
  font-size: 9px;
}

.GameShowDataContainer.game_stats .player_stats .category_separator {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/player_stat-separator.png") repeat-x;
  display: block;
  float: left;
  height: 10px;
  width: 100%;
}

.StatWidgetContainer-sub .StatWidgetContainer:last-child .category_separator {
  background-image: none;
}

/* SCORING SUMMARY */
.game_boxscore > h3:first-child {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  margin-bottom: 2px;
}

.game_boxscore .scoring_summary li li {
  float: left;
  overflow-x: hidden;
  padding: 3px 1px;
  white-space: nowrap;
}

.game_boxscore .scoring_summary li li:first-child {
  padding-left: 6px;
}

.game_boxscore .scoring_summary .interval_row,
.game_boxscore .scoring_summary .scoring_info {
  font-size: 14px;
  margin-bottom: 2px;
  position: relative;
}

.game_boxscore .scoring_summary .interval_row:after,
.game_boxscore .scoring_summary .scoring_info:after {
  content: '';
  display: block;
  clear: both;
}

.game_boxscore .scoring_summary .interval_row {
  background: #0054A6;
  color: #fff;
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
}

.game_boxscore .scoring_summary .interval_row li:first-child {
  width: calc(100% - 130px);
}

.game_boxscore .scoring_summary .interval_row li:empty {
  display: none;
}

.game_boxscore .scoring_summary .scoring_info {
  background: #eee;
}

.game_boxscore .scoring_summary .game_clock {
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  width: 55px;
}

.game_boxscore .scoring_summary .team_name {
  color: #0054A6;
  font-weight: 700;
  text-overflow: ellipsis;
  width: 125px;
}

.game_boxscore .scoring_summary .score_type {
  overflow: visible;
  width: 35px;
}

.game_boxscore .scoring_summary .play_details {
  white-space: normal;
  width: calc(100% - 345px);
}

.game_boxscore .scoring_summary .play_details:first-child {
  width: calc(100% - 130px);
}

.game_boxscore .scoring_summary .team_score {
  text-align: center;
  text-overflow: ellipsis;
  width: 65px;
}

@media (max-width: 568px) {
  .game_boxscore .scoring_summary .team_name {
    width: calc(100% - 220px);
  }
  .game_boxscore .scoring_summary .play_details {
    padding-left: 6px;
    padding-right: 6px;
    width: 100%;
  }
  .game_boxscore .scoring_summary .scoring_info .team_score {
    position: absolute;
    right: 65px;
    top: 0;
  }
  .game_boxscore .scoring_summary .scoring_info .team_score:last-child {
    right: 0;
  }
}

@media (max-width: 340px) {
  .game_boxscore .scoring_summary .interval_row li:first-child {
    width: calc(100% - 110px);
  }
  .game_boxscore .scoring_summary .scoring_info .team_score {
    right: 55px;
  }
  .game_boxscore .scoring_summary .team_name {
    width: calc(100% - 193px);
  }
  .game_boxscore .scoring_summary .score_type {
    text-align: right;
    width: 28px;
  }
  .game_boxscore .scoring_summary .team_score {
    width: 55px;
  }
}

@media (min-width: 768px) {
  .game_boxscore .StatWidgetColumn {
    padding: 0;
  }
  .game_boxscore .StatWidgetColumn:nth-of-type(3n+1) {
    padding-right: 7px;
  }
  .game_boxscore .StatWidgetColumn:nth-of-type(3n+2) {
    padding-left: 7px;
  }
}

.game_boxscore .spacer {
  max-width: 100%;
  overflow: auto;
}

/* GALLERIES */
#gameGalleryHeader {
  overflow: hidden;
  padding: 10px 10px 10px 3%;
  border-bottom: 1px solid #DDD;
}

#gameGalleryHeader .count {
  float: left;
  margin-left: 10px;
  color: #999;
  line-height: 36px;
}

#gameGalleryHeader .button {
  float: left;
  margin-top: 8px;
}

#gameGalleryHeader .tool_pagination {
  padding: 10px 10px 0;
  border-top: none;
}

#GameShowContent .galleryItemList {
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #BBB;
  min-height: 324px;
}

/* GAME SHOW NEXT GEN STYLES */
#GameShowContent.game_show_nextgen {
  margin: 0;
}

#GameShowContent.game_show_nextgen .extra_game_details {
  width: 50%;
  float: left;
}

#GameShowContent.game_show_nextgen .list_officials {
  width: 50%;
  float: left;
}

#GameShowContent.game_show_nextgen .extra_game_details .pageElement {
  margin: 0 15px 15px 15px;
}

#GameShowContent.game_show_nextgen .list_officials .pageElement {
  margin: 0 15px 15px 0;
}

#GameShowContent.game_show_nextgen #game_details {
  padding: 0px 0px 10px 0px;
}

#GameShowContent.game_show_nextgen #game_details ul {
  font-size: 11px;
}

#GameShowContent.game_show_nextgen #game_details li {
  padding-left: 5px;
}

#GameShowContent.game_show_nextgen .game_boxscore h3 {
  font-size: 16px;
  line-height: 24px;
}

#GameShowContent.game_show_nextgen #game_details h3 {
  font-size: 16px;
  line-height: 24px;
}

#GameShowContent.game_show_nextgen #gameTotal .even td, #GameShowContent.game_show_nextgen .game_details .even {
  background-color: #FFFFFF;
}

#GameShowContent.game_show_nextgen #gameTotal .odd td, #GameShowContent.game_show_nextgen .game_details .odd {
  background-color: #EFEFEF;
}

#GameShowContent.game_show_nextgen #gameTotal .stat_table td {
  width: 70px;
}

#GameShowContent.game_show_nextgen .tab_menu {
  width: 100%;
}

#GameShowContent.game_show_nextgen .live_game_sheet {
  float: right;
  text-align: right;
  padding: 5px 0;
}

#GameShowContent.game_show_nextgen .sport-tools {
  background: none;
  margin: 0 5px;
}

#GameShowContent.game_show_nextgen .rapidContentGeneral,
#GameShowContent.game_show_nextgen #contentTabsLoader {
  width: 100%;
}

#GameShowContent.game_show_nextgen {
  overflow: visible;
  position: relative;
  font-size: 100%;
}

#GameShowContent.game_show_nextgen ul.tab_menu-list {
  list-style-type: none;
  float: left;
  position: relative;
  z-index: 4;
  overflow: hidden;
  font-size: 12px;
}

#GameShowContent.game_show_nextgen #rapidTabs {
  padding: 0px;
}

#GameShowContent.game_show_nextgen .GameShowDataContainer {
  padding: 20px 10px 0 10px;
}

#tab_nextgen_comments_content .GameShowDataColumn {
  position: inherit !important;
  width: 100% !important;
  background: none;
}

#tab_nextgen_comments_content .GameShowDataColumn .commentStreamContainer {
  min-height: 100px !important;
}

.game_header_v2 {
  margin: 0 15px;
  clear: both;
}

.game_header_v2 .away, .game_header_v2 .home {
  clear: both;
  display: block;
  float: left;
  padding-bottom: 20px;
  width: 100%;
}

.game_header_v2 .away {
  margin-bottom: 5px;
}

.game_header_v2 .home {
  margin-bottom: 10px;
}

.game_header_v2 h3, .game_header_v2 .team_logo {
  float: left;
}

.game_header_v2 h3 {
  font-size: 22px;
  font-weight: normal;
  line-height: 30px;
  padding-left: 5px;
}

.game_header_v2 .score {
  font-weight: bold;
}

#GameShowContent .teamHeadline {
  border-bottom: solid 2px;
  font-size: 14px;
  line-height: 170%;
  padding: 5px 0;
  display: block;
}

#GameShowContent .teamHeadline .team_logo {
  float: left;
  padding-right: 5px;
}

#GameShowContent .line_score_v2 .team {
  width: 250px;
  text-align: left;
}

#GameShowContent .stat_table {
  font-size: 10px;
  line-height: 120%;
  margin-bottom: 15px;
}

#GameShowContent .stat_table td {
  width: 56px;
}

#GameShowContent .stat_table .odd td {
  background: #FFFFFF;
}

#GameShowContent .stat_table .totals {
  font-weight: bold;
}

#GameShowContent.nextgen {
  margin-right: 0;
  margin-left: -10px;
}

#GameShowContent.nextgen #rapidTabs {
  padding: 0;
}

@media (min-width: 768px) {
  .StatWidgetColumn:nth-of-type(odd) {
    padding-right: 7px;
  }
  .StatWidgetColumn:nth-of-type(even) {
    padding-left: 7px;
  }
  .StatWidgetColumn:nth-of-type(even) .player_stats-list {
    margin-left: 0;
  }
}

#GameShowScoreboardSimple {
  padding-bottom: 30px;
  position: relative;
}

#GameShowScoreboardSimple .game_info_bar_v2 {
  bottom: 0;
  position: absolute;
  width: 100%;
}

#GameShowScoreboardSimple .stat_table .team {
  color: #0054A6;
  font-weight: 600;
  text-align: left;
}

.game_info_bar_v2 {
  font: 600 12px/14px "Open Sans", sans-serif;
  padding: 8px 12px;
}

.game_info_bar_v2 li {
  float: left;
  list-style: none;
}

.game_info_bar_v2 li + li {
  padding-left: .5em;
}

.game_info_bar_v2 .date {
  text-transform: uppercase;
}

.game_info_bar_v2 .status {
  color: #0054A6;
  float: right;
}

/* Simpler Scoreboard */
#GameShowContent span.pitcher_record_stats {
  color: #FF0000;
}

/* Game Notes */
.gameShow #GameShowContent .game_notes {
  font-size: 12px;
}

#GameShowContent .game_notes h1 {
  font-size: 32px;
}

#GameShowContent .game_notes h2 {
  font-size: 24px;
}

#GameShowContent .game_notes h3 {
  font-size: 18px;
}

#GameShowContent .game_notes h4 {
  font-size: 16px;
}

#GameShowContent .game_notes h5 {
  font-size: 14px;
}

#GameShowContent .game_notes h6 {
  font-size: 12px;
}

#GameShowContent .game_notes p {
  margin-bottom: 10px;
  line-height: 150%;
}

#GameShowContent .game_notes ul, #GameShowContent .game_notes ol {
  padding-left: 40px;
  margin-bottom: 10px;
}

#GameShowContent .game_notes li {
  list-style: inherit;
  line-height: 150%;
}

#GameShowContent .game_notes a {
  text-decoration: underline;
}

#GameShowContent .game_notes blockquote {
  padding-left: 10px;
  margin-left: 30px;
  margin-bottom: 10px;
  font-style: italic;
  border-left: 3px solid #ccc;
}

#GameShowContent .game_notes hr {
  margin: 20px 0;
  border: 0;
  border-top: 1px solid #ccc;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub {
  position: relative;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub:before {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  background: #0054A6;
  bottom: 7px;
  left: 0;
  width: 49%;
}

.StatWidgetGroupContainer.game_preview-header .StatWidgetContainer-sub:after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  background: #0054A6;
  bottom: 7px;
  right: 0;
  width: 49%;
}

/*///////////////////////
////// SCOREBOARD ///////
///////////////////////*/
/* FIELD POSITION */
body.football #GameShowScoreboard li.down {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/li-down.png") no-repeat 50% 50%;
  width: 18px;
}

body.football #GameShowScoreboard li.togo {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/li-togo.png") no-repeat 50% 50%;
  width: 30px;
}

body.football #GameShowScoreboard li.ballon {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/li-ballon.png") no-repeat 50% 50%;
  margin-right: 5px;
  width: 30px;
}

body.football #GameShowScoreboard li.dd-start {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/dd-start.png") no-repeat 50% 50%;
  width: 20px;
}

body.football #GameShowScoreboard li.dd-end {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/dd-end.png") no-repeat 50% 50%;
  width: 22px;
}

/* POSSESSION */
body.football #GameShowScoreboard .away_team .possession.active {
  background-position: right -61px;
}

body.football #GameShowScoreboard .home_team .possession.active {
  background-position: left -61px;
}

/* TIME OUTS */
body.football #GameShowScoreboard .timeoutsAway {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/bg-timeouts-away.png") no-repeat 50% 50%;
  display: block;
  height: 58px;
  left: 150px;
  width: 148px;
}

body.football #GameShowScoreboard .timeoutsHome {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/bg-timeouts-home.png") no-repeat 50% 50%;
  display: block;
  height: 58px;
  right: 150px;
  width: 148px;
}

body.football #GameShowScoreboard .timeoutsAway .timeouts-remaining {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat 0 -1px;
  display: block;
  height: 50px;
  left: 22px;
  position: relative;
  top: 11px;
  width: 100px;
}

body.football #GameShowScoreboard .timeoutsHome .timeouts-remaining {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat -100px -1px;
  display: block;
  height: 50px;
  right: -25px;
  position: relative;
  top: 11px;
  width: 100px;
}

body.football #GameShowScoreboard .timeoutsAway .timeouts-remaining.zero {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat 0 -1px;
}

body.football #GameShowScoreboard .timeoutsHome .timeouts-remaining.zero {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat -100px -1px;
}

body.football #GameShowScoreboard .timeoutsAway .timeouts-remaining.one {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat 0 -51px;
}

body.football #GameShowScoreboard .timeoutsHome .timeouts-remaining.one {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat -100px -51px;
}

body.football #GameShowScoreboard .timeoutsAway .timeouts-remaining.two {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat 0 -101px;
}

body.football #GameShowScoreboard .timeoutsHome .timeouts-remaining.two {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat -100px -101px;
}

body.football #GameShowScoreboard .timeoutsAway .timeouts-remaining.three {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat 0 -150px;
}

body.football #GameShowScoreboard .timeoutsHome .timeouts-remaining.three {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts.png") no-repeat -100px -150px;
}

/*///////////////////////
///// PLAY BY PLAY //////
///////////////////////*/
#GameShowContent ul.play_by_play-filters {
  background: rgba(0, 0, 0, 0.25);
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  -moz-border-radius-bottomright: 5px;
  -moz-border-radius-bottomleft: 5px;
  border-radius: 5px 5px 5px 5px;
  overflow: hidden;
}

#GameShowContent ul.play_by_play-start_period {
  background: #ccc;
  /* Old browsers */
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cccccc), color-stop(100%, #e5e5e5));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #cccccc 0%, #e5e5e5 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  /* IE10+ */
  background: linear-gradient(top, #cccccc 0%, #e5e5e5 100%);
  /* W3C */
  border-radius: 5px 5px 0px 0px;
  color: #666;
  font-size: 10px;
  margin-top: 5px;
  overflow: hidden;
  padding: 5px;
  text-transform: uppercase;
}

.play_by_play-carrot {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/carrot-period-start.png") no-repeat 50% top;
  clear: left;
  display: block;
  height: 5px;
  margin: 0 auto;
  width: 100%;
}

#GameShowContent ul.play_by_play-filters li {
  display: block;
  float: left;
  height: 3em;
  line-height: 3em;
  padding: 0 0 0 10px;
}

#GameShowContent ul.play_by_play-filters li.single_player {
  float: right;
  padding-right: 10px;
}

#GameShowContent table.play_by_play {
  width: 100%;
}

#GameShowContent table.play_by_play th {
  background: #ccc;
  color: #333;
  padding: 10px 10px 10px 0;
  text-transform: uppercase;
  vertical-align: middle;
  text-align: left;
}

#GameShowContent table.play_by_play td {
  border-bottom: solid 1px #ccc;
  font-size: 10px;
  padding: 5px 2px;
  vertical-align: top;
}

#GameShowContent table.play_by_play tr.possessionStart td {
  padding: 0;
}

#GameShowContent table.play_by_play tr.columnHeaders th {
  font-size: 9px;
  height: 20px;
  line-height: 20px;
  padding: 0 2px;
}

table.play_by_play .play-icon {
  width: 42px;
  height: 30px;
}

table.play_by_play .play-downAndDistance,
table.play_by_play .play-ballOn,
table.play_by_play .play-gameClock {
  width: 55px;
}

table.play_by_play .play-playDetails {
  width: auto;
}

table.play_by_play tr.touchdown .play-icon {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_icon-td.png") no-repeat 50% 50%;
}

table.play_by_play tr.made_field_goal .play-icon {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_icon-fg.png") no-repeat 50% 50%;
}

table.play_by_play tr.conversion_success .play-icon {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_icon-2p.png") no-repeat 50% 50%;
}

table.play_by_play tr.safety .play-icon {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_icon-sf.png") no-repeat 50% 50%;
}

table.play_by_play tr.extra_point_made .play-icon {
  background: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_icon-xp.png") no-repeat 50% 50%;
}

#GameShowContent ul.play_by_play-drive-header {
  margin: 10px 0 0 0;
  overflow: hidden;
}

#GameShowContent ul.play_by_play-drive-header li {
  padding: 0 10px;
  display: block;
  float: left;
  font-weight: bold;
  height: 44px;
  line-height: 44px;
  text-transform: uppercase;
}

#GameShowContent ul.play_by_play-drive-header li.drive-start,
#GameShowContent ul.play_by_play-drive-header li.drive-summary {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/play_by_play-arrow.png");
  background-repeat: no-repeat;
  background-position: left 50%;
  text-indent: 4px;
}

/*///////////////////////
///// FIELD OF PLAY /////
///////////////////////*/
body.football #FOP {
  padding: 50px 16px 0;
  margin: -50px 0 0;
  height: 425px;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
      user-select: none;
  position: relative;
  overflow: hidden;
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, transparent), color-stop(10%, rgba(0, 0, 0, 0.1)), color-stop(32%, rgba(0, 0, 0, 0.2)), color-stop(100%, transparent));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  background: -ms-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* IE10+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=0 );
  /* IE6-9 */
  background: linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* W3C */
  z-index: 100;
  clear: both;
}

body.football #FOP .field {
  padding: 0 8.2%;
  height: 400px;
  background: #060;
  border: 6px solid #FFF;
  margin: 0;
  position: relative;
  overflow: visible;
  box-shadow: rgba(0, 0, 0, 0.699219) 0px 6px 8px -4px;
  -webkit-transition: all 1000ms ease-in-out;
  transition: all 1000ms ease-in-out;
}

body.football #FOP .in_bounds {
  position: relative;
  height: 100%;
  width: 100%;
  overflow: visible;
}

body.football #FOP .line_of_scrimmage,
body.football #FOP .first_down_line {
  position: absolute;
  top: 0;
  left: -1000px;
  width: 3px;
  height: 100%;
  background: #4BF;
  z-index: 3;
  margin-left: -1px;
}

body.football #FOP .first_down_line {
  background: #FC0;
}

body.football #FOP .grass {
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
}

/* Yard Lines */
body.football #FOP ul.yardlines {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  list-style: none;
}

body.football #FOP ul.yardlines li {
  opacity: .7;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  height: 100%;
  z-index: 2;
}

body.football #FOP ul.yardlines li._5yd {
  border-left: 1px solid #FFF;
}

body.football #FOP ul.yardlines li:nth-child(10n+6) {
  border-left: 1px solid #FFF;
  background: rgba(0, 0, 0, 0.2);
  width: 5%;
  z-index: 1;
}

body.football #FOP ul.yardlines li._5yd span {
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  color: #FFF;
  font: bold 16px "Arial Black",sans-serif;
  letter-spacing: 5px;
  display: block;
  position: absolute;
  top: 40%;
  bottom: 40%;
  height: 20%;
  margin-left: -2px;
  width: 3px;
  white-space: nowrap;
  overflow: visible;
}

body.football #FOP ul.yardlines li._5yd span span {
  border: none;
  top: auto;
  bottom: -170%;
  height: auto;
  margin-left: 0;
  text-indent: -12px;
}

body.football #FOP ul.yardlines li._5yd span span + span {
  top: -170%;
  bottom: auto;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
}

body.football #FOP ul.yardlines li._1yd,
body.football #FOP ul.yardlines li._1yd span {
  background: none;
  height: 20%;
  top: 40%;
  margin-top: -2px;
  border-top: 3px solid #FFF;
  border-bottom: 3px solid #FFF;
}

body.football #FOP ul.yardlines li._1yd span {
  width: 1px;
  height: auto;
  position: absolute;
  top: -200%;
  bottom: -200%;
  margin: -1px 0 1px;
}

body.football #FOP ul.yardlines li.first span span {
  text-indent: 2px;
  border: none;
}

body.football #FOP ul.yardlines li.first span span + span {
  text-indent: -12px;
}

body.football #FOP ul.yardlines li.last {
  margin-left: -1px;
}

/* G */
body.football #FOP ul.yardlines li.last span {
  left: auto;
  right: 0;
  border: none;
  text-indent: -15px;
}

body.football #FOP ul.yardlines li.last span span + span {
  text-indent: 5px;
}

/* End Zone */
body.football #FOP .endzone {
  display: block;
  width: 8.333%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  overflow: hidden;
}

body.football #FOP .endzone img {
  display: block;
  width: 100%;
  height: 100%;
}

body.football #FOP .endzone span {
  font: bold 30px "Arial Black",Verdana,sans-serif;
  white-space: nowrap;
  position: absolute;
  /*top:50%;*/
  top: 0;
  left: 50%;
  /*margin:-25px 0 0 -200px;*/
  margin: 0 0 0 -25px;
  line-height: 50px;
  letter-spacing: 1px;
  color: #FFF;
  width: 400px;
  text-align: center;
  text-transform: uppercase;
  transform: rotate(90deg) translate(175px, 175px);
  -webkit-transform: rotate(90deg) translate(175px, 175px);
  -moz-transform: rotate(90deg) translate(175px, 175px);
  -o-transform: rotate(90deg) translate(175px, 175px);
  -ms-transform: rotate(90deg) translate(175px, 175px);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
}

body.football #FOP .endzone:first-child {
  left: 0;
  right: auto;
}

body.football #FOP .endzone:first-child span {
  transform: rotate(-90deg) translate(-175px, -175px);
  -webkit-transform: rotate(-90deg) translate(-175px, -175px);
  -moz-transform: rotate(-90deg) translate(-175px, -175px);
  -o-transform: rotate(-90deg) translate(-175px, -175px);
  -ms-transform: rotate(-90deg translate(-175px, -175px));
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

/*/////// Play String //////////*/
body.football #FOP .playStringContainer {
  position: absolute;
  top: 0;
  left: 50%;
  width: 230px;
  padding: 0 50px 20px;
  height: 70px;
  line-height: 60px;
  margin-left: -165px;
  opacity: .6;
  z-index: 5;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/football/field_of_play_nav.png") 0 -150px no-repeat;
  -webkit-transition: opacity 300ms ease-in-out;
  transition: opacity 300ms ease-in-out;
}

body.football #FOP .playStringContainer:hover,
body.football #FOP.view_3d .playStringContainer {
  opacity: 1;
}

body.football #FOP .playString {
  cursor: default;
  color: #DDD;
  width: 100%;
  line-height: 1.2em;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: middle;
  padding: 5px 0;
}

/*////////// PLAY NAVIGATION BUTTONS //////////*/
body.football #FOP #PlayNavigationButtons {
  z-index: 5;
  position: absolute;
  bottom: 25px;
  left: 50%;
  width: 400px;
  margin-left: -200px;
  opacity: .6;
  text-align: center;
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, transparent), color-stop(50%, rgba(0, 0, 0, 0.65)), color-stop(100%, transparent));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(left, transparent 0%, rgba(0, 0, 0, 0.65) 50%, transparent 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  background: -ms-linear-gradient(left, transparent 0%, rgba(0, 0, 0, 0.65) 50%, transparent 100%);
  /* IE10+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=1 );
  /* IE6-9 */
  background: linear-gradient(left, transparent 0%, rgba(0, 0, 0, 0.65) 50%, transparent 100%);
  /* W3C */
  -webkit-transition: all 300ms linear;
  transition: all 300ms linear;
}

body.football #FOP #PlayNavigationButtons:hover {
  opacity: 1;
}

body.football #FOP #PlayNavigationButtons div {
  position: relative;
  cursor: pointer;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 60px;
  height: 0;
  margin: 0 -8px;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/football/field_of_play_nav.png") 0 1000px no-repeat;
  vertical-align: middle;
  overflow: hidden;
}

body.football #FOP #PlayNavigationButtons .prevDrive {
  padding-top: 50px;
  background-position: 0 -10px;
}

body.football #FOP #PlayNavigationButtons .nextDrive {
  padding-top: 50px;
  background-position: -240px -10px;
}

body.football #FOP #PlayNavigationButtons .prevPlay {
  padding-top: 60px;
  background-position: -60px -5px;
  z-index: 2;
}

body.football #FOP #PlayNavigationButtons .nextPlay {
  padding-top: 60px;
  background-position: -180px -5px;
  z-index: 2;
}

body.football #FOP #PlayNavigationButtons .latestPlay {
  padding-top: 70px;
  background-position: -120px 0;
  margin: 0 -12px;
  z-index: 3;
}

body.football #FOP #PlayNavigationButtons .prevDrive:active {
  background-position: 0 -80px;
}

body.football #FOP #PlayNavigationButtons .nextDrive:active {
  background-position: -240px -80px;
}

body.football #FOP #PlayNavigationButtons .prevPlay:active {
  background-position: -60px -75px;
}

body.football #FOP #PlayNavigationButtons .nextPlay:active {
  background-position: -180px -75px;
}

body.football #FOP #PlayNavigationButtons .latestPlay:active {
  background-position: -120px -70px;
}

body.football #FOP #FOPbuttons {
  position: absolute;
  top: 70px;
  right: 20px;
  opacity: .4;
  z-index: 5;
  -webkit-transition: opacity 300ms ease-in-out;
  transition: opacity 300ms ease-in-out;
}

body.football #FOP #FOPbuttons div {
  cursor: pointer;
  width: 50px;
  height: 0;
  padding-top: 35px;
  overflow: hidden;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/football/field_of_play_nav.png") 0 1000px no-repeat;
}

body.football #FOP #FOPbuttons:hover {
  opacity: 1;
}

body.football #FOP #FOPbuttons .viewToggle {
  background-position: -300px -2px;
}

body.football #FOP #FOPbuttons .viewToggle:active {
  background-position: -300px -36px;
}

body.football #FOP #FieldOfPlay.view_3d #FOPbuttons .viewToggle {
  background-position: -300px -70px;
}

body.football #FOP #FieldOfPlay.view_3d #FOPbuttons .viewToggle:active {
  background-position: -300px -104px;
}

/*/////////// DRIVES ///////////*/
body.football #FOP #DrivesContainer {
  z-index: 4;
  height: 400px;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  overflow: hidden;
}

body.football #FOP #Drives {
  height: 100%;
  top: 400px;
  position: relative;
  overflow: visible;
}

/*////////// INDIVIDUAL PLAY LENGTHS //////////*/
body.football #FOP .yds0 {
  width: 0%;
}

body.football #FOP .yds1 {
  width: 1%;
}

body.football #FOP .yds2 {
  width: 2%;
}

body.football #FOP .yds3 {
  width: 3%;
}

body.football #FOP .yds4 {
  width: 4%;
}

body.football #FOP .yds5 {
  width: 5%;
}

body.football #FOP .yds6 {
  width: 6%;
}

body.football #FOP .yds7 {
  width: 7%;
}

body.football #FOP .yds8 {
  width: 8%;
}

body.football #FOP .yds9 {
  width: 9%;
}

body.football #FOP .yds10 {
  width: 10%;
}

body.football #FOP .yds11 {
  width: 11%;
}

body.football #FOP .yds12 {
  width: 12%;
}

body.football #FOP .yds13 {
  width: 13%;
}

body.football #FOP .yds14 {
  width: 14%;
}

body.football #FOP .yds15 {
  width: 15%;
}

body.football #FOP .yds16 {
  width: 16%;
}

body.football #FOP .yds17 {
  width: 17%;
}

body.football #FOP .yds18 {
  width: 18%;
}

body.football #FOP .yds19 {
  width: 19%;
}

body.football #FOP .yds20 {
  width: 20%;
}

body.football #FOP .yds21 {
  width: 21%;
}

body.football #FOP .yds22 {
  width: 22%;
}

body.football #FOP .yds23 {
  width: 23%;
}

body.football #FOP .yds24 {
  width: 24%;
}

body.football #FOP .yds25 {
  width: 25%;
}

body.football #FOP .yds26 {
  width: 26%;
}

body.football #FOP .yds27 {
  width: 27%;
}

body.football #FOP .yds28 {
  width: 28%;
}

body.football #FOP .yds29 {
  width: 29%;
}

body.football #FOP .yds30 {
  width: 30%;
}

body.football #FOP .yds31 {
  width: 31%;
}

body.football #FOP .yds32 {
  width: 32%;
}

body.football #FOP .yds33 {
  width: 33%;
}

body.football #FOP .yds34 {
  width: 34%;
}

body.football #FOP .yds35 {
  width: 35%;
}

body.football #FOP .yds36 {
  width: 36%;
}

body.football #FOP .yds37 {
  width: 37%;
}

body.football #FOP .yds38 {
  width: 38%;
}

body.football #FOP .yds39 {
  width: 39%;
}

body.football #FOP .yds40 {
  width: 40%;
}

body.football #FOP .yds41 {
  width: 41%;
}

body.football #FOP .yds42 {
  width: 42%;
}

body.football #FOP .yds43 {
  width: 43%;
}

body.football #FOP .yds44 {
  width: 44%;
}

body.football #FOP .yds45 {
  width: 45%;
}

body.football #FOP .yds46 {
  width: 46%;
}

body.football #FOP .yds47 {
  width: 47%;
}

body.football #FOP .yds48 {
  width: 48%;
}

body.football #FOP .yds49 {
  width: 49%;
}

body.football #FOP .yds50 {
  width: 50%;
}

body.football #FOP .yds51 {
  width: 51%;
}

body.football #FOP .yds52 {
  width: 52%;
}

body.football #FOP .yds53 {
  width: 53%;
}

body.football #FOP .yds54 {
  width: 54%;
}

body.football #FOP .yds55 {
  width: 55%;
}

body.football #FOP .yds56 {
  width: 56%;
}

body.football #FOP .yds57 {
  width: 57%;
}

body.football #FOP .yds58 {
  width: 58%;
}

body.football #FOP .yds59 {
  width: 59%;
}

body.football #FOP .yds60 {
  width: 60%;
}

body.football #FOP .yds61 {
  width: 61%;
}

body.football #FOP .yds62 {
  width: 62%;
}

body.football #FOP .yds63 {
  width: 63%;
}

body.football #FOP .yds64 {
  width: 64%;
}

body.football #FOP .yds65 {
  width: 65%;
}

body.football #FOP .yds66 {
  width: 66%;
}

body.football #FOP .yds67 {
  width: 67%;
}

body.football #FOP .yds68 {
  width: 68%;
}

body.football #FOP .yds69 {
  width: 69%;
}

body.football #FOP .yds70 {
  width: 70%;
}

body.football #FOP .yds71 {
  width: 71%;
}

body.football #FOP .yds72 {
  width: 72%;
}

body.football #FOP .yds73 {
  width: 73%;
}

body.football #FOP .yds74 {
  width: 74%;
}

body.football #FOP .yds75 {
  width: 75%;
}

body.football #FOP .yds76 {
  width: 76%;
}

body.football #FOP .yds77 {
  width: 77%;
}

body.football #FOP .yds78 {
  width: 78%;
}

body.football #FOP .yds79 {
  width: 79%;
}

body.football #FOP .yds80 {
  width: 80%;
}

body.football #FOP .yds81 {
  width: 81%;
}

body.football #FOP .yds82 {
  width: 82%;
}

body.football #FOP .yds83 {
  width: 83%;
}

body.football #FOP .yds84 {
  width: 84%;
}

body.football #FOP .yds85 {
  width: 85%;
}

body.football #FOP .yds86 {
  width: 86%;
}

body.football #FOP .yds87 {
  width: 87%;
}

body.football #FOP .yds88 {
  width: 88%;
}

body.football #FOP .yds89 {
  width: 89%;
}

body.football #FOP .yds90 {
  width: 90%;
}

body.football #FOP .yds91 {
  width: 91%;
}

body.football #FOP .yds92 {
  width: 92%;
}

body.football #FOP .yds93 {
  width: 93%;
}

body.football #FOP .yds94 {
  width: 94%;
}

body.football #FOP .yds95 {
  width: 95%;
}

body.football #FOP .yds96 {
  width: 96%;
}

body.football #FOP .yds97 {
  width: 97%;
}

body.football #FOP .yds98 {
  width: 98%;
}

body.football #FOP .yds99 {
  width: 99%;
}

body.football #FOP .yds100 {
  width: 100%;
}

/*////////// TEAM COLORS //////////*/
.homeTeam,
.awayTeam {
  background-color: #999;
}

/*////////// DRIVE BARS aka GROUP OF PLAYS //////////*/
body.football #FOP .driveContainer {
  float: left;
  padding: 10px 8.2%;
  width: 83.6%;
  overflow: hidden;
  margin: 3px 0;
}

body.football #FOP .play {
  position: relative;
  height: 15px;
  margin: 3px 0;
  overflow: visible;
  display: none;
}

body.football #FOP .bar {
  width: 100%;
  height: 100%;
}

body.football #FOP .driveBar {
  position: relative;
  height: 15px;
  background: url("https://app-assets1.sportngin.com/app_images/utils/black-30.png");
  background: rgba(0, 0, 0, 0.3);
  padding: 9999px 30px;
  margin: -9999px -30px;
  cursor: pointer;
}

body.football #FOP .current .driveBar {
  cursor: default;
  height: 0;
  margin-bottom: -10002px;
}

body.football #FOP .current .driveBar * {
  display: none;
}

body.football #FOP .current .driveBar .teamlogo {
  display: block;
}

body.football #FOP .driveBar .bar,
body.football #FOP .play .bar {
  box-shadow: rgba(0, 0, 0, 0.292969) 0px 1px 6px, rgba(255, 255, 255, 0.5) 0px -2px 10px -6px inset;
  cursor: pointer;
}

body.football #FOP .play.current .bar {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/football/play_bar.png");
  background-position: center center;
  /* first two rules are for IE 7-9 */
  /* FF3.6+ */
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.4)), color-stop(50%, rgba(255, 255, 255, 0.2)), color-stop(51%, rgba(0, 0, 0, 0.2)), color-stop(100%, transparent));
  /* Chrome,Safari4+ */
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(0, 0, 0, 0.2) 51%, transparent 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  /* IE10+ */
  background-image: linear-gradient(top, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(0, 0, 0, 0.2) 51%, transparent 100%);
  /* W3C */
  box-shadow: rgba(255, 255, 255, 0.6) 0px 2px 10px, rgba(255, 255, 255, 0.5) 0px -2px 10px 2px inset;
  -webkit-transition: all 300ms linear;
  transition: all 300ms linear;
}

body.football #FOP div.play div.icon_right {
  width: 12px;
  height: 15px;
  position: absolute;
  top: 0;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/drivebar/arrow-right.png") no-repeat right top;
  left: 100%;
}

body.football #FOP div.driveBar div.icon_right {
  width: 12px;
  height: 15px;
  position: absolute;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/drivebar/arrow-right.png") no-repeat;
  right: 15px;
}

body.football #FOP div.play div.icon_left {
  width: 12px;
  height: 15px;
  position: absolute;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/drivebar/arrow-left.png") no-repeat right top;
  left: -15px;
}

body.football #FOP div.driveBar div.icon_left {
  width: 12px;
  height: 15px;
  position: absolute;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/drivebar/arrow-left.png") no-repeat;
  left: 18px;
}

body.football #FOP .teamlogo {
  width: 20px;
  height: 15px;
  position: absolute;
  top: 9999px;
}

body.football #FOP .teamlogo.awayTeam {
  left: 5px;
}

body.football #FOP .teamlogo.homeTeam {
  right: 5px;
}

body.football #FOP .driveContainer.current.expanded div.play,
body.football #FOP .driveContainer.current.expanded {
  display: block;
}

/*////////// PERSPECTIVE ////////////*/
html.csstransforms3d body.football #FOP.view_3d .field {
  /* right now, only webkit supports 3d */
  -webkit-transform: perspective(600) rotateX(35deg) translate3d(0, -102px, -80px);
  transform: perspective(600) rotateX(35deg) translate3d(0, -102px, -80px);
}

/* We need to temporarily remove 3d transforms when calculating positioning for scrolling */
html.csstransforms3d body.football #FOP .noTransform {
  -webkit-transform: none !important;
}

html.csstransforms3d body.football #FOP .noTransition {
  -webkit-transition: none !important;
  transition: none !important;
}

/* Remove when current play is ready */
body.hockeyish #FOP .current_play {
  display: none;
}

body.hockeyish #FOP .play_area {
  margin-top: 0 !important;
}

body.hockeyish #FOP.view_3d .play_area {
  margin-top: -80px !important;
}

/* Remove when Power Plays status is implemented */
body.hockeyish #GameShowScoreboard .possession {
  display: none;
}

/*///////////////////////
///// SCOREBOARD ////////
///////////////////////*/
/* SHOTS ON GOAL */
body.hockeyish #GameShowScoreboard li.sog {
  background-image: url("https://app-assets1.sportngin.com/app_images/scoreboard/li-sog.png");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  margin: 0 10px;
  text-align: center;
  width: 50px;
}

body.hockeyish #GameShowScoreboard li.sog span {
  font-size: 20px;
}

body.hockeyish #GameShowScoreboard li.sog div.sog {
  color: #fff;
  display: block;
  float: left;
  height: 26px;
  line-height: 26px;
  text-align: center;
  width: 24px;
}

body.hockeyish #GameShowScoreboard li.sog div.logo-mini {
  border-radius: 2px;
  display: block;
  float: left;
  height: 16px;
  width: 16px;
  margin: 5px;
}

body.hockeyish #GameShowScoreboard li.sog div.logo-mini a {
  border: none;
  background-size: 16px;
  background-position: left top;
  display: block;
  width: 16px !important;
  height: 16px !important;
}

/* POSSESSION / POWER PLAY */
body.hockeyish #GameShowScoreboard .away_team .posession .pp {
  background: none no-repeat 50% 50%;
}

body.hockeyish #GameShowScoreboard .home_team .posession .pp {
  background: none no-repeat 50% 50%;
}

/* TIME OUTS */
body.hockeyish #GameShowScoreboard .timeoutsAway {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/bg-timeouts-away.png") no-repeat 50% 50%;
  display: none;
  height: 76px;
  left: 110px;
  position: absolute;
  top: 100px;
  width: 164px;
  z-index: 113;
}

/* Switch to display:block when implemented */
body.hockeyish #GameShowScoreboard .timeoutsHome {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/bg-timeouts-home.png") no-repeat 50% 50%;
  display: none;
  height: 76px;
  right: 110px;
  position: absolute;
  top: 100px;
  width: 164px;
  z-index: 113;
}

/* Switch to display:block when implemented */
body.hockeyish #GameShowScoreboard .timeoutsAway .timeouts-remaining {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat 25px -1px;
  display: block;
  height: 50px;
  left: 25px;
  position: relative;
  top: 23px;
  width: 100px;
}

body.hockeyish #GameShowScoreboard .timeoutsHome .timeouts-remaining {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat -75px -1px;
  display: block;
  height: 50px;
  right: -35px;
  position: relative;
  top: 23px;
  width: 100px;
}

body.hockeyish #GameShowScoreboard .timeoutsAway .timeouts-remaining.zero {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat 25px -1px;
}

body.hockeyish #GameShowScoreboard .timeoutsHome .timeouts-remaining.zero {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat -75px -1px;
}

body.hockeyish #GameShowScoreboard .timeoutsAway .timeouts-remaining.one {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat 25px -51px;
}

body.hockeyish #GameShowScoreboard .timeoutsHome .timeouts-remaining.one {
  background: url("https://app-assets1.sportngin.com/app_images/scoreboard/timeouts-hockey.png") no-repeat -75px -51px;
}

/*///////////////////////
///// FIELD OF PLAY /////
///////////////////////*/
/*////////// TIMELINE SLIDER ////////////*/
#FOP-timeline-container {
  height: 110px;
  margin: -60px -25px 70px;
  overflow: visible;
  position: relative;
  top: 68px;
  z-index: 101;
}

#FOP-timeline {
  background: #222;
  border-top: solid 1px #000;
  border-bottom: solid 1px #666;
  height: 6px;
  border-radius: 2px;
  height: 8px;
  margin: 6px 100px;
  position: relative;
}

#FOP-timeline .ui-slider-handle {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/hockeyish/slider-handle.png") no-repeat 50% bottom;
  bottom: -6px;
  display: block;
  height: 35px;
  overflow: visible;
  position: absolute;
  width: 30px;
  z-index: 10;
}

#FOP-timeline .ui-slider-handle.left {
  margin-left: -30px;
}

#FOP-timeline .ui-state-focus {
  outline: none;
}

#FOP-timeline .ui-slider-range {
  background: #6c602d;
  height: 100%;
  margin: 0;
  position: absolute;
}

#FOP-timeline .ui-slider-pattern {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/hockeyish/slider-pattern.png") repeat-x 50%;
  height: 100%;
  position: absolute;
  width: 100%;
}

#FOP-timeline .ui-slider-pattern:before {
  content: url("https://app-assets1.sportngin.com/app_images/field_of_play/hockeyish/slider-grooves.png");
  position: absolute;
  top: -3px;
  left: -70px;
}

#FOP-timeline .ui-slider-pattern:after {
  content: url("https://app-assets1.sportngin.com/app_images/field_of_play/hockeyish/slider-grooves.png");
  position: absolute;
  top: -3px;
  right: -70px;
}

#FOP-timeline .interval {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/hockeyish/interval-divider.png") no-repeat 50%;
  display: block;
  width: 4px;
  height: 100%;
  position: relative;
  float: left;
  height: 10px;
  margin-left: 33.3333333%;
  top: -1px;
  z-index: 5;
}

/*/ Time Markers /*/
#FOP-timeline-start,
#FOP-timeline-stop {
  background: #ccc;
  border-radius: 4px;
  display: block;
  font-size: 9px;
  font-weight: bold;
  margin: 0;
  padding: 2px;
  position: relative;
  text-align: center;
  top: -30px;
  width: 30px;
}

#FOP-timeline-start {
  margin-left: 8px;
}

.ui-slider-handle.left .arrow,
.ui-slider-handle.right .arrow {
  border-color: #ccc transparent transparent transparent;
  border-style: solid;
  border-width: 5px;
  display: block;
  height: 0px;
  margin: 0 0 0 20px;
  position: relative;
  top: -30px;
  width: 0px;
}

.ui-slider-handle.right .arrow {
  margin-left: 12px;
}

/*////////// PLAY MARKERS ////////////*/
#FOP-timeline-markers {
  position: relative;
  height: 18px;
  margin: 0 100px;
  padding-top: 15px;
  box-sizing: content-box;
}

/*////////// FILTERS ////////////*/
#FOP-timeline-filters {
  height: 51px;
  line-height: 31px;
  margin: -21px 50px 0;
  text-align: center;
  padding-top: 21px;
}

#FOP-timeline-filters div {
  margin: auto;
  overflow: hidden;
  width: auto;
  display: inline-block;
}

#FOP-timeline-filters span.filters,
#FOP-timeline-filters label {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  line-height: 1.5em;
  padding: 5px 10px;
  display: inline-block;
  float: left;
  margin: auto;
}

#FOP-timeline-filters span.filters {
  background: none;
  color: #000;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.25);
}

#FOP-timeline-filters label {
  background-repeat: repeat-x;
  background-position: 50%;
  color: #ccc;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
  border: 1px solid #ccc;
}

#FOP-timeline-filters label.deselected {
  background: #ddd;
  color: #777;
}

#FOP-timeline-filters label.deselected:hover {
  background: #fff;
  color: #444;
}

#FOP-timeline-filters label span {
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
}

#FOP-timeline-filters label.homeTeam span,
#FOP-timeline-filters label.awayTeam span {
  height: 26px;
}

#FOP-timeline-filters label span.filterIcon {
  height: 30px;
}

#FOP-timeline-filters label.homeTeam span a,
#FOP-timeline-filters label.awayTeam span a {
  margin: 0 auto;
}

#FOP-timeline-filters input[type=checkbox] {
  position: absolute;
  left: -999px;
}

/*/////// TIMELINE CAPS ////////*/
#FOP-timeline-container .cap {
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  width: 84px;
}

#FOP-timeline-container .cap.left {
  left: -5px;
}

#FOP-timeline-container .cap.right {
  right: -9px;
}

#FOP-timeline-container .cap span {
  display: block;
  height: 30px;
  position: absolute;
  width: 80px;
}

#FOP-timeline-container .cap.right span {
  right: 0;
}

/*////////// PLAY AREA ////////////*/
body.hockeyish #FOP a {
  text-decoration: none;
}

body.hockeyish #FOP {
  padding: 24px 16px 0;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
      user-select: none;
  position: relative;
  overflow: hidden;
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, transparent), color-stop(10%, rgba(0, 0, 0, 0.1)), color-stop(32%, rgba(0, 0, 0, 0.2)), color-stop(100%, transparent));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera11.10+ */
  background: -ms-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* IE10+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=0 );
  /* IE6-9 */
  background: linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.1) 10%, rgba(0, 0, 0, 0.2) 32%, transparent 100%);
  /* W3C */
  z-index: 100;
  clear: both;
}

body.hockeyish #FOP .play_area {
  border-radius: 50px;
  height: 452px;
  margin: 80px 0 0 0;
  margin: 0;
  /* temp until current play is added */
  position: relative;
  overflow: visible;
  box-shadow: rgba(0, 0, 0, 0.699219) 0px 6px 8px -4px;
}

body.hockeyish #FOP .plays,
body.hockeyish #FOP .texture2,
body.hockeyish #FOP .texture1 {
  height: 100%;
  width: 100%;
  overflow: visible;
  position: absolute;
  z-index: 1;
  display: block;
  margin: 0;
}

body.hockeyish #FOP .plays {
  z-index: 3;
}

body.hockeyish #FOP .texture2 {
  z-index: 2;
}

body.hockeyish #FOP .sponsor {
  display: none;
}

/*////////// HOCKEY PLAY ICONS ////////////*/
body.hockeyish #FOP #no_location.goal b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/goal.png");
}

body.hockeyish #FOP #no_location.shot b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/shot.png");
}

body.hockeyish #FOP #no_location.shotongoal b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/shot.png");
}

body.hockeyish #FOP #no_location.shotofftarget b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/lacrosse/missed-shot.png");
}

body.hockeyish #FOP #no_location.blockedshot b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/block.png");
}

body.hockeyish #FOP #no_location.penalty b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/penalty.png");
}

body.hockeyish #FOP #no_location.hit b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/hit.png");
}

body.hockeyish #FOP #no_location.faceoff b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/faceoff.png");
}

body.hockeyish #FOP #no_location.looseball b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/lacrosse/loose-ball.png");
}

body.hockeyish #FOP #no_location.turnover b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/turnover.png");
}

body.hockeyish #FOP #no_location.goaliechange b {
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/goalie-change.png");
}

body.hockeyish #FOP #no_location.goal b {
  padding-left: 30px;
}

body.hockeyish #FOP #no_location {
  padding: 10px;
  border: 1px solid #666;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
  position: absolute;
  z-index: 10;
  top: 45%;
  width: 200px;
  left: 50%;
  margin-left: -110px;
  border-radius: 6px;
  display: none;
  text-align: center;
  opacity: .8;
}

body.hockeyish #FOP #no_location b {
  padding: 5px 0 5px 21px;
  background-repeat: no-repeat;
  background-position: left center;
}

/*////////// PERSPECTIVE ////////////*/
html.csstransforms3d body.hockeyish #FOP {
  -webkit-perspective: 700px;
  -o-perspective: 700;
  -ms-perspective: 700;
  perspective: 700;
}

html.csstransforms3d body.hockeyish #FOP .play.new .shadow {
  opacity: 0;
}

html.csstransforms3d body.hockeyish #FOP .play_area,
html.csstransforms3d body.hockeyish #FOP .shadow {
  -webkit-transition: all 0.1s ease-in-out;
          transition: all 0.1s ease-in-out;
}

html.csstransforms3d body.hockeyish #FOP .play_area {
  margin: 0 0 -130px;
  margin: -80px 0 -130px;
  /* temp until current play is added */
  -webkit-transform: rotateX(50deg) scale(0.9) translate3d(0, -150px, -50px);
  transform: rotateX(50deg) scale(0.9) translate3d(0, -150px, -50px);
}

/*////////// FOP POP UPS ////////////*/
.NGIN_tip.hockeyish_fop_popup .container {
  overflow: visible;
}

.hockeyish_fop_popup .NGIN_tip .close_tip {
  font: 11px bold Verdana, Arial, sans-ersif;
  cursor: pointer;
  display: block;
  position: absolute;
  top: -6px;
  right: -6px;
  width: 12px;
  height: 12px;
  border: 2px solid #FFF;
  background: #111;
  color: #FFF;
  font-weight: bold;
  text-align: center;
  line-height: 10px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  box-sizing: content-box;
}

.hockeyish_fop_popup .close_tip span {
  display: block;
  padding: 10px;
  margin: -10px;
  border-radius: 15px;
}

.fopPopUp {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
      user-select: none;
  background: #fff url("https://app-assets1.sportngin.com/app_images/game_show_3/diagonal_stripes.png") left bottom;
  border-radius: 5px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
  font-family: "Montserrat", sans-serif;
  overflow: hidden;
  padding: 7px;
  position: relative;
  text-transform: uppercase;
  margin: 20px 0;
  width: 120px;
}

.fopPopUp.expanded {
  width: 350px;
  margin-left: -115px;
}

.fopPopUp .carrot-top,
.fopPopUp .carrot-bottom {
  border-width: 0;
  border-style: solid;
  border-left-color: transparent;
  border-right-color: transparent;
  background: transparent;
  display: block;
  height: 0px;
  left: 0;
  margin: 0 auto;
  position: relative;
  top: 0;
  width: 0;
}

.fopPopUp .carrot-top {
  border-bottom-color: transparent;
}

.fopPopUp .carrot-bottom {
  border-top-color: transparent;
}

.fopPopUp .playerName .carrot-bottom {
  border-width: 2px 4px 4px 4px;
}

/*///// Play Details /////*/
.fopPopUp .playInfo {
  background-image: url("https://app-assets1.sportngin.com/app_images/game_show_3/stat_comparison-shine.png");
  background-repeat: repeat-x;
  background-position: center;
  border-radius: 5px;
  position: relative;
  padding: 0 4px 0 7px;
  height: 28px;
  line-height: 30px;
}

.fopPopUp .playInfo .playType {
  font-size: 18px;
}

.fopPopUp .timeStamp {
  border-left: solid 1px #fff;
  float: right;
  font-family: "Montserrat", sans-serif;
  padding-left: 3px;
  margin: 7px 0 0 0;
  text-align: left;
}

.fopPopUp .timeStamp .interval,
.fopPopUp .timeStamp .clock {
  font-size: 8px;
  line-height: 8px;
}

.fopPopUp .timeStamp .interval {
  font-weight: bold;
}

.fopPopUp .backToPlay {
  height: 0;
  background: #EEE;
  text-align: center;
  margin: 0;
  position: relative;
  top: -4px;
  border-radius: 5px;
  margin: 0 3px 0 -3px;
  -webkit-shadow: inset 0 -1px 5px 2px rgba(255, 255, 255, 0.3), inset 0 0px 5px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 -1px 5px 2px rgba(255, 255, 255, 0.3), inset 0 0px 5px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  font: 9px normal "Montserrat", sans-serif;
  line-height: 11px;
}

.fopPopUp .backToPlay:hover {
  background: #333;
}

.fopPopUp .backToPlay span {
  text-transform: uppercase;
  color: #999;
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/backToPlay.png") -2px 2px no-repeat;
  padding-left: 18px;
}

/* Two-Player Popups */
.fopPopUp.two-player {
  width: 247px;
}

.fopPopUp.two-player.expanded {
  width: 350px;
  margin-left: -51px;
}

.fopPopUp.Faceoff .winner {
  background: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/faceOff-won.png") no-repeat 50%;
  float: left;
  height: 26px;
  width: 45px;
}

.fopPopUp.Faceoff .playInfo {
  text-align: center;
}

/* PLAYER CARD */
.fopPopUp .playerCard {
  border-radius: 0 0 11px 11px;
  margin: 0 -6px -6px;
  border: 6px solid #FFF;
  border-top: none;
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/playerDetails-bg.png");
  background-repeat: repeat-x;
  overflow: visible;
  float: left;
  /* required for animation */
  height: 78px;
  width: 120px;
}

.fopPopUp .playerCard + .playerCard {
  margin-left: 1px;
  margin-right: -50%;
}

.fopPopUp .playerCard.collapsed + .playerCard {
  margin-left: -6px;
}

.fopPopUp .playerCard > .playerName {
  color: #222;
  text-align: center;
  font-size: 12px;
  line-height: 12px;
  background: #FFF;
  height: 18px;
  padding: 6px 6px 0;
  margin: 0 -6px;
}

.fopPopUp .playerInfo {
  border-radius: 11px 11px 0 0;
  margin: -6px;
  border: 6px solid #FFF;
  border-bottom: none;
  padding: 7px 7px 6px;
  text-align: right;
  line-height: 20px;
  min-width: 106px;
  height: 41px;
}

.fopPopUp .playerInfo > .playerName {
  float: left;
  overflow: hidden;
  white-space: nowrap;
  width: 0;
  text-align: left;
  text-indent: 7px;
}

.fopPopUp .playerInfo > .playerName .firstName {
  display: block;
  font-size: 16px;
}

.fopPopUp .playerInfo > .playerName .lastName {
  display: block;
  font-size: 26px;
}

.fopPopUp .playerPhoto {
  border-radius: 5px;
  height: 40px;
  width: 40px;
  float: left;
  background: #666 none center center;
}

.fopPopUp .playerInfo .teamLogo-small {
  display: inline-block;
  vertical-align: middle;
  border: none;
}

.fopPopUp .playerInfo .playerNumber {
  font-size: 53px;
  line-height: 43px;
  height: 40px;
  text-indent: -50px;
  overflow: hidden;
  text-align: right;
  float: right;
  opacity: .5;
}

.fopPopUp .playerInfo .playerSpecs {
  font-size: 16px;
  line-height: 16px;
  text-align: center;
  overflow: hidden;
  width: auto;
  position: relative;
  top: 4px;
}

.fopPopUp .playerInfo .playerSpecs.small {
  width: 60px;
  margin: 0 0 0 auto;
}

.fopPopUp .playerInfo .playerSpecs.large {
  text-align: right;
  display: none;
}

/* Game Stats */
.fopPopUp .playerStats {
  height: 0;
}

.fopPopUp .playerStatLine {
  padding: 7px 7px 0;
  line-height: 26px;
  white-space: nowrap;
}

.fopPopUp .gameStatsList {
  border-radius: 3px;
  background-color: #333;
  background-color: rgba(0, 0, 0, 0.3);
  width: 74%;
}

.fopPopUp .gameStatsList table {
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  width: 100%;
}

.fopPopUp .gameStatsList td {
  padding: 0 10px 0 0;
  color: #FFF;
  white-space: nowrap;
}

.fopPopUp .gameStatsList td.gameStats {
  padding: 0;
  width: 1%;
}

.fopPopUp .gameStatsList td.gameStats span {
  display: block;
  background: #000;
  border-radius: 3px 0 0 3px;
  padding: 0 5px 0 10px;
}

.fopPopUp .gameStatsList td.separator span {
  display: block;
  height: 0;
  border-color: transparent transparent transparent #000;
  border-width: 13px 0 13px 7px;
  border-style: solid;
}

.fopPopUp .gameStatsList .statCategory {
  vertical-align: middle;
}

.fopPopUp .gameStatsList .singleStat {
  vertical-align: middle;
  font-size: 18px;
}

.fopPopUp .profileButton {
  width: 24%;
  float: right;
  font-size: 12px;
}

.fopPopUp .profileButton a {
  line-height: 13px;
  border-radius: 3px;
  background-color: #333;
  background-color: rgba(0, 0, 0, 0.3);
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/btn-out.png");
  background-repeat: no-repeat;
  background-position: right center;
  display: block;
  padding: 7px;
  color: #FFF;
}

.fopPopUp .profileButton a:hover {
  background-color: #333;
  background-color: rgba(0, 0, 0, 0.75);
}

/* Game Plays */
.fopPopUp .gamePlays {
  color: #FFF;
  overflow: hidden;
  background: #111;
  margin-bottom: 7px;
}

.fopPopUp .playList {
  margin: 0 7px;
  height: 0;
}

.fopPopUp .totalPlays {
  border-bottom: dotted 1px #666;
  font-size: 14px;
  padding: 0 8px 4px;
}

.fopPopUp .singlePlay {
  border-bottom: dotted 1px #666;
  font-size: 14px;
  line-height: 30px;
  padding: 5px;
}

.fopPopUp .singlePlay .playType {
  background: #c82027;
  background-image: url("https://app-assets1.sportngin.com/app_images/black.png");
  display: inline-block;
  border-radius: 4px;
  text-align: center;
  width: 90px;
}

.fopPopUp .singlePlay .role {
  margin-left: 10px;
}

.fopPopUp .singlePlay .time {
  float: right;
  margin-right: 10px;
}

/*/////////// EXPANDED ///////////*/
.fopPopUp.noTransitions {
  -webkit-transition: none !important;
  transition: none !important;
}

/* Transitions */
.fopPopUp,
.fopPopUp .playInfo,
.fopPopUp .playerInfo2,
.fopPopUp .playerInfo > .playerName,
.fopPopUp .playerInfo .playerNumber,
.fopPopUp .playerCard,
.fopPopUp .playerCard > .playerName,
.fopPopUp .playerStats,
.fopPopUp .gamePlays,
.fopPopUp .playList,
.fopPopUp .backToPlay {
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
  overflow: hidden;
}

/* Hiden When Expanded */
.fopPopUp.expanded .playInfo,
.fopPopUp.expanded .playerCard > .playerName {
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
}

.fopPopUp.expanded .playerInfo .playerSpecs.small {
  display: none;
}

.fopPopUp.expanded .playerCard {
  width: 350px;
  height: 255px;
}

.fopPopUp .playerCard.collapsed {
  width: 0;
  height: 0;
}

/* Visible When Expanded */
.fopPopUp.expanded .playerStats {
  height: 40px;
}

.fopPopUp.expanded .gamePlays {
  height: auto;
}

.fopPopUp.expanded .playList {
  height: 140px;
  overflow: auto;
}

.fopPopUp.expanded .playerInfo .playerSpecs.large {
  display: block;
}

.fopPopUp.expanded .playerInfo > .playerName {
  width: 200px;
  margin-right: -200px;
}

.fopPopUp.expanded .playerInfo .playerNumber {
  text-indent: 5px;
}

.fopPopUp.expanded .gamePlays .carrot-top,
.fopPopUp.expanded .gamePlays .carrot-bottom {
  border-width: 5px;
}

.fopPopUp.expanded .backToPlay {
  height: 12px;
}

/* HOVER STATE */
.fopPopUp .playerCard.expandable:hover {
  cursor: pointer;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIzMiUiIHN0b3AtY29sb3I9IiNjNGM0YzQiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPHN0b3Agb2Zmc2V0PSI2NyUiIHN0b3AtY29sb3I9IiNmZGZkZmQiIHN0b3Atb3BhY2l0eT0iMC40NiIvPgogICAgPHN0b3Agb2Zmc2V0PSI2OCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMC4yMyIvPgogICAgPHN0b3Agb2Zmc2V0PSI2OSUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAuMzYiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==);
  /* FF3.6+ */
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(32%, rgba(196, 196, 196, 0)), color-stop(67%, rgba(253, 253, 253, 0.46)), color-stop(68%, rgba(255, 255, 255, 0.23)), color-stop(69%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(255, 255, 255, 0.36)));
  /* Chrome,Safari4+ */
  background-image: -webkit-linear-gradient(top, rgba(196, 196, 196, 0) 32%, rgba(253, 253, 253, 0.46) 67%, rgba(255, 255, 255, 0.23) 68%, rgba(255, 255, 255, 0) 69%, rgba(255, 255, 255, 0.36) 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera 11.10+ */
  /* IE10+ */
  background-image: linear-gradient(top, rgba(196, 196, 196, 0) 32%, rgba(253, 253, 253, 0.46) 67%, rgba(255, 255, 255, 0.23) 68%, rgba(255, 255, 255, 0) 69%, rgba(255, 255, 255, 0.36) 100%);
  /* W3C */
}

.fopPopUp .playerCard.expandable:hover .playerInfo {
  box-shadow: inset 0 0 15px 2px rgba(255, 255, 255, 0.6);
}

.fopPopUp.expanded .playerCard.expandable:hover {
  cursor: default;
  background-image: url("https://app-assets1.sportngin.com/app_images/field_of_play/ice_hockey/playerDetails-bg.png");
}

.fopPopUp.expanded .playerCard.expandable:hover .playerInfo {
  box-shadow: none;
}

html.csstransforms3d body.hockeyish #FOP .play {
  position: absolute;
  width: 35px;
  -webkit-transition: opacity 0ms linear;
          transition: opacity 0ms linear;
  -webkit-transform: translate3d(-17.5px, 15px, 1px);
  transform: translate3d(-17.5px, 15px, 1px);
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  background: url("https://app-assets1.sportngin.com/app_images/live/hockey_icon_shadow.png") bottom no-repeat;
}

html.csstransforms3d body.hockeyish .svg-pin {
  height: 48px;
  -webkit-transform-origin: 0 48px 0;
  transform-origin: 0 48px 0;
  -webkit-transform: rotateX(-90deg) translate3d(1px, 0, -15px);
  transform: rotateX(-90deg) translate3d(1px, 0, -15px);
}

html.csstransforms3d body.hockeyish .svg-pin svg {
  height: 48px;
  width: 35px;
}

html.csstransforms3d body.hockeyish .svg-pin svg .position-pin {
  stroke: #000;
}

html.csstransforms3d body.hockeyish .svg-pin.homeTeam, .svg-pin.awayTeam {
  background-color: transparent;
}

/* Play Action Activation on SVG */
body.hockeyish #FOP .play {
  cursor: pointer;
  display: none;
}

html.csstransforms3d body.hockeyish .play svg .action-icon {
  opacity: 0;
  fill: #fff;
  stroke: #000;
}

#FOP-timeline-filters,
.fopPopUp,
.fopPopUp .playInfo,
.fopPopUp .playerInfo,
.fopPopUp .playerInfo2,
.fopPopUp .playerInfo > .playerName,
.fopPopUp .playerInfo .playerNumber,
.fopPopUp .playerCard,
.fopPopUp .playerCard > .playerName,
.fopPopUp .playerStats,
.fopPopUp .gamePlays,
.fopPopUp .playList,
.fopPopUp .backToPlay {
  box-sizing: content-box;
}

html.csstransforms3d body.hockeyish #FOP .play.penalty svg .penalty,
html.csstransforms3d body.hockeyish #FOP .play.hit svg .hit,
html.csstransforms3d body.hockeyish #FOP .play.shot svg .shot,
html.csstransforms3d body.hockeyish #FOP .play.blockedshot svg .block,
html.csstransforms3d body.hockeyish #FOP .play.faceoff svg .faceoff,
html.csstransforms3d body.hockeyish #FOP .play.turnover svg .turnover,
html.csstransforms3d body.hockeyish #FOP .play.goal svg .goal {
  opacity: 1.0;
}

html.csstransforms3d body.hockeyish #FOP .play.new .svg-pin {
  -webkit-transform-origin: 0 100px 100px;
  transform-origin: 0 100px 100px;
  opacity: 0;
}

html.csstransforms3d body.hockeyish #FOP .play_area,
html.csstransforms3d body.hockeyish #FOP .plays,
html.csstransforms3d body.hockeyish #FOP .play {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

html.csstransforms3d body.hockeyish #FOP .play .shadow {
  display: none;
}

#FOP-timeline-markers .marker.filter_show.slider_show.team_show,
body.hockeyish #FOP .play.filter_show.slider_show.team_show {
  display: block;
}

/* MARKERS */
#FOP-timeline-markers .marker {
  position: absolute;
  width: 6px;
  height: 24px;
  bottom: 10px;
  background: none;
  margin-left: -3px;
  overflow: visible;
  display: none;
}

#liveGameSimple:hover .marker svg,
#liveGameSimple.dim_plays .marker svg,
body.hockeyish #liveGameSimple.dim_plays .play .svg-pin,
body.hockeyish #liveGameSimple:hover .play .svg-pin {
  opacity: .2;
}

body.hockeyish #liveGameSimple.dim_plays .play.active .svg-pin,
body.hockeyish #liveGameSimple:hover .play .svg-pin:hover,
body.hockeyish #liveGameSimple.dim_plays .marker.active {
  opacity: 1;
  z-index: 499;
}

#FOP-timeline-markers .marker:hover svg,
#FOP-timeline-markers .marker.active svg {
  opacity: 1.0;
}

#liveGameSimple.no-nested-3d-transforms {
  display: none;
}

.games-slider li.selected a, .games-slider a:hover {
  background: #0054A6;
  box-shadow: 0 2px #0054A6 inset, 0 -2px #0054A6 inset;
  text-decoration: none;
}

.games-slider li.selected a *, .games-slider a:hover * {
  color: #fff;
}

.games-slider {
  background-color: #eee;
  font-family: "Montserrat", sans-serif;
  margin: 5px 0 15px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.games-slider ul {
  color: #666;
  display: table;
  font-size: 10px;
  list-style: none;
  text-align: center;
}

.games-slider li {
  display: table-cell;
}

.games-slider li:first-child a {
  border-left-width: 2px;
}

.games-slider li:last-child a {
  border-right-width: 2px;
}

.games-slider a {
  background: #fff;
  box-shadow: 0 2px #b5b5b5 inset, 0 -2px #b5b5b5 inset;
  border-color: #b5b5b5;
  border-style: solid;
  border-width: 0 1px;
  box-sizing: border-box;
  color: #666;
  display: block;
  height: 63px;
  padding: 9px 0 0;
  position: relative;
  -webkit-transition: background .25s, border .25s, box-shadow .25s, color .25s;
  transition: background .25s, border .25s, box-shadow .25s, color .25s;
  vertical-align: middle;
  width: 50px;
}

.games-slider-inner {
  display: table;
}

.games-slider-group {
  display: table-cell;
  overflow: hidden;
  padding-left: 17px;
  position: relative;
}

.games-slider-month {
  background: #666;
  box-sizing: border-box;
  color: #fff;
  font-size: 10px;
  height: 17px;
  line-height: 16px;
  padding: 1px 0 1px 6px;
  position: absolute;
  text-transform: uppercase;
  -webkit-transform: rotatez(-90deg) translate(-100%, -100%);
  transform: rotatez(-90deg) translate(-100%, -100%);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  white-space: nowrap;
  width: 63px;
}

.games-slider-date {
  display: block;
  font-size: 22px;
  font-weight: 900;
  line-height: 1em;
  padding: 4px 0;
}

.games-slider-day,
.games-slider-count,
.games-slider-time,
.games-slider-outcome {
  display: block;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  line-height: .7em;
}

.games-slider-day {
  font-size: 13px;
  text-transform: uppercase;
}

.games-slider-count,
.games-slider-time {
  font-size: 10px;
  color: #999;
}

.games-slider-outcome {
  font-size: 10px;
  color: #0054A6;
  text-transform: uppercase;
}

.game-header {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  text-align: center;
  position: relative;
}

.game-header > * {
  height: 100%;
}

.game-header .game-title {
  display: block;
  line-height: 1;
}

.game-header .datetime {
  display: block;
  font-size: 14px;
  border-top: 1px solid #ccc;
  padding-top: .3em;
  line-height: 1.2;
}

.game-header .datetime * {
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
}

.game-header .team-abbrev,
.game-header .team-name {
  color: #0054A6;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
}

.game-header .team-abbrev {
  font-size: 14px;
  text-transform: uppercase;
  display: none;
  line-height: 1;
  margin-top: 8px;
}

.game-header .team-name {
  box-sizing: border-box;
  -ms-flex: 1 1 50%;
  -webkit-box-flex: 1;
          flex: 1 1 50%;
  text-align: right;
  padding: 0 15px 0 0;
  font-size: 20px;
  line-height: 1.2;
  max-height: 2.4em;
  overflow: hidden;
  text-overflow: ellipsis;
}

.game-header .team-name ~ .team-name {
  padding: 0 0 0 15px;
  text-align: left;
}

.game-header .vs,
.game-header .scores {
  display: block;
  overflow: hidden;
  font: 36px "Montserrat", sans-serif;
  font-weight: 900;
}

.game-header .scores .separator {
  font-weight: 600;
  margin: 0 -0.1em;
}

.game-header .status {
  font-size: 14px;
  display: block;
  border-top: 1px solid #ccc;
}

.game-header .team-logo {
  padding-bottom: 75%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}

.game-header .team-logo:before {
  content: '';
  width: 4px;
  height: 100%;
  display: block;
  position: absolute;
}

.game-header .team-crest {
  box-sizing: border-box;
  -ms-flex: 0 0 106px;
  -webkit-box-flex: 0;
          flex: 0 0 106px;
}

.game-header .team-crest.away .team-logo {
  margin-right: 6px;
}

.game-header .team-crest.away .team-logo:before {
  right: -6px;
}

.game-header .team-crest.home .team-logo {
  margin-left: 6px;
}

.game-header .team-crest.home .team-logo:before {
  left: -6px;
}

.game-header .game-header-center {
  box-sizing: border-box;
  -ms-flex: 0 0 11em;
  -webkit-box-flex: 0;
          flex: 0 0 11em;
  padding: 0 15px;
}

.game-header ~ .boxscore-inner-container {
  margin-top: 8px;
}

@media only screen and (min-width: 1000px) {
  .layout-66-33 .column-1 .game-header .team-name,
  .layout-33-66 .column-2 .game-header .team-name,
  .layout-50-25-25 .column-1 .game-header .team-name,
  .layout-25-50-25 .column-2 .game-header .team-name,
  .layout-25-25-50 .column-3 .game-header .team-name,
  .layout-50-50 .game-header .team-name {
    display: none;
  }
  .layout-66-33 .column-1 .game-header .team-abbrev,
  .layout-33-66 .column-2 .game-header .team-abbrev,
  .layout-50-25-25 .column-1 .game-header .team-abbrev,
  .layout-25-50-25 .column-2 .game-header .team-abbrev,
  .layout-25-25-50 .column-3 .game-header .team-abbrev,
  .layout-50-50 .game-header .team-abbrev {
    display: block;
  }
  .layout-66-33 .column-1 .game-header .team-crest,
  .layout-33-66 .column-2 .game-header .team-crest,
  .layout-50-25-25 .column-1 .game-header .team-crest,
  .layout-25-50-25 .column-2 .game-header .team-crest,
  .layout-25-25-50 .column-3 .game-header .team-crest,
  .layout-50-50 .game-header .team-crest {
    box-sizing: border-box;
    -ms-flex: 0 1 106px;
    -webkit-box-flex: 0;
            flex: 0 1 106px;
  }
  .layout-33-66 .column-1 .game-header,
  .layout-66-33 .column-2 .game-header,
  .layout-33-33-33 .game-header,
  .layout-50-25-25 .column:not(.column-1) .game-header,
  .layout-25-50-25 .column:not(.column-2) .game-header,
  .layout-25-25-50 .column:not(.column-3) .game-header {
    padding-top: calc(36% + 14px + 8px);
  }
  .layout-33-66 .column-1 .game-header.has-title,
  .layout-66-33 .column-2 .game-header.has-title,
  .layout-33-33-33 .game-header.has-title,
  .layout-50-25-25 .column:not(.column-1) .game-header.has-title,
  .layout-25-50-25 .column:not(.column-2) .game-header.has-title,
  .layout-25-25-50 .column:not(.column-3) .game-header.has-title {
    padding-top: calc(36% + 24px + 14px + 8px);
  }
  .layout-33-66 .column-1 .game-header.has-title .team-crest,
  .layout-66-33 .column-2 .game-header.has-title .team-crest,
  .layout-33-33-33 .game-header.has-title .team-crest,
  .layout-50-25-25 .column:not(.column-1) .game-header.has-title .team-crest,
  .layout-25-50-25 .column:not(.column-2) .game-header.has-title .team-crest,
  .layout-25-25-50 .column:not(.column-3) .game-header.has-title .team-crest {
    top: 24px;
  }
  .layout-33-66 .column-1 .game-header .game-header-center,
  .layout-66-33 .column-2 .game-header .game-header-center,
  .layout-33-33-33 .game-header .game-header-center,
  .layout-50-25-25 .column:not(.column-1) .game-header .game-header-center,
  .layout-25-50-25 .column:not(.column-2) .game-header .game-header-center,
  .layout-25-25-50 .column:not(.column-3) .game-header .game-header-center {
    box-sizing: border-box;
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
            flex: 0 0 100%;
    padding: 0;
  }
  .layout-33-66 .column-1 .game-header .team-abbrev,
  .layout-66-33 .column-2 .game-header .team-abbrev,
  .layout-33-33-33 .game-header .team-abbrev,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-abbrev,
  .layout-25-50-25 .column:not(.column-2) .game-header .team-abbrev,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-abbrev {
    display: block;
  }
  .layout-33-66 .column-1 .game-header .team-name,
  .layout-66-33 .column-2 .game-header .team-name,
  .layout-33-33-33 .game-header .team-name,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-name,
  .layout-25-50-25 .column:not(.column-2) .game-header .team-name,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-name {
    display: none;
  }
  .layout-33-66 .column-1 .game-header .team-crest,
  .layout-66-33 .column-2 .game-header .team-crest,
  .layout-33-33-33 .game-header .team-crest,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-crest,
  .layout-25-50-25 .column:not(.column-2) .game-header .team-crest,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-crest {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50% - 4px);
    height: auto;
  }
  .layout-33-66 .column-1 .game-header .team-crest ~ .team-crest,
  .layout-66-33 .column-2 .game-header .team-crest ~ .team-crest,
  .layout-33-33-33 .game-header .team-crest ~ .team-crest,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-crest ~ .team-crest,
  .layout-25-50-25 .column:not(.column-2) .game-header .team-crest ~ .team-crest,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-crest ~ .team-crest {
    left: auto;
    right: 0;
  }
  .layout-33-66 .column-1 .game-header .game-title,
  .layout-66-33 .column-2 .game-header .game-title,
  .layout-33-33-33 .game-header .game-title,
  .layout-50-25-25 .column:not(.column-1) .game-header .game-title,
  .layout-25-50-25 .column:not(.column-2) .game-header .game-title,
  .layout-25-25-50 .column:not(.column-3) .game-header .game-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    font-size: 16px;
  }
  .layout-33-66 .column-1 .game-header .scores,
  .layout-66-33 .column-2 .game-header .scores,
  .layout-33-33-33 .game-header .scores,
  .layout-50-25-25 .column:not(.column-1) .game-header .scores,
  .layout-25-50-25 .column:not(.column-2) .game-header .scores,
  .layout-25-25-50 .column:not(.column-3) .game-header .scores {
    overflow: hidden;
    bottom: 22px;
  }
  .layout-33-66 .column-1 .game-header .scores .home,
  .layout-33-66 .column-1 .game-header .scores .away,
  .layout-66-33 .column-2 .game-header .scores .home,
  .layout-66-33 .column-2 .game-header .scores .away,
  .layout-33-33-33 .game-header .scores .home,
  .layout-33-33-33 .game-header .scores .away,
  .layout-50-25-25 .column:not(.column-1) .game-header .scores .home,
  .layout-50-25-25 .column:not(.column-1) .game-header .scores .away,
  .layout-25-50-25 .column:not(.column-2) .game-header .scores .home,
  .layout-25-50-25 .column:not(.column-2) .game-header .scores .away,
  .layout-25-25-50 .column:not(.column-3) .game-header .scores .home,
  .layout-25-25-50 .column:not(.column-3) .game-header .scores .away {
    display: block;
    float: left;
    width: calc(50% - 4px);
  }
  .layout-33-66 .column-1 .game-header .scores .home,
  .layout-66-33 .column-2 .game-header .scores .home,
  .layout-33-33-33 .game-header .scores .home,
  .layout-50-25-25 .column:not(.column-1) .game-header .scores .home,
  .layout-25-50-25 .column:not(.column-2) .game-header .scores .home,
  .layout-25-25-50 .column:not(.column-3) .game-header .scores .home {
    float: right;
  }
  .layout-33-66 .column-1 .game-header .scores .separator,
  .layout-66-33 .column-2 .game-header .scores .separator,
  .layout-33-33-33 .game-header .scores .separator,
  .layout-50-25-25 .column:not(.column-1) .game-header .scores .separator,
  .layout-25-50-25 .column:not(.column-2) .game-header .scores .separator,
  .layout-25-25-50 .column:not(.column-3) .game-header .scores .separator {
    display: none;
  }
  .layout-33-66 .column-1 .game-header:not(:last-child) .datetime,
  .layout-33-66 .column-1 .game-header:not(:last-child) .status,
  .layout-66-33 .column-2 .game-header:not(:last-child) .datetime,
  .layout-66-33 .column-2 .game-header:not(:last-child) .status,
  .layout-33-33-33 .game-header:not(:last-child) .datetime,
  .layout-33-33-33 .game-header:not(:last-child) .status,
  .layout-50-25-25 .column:not(.column-1) .game-header:not(:last-child) .datetime,
  .layout-50-25-25 .column:not(.column-1) .game-header:not(:last-child) .status,
  .layout-25-50-25 .column:not(.column-2) .game-header:not(:last-child) .datetime,
  .layout-25-50-25 .column:not(.column-2) .game-header:not(:last-child) .status,
  .layout-25-25-50 .column:not(.column-3) .game-header:not(:last-child) .datetime,
  .layout-25-25-50 .column:not(.column-3) .game-header:not(:last-child) .status {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 999px) {
  .layout-33-33-33 .game-header,
  .layout-33-66 .column-1 .game-header,
  .layout-66-33 .column-2 .game-header,
  .layout-25-50-25 .game-header {
    padding-top: calc(36% + 14px + 8px);
  }
  .layout-33-33-33 .game-header.has-title,
  .layout-33-66 .column-1 .game-header.has-title,
  .layout-66-33 .column-2 .game-header.has-title,
  .layout-25-50-25 .game-header.has-title {
    padding-top: calc(36% + 24px + 14px + 8px);
  }
  .layout-33-33-33 .game-header.has-title .team-crest,
  .layout-33-66 .column-1 .game-header.has-title .team-crest,
  .layout-66-33 .column-2 .game-header.has-title .team-crest,
  .layout-25-50-25 .game-header.has-title .team-crest {
    top: 24px;
  }
  .layout-33-33-33 .game-header .game-header-center,
  .layout-33-66 .column-1 .game-header .game-header-center,
  .layout-66-33 .column-2 .game-header .game-header-center,
  .layout-25-50-25 .game-header .game-header-center {
    box-sizing: border-box;
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
            flex: 0 0 100%;
    padding: 0;
  }
  .layout-33-33-33 .game-header .team-abbrev,
  .layout-33-66 .column-1 .game-header .team-abbrev,
  .layout-66-33 .column-2 .game-header .team-abbrev,
  .layout-25-50-25 .game-header .team-abbrev {
    display: block;
  }
  .layout-33-33-33 .game-header .team-name,
  .layout-33-66 .column-1 .game-header .team-name,
  .layout-66-33 .column-2 .game-header .team-name,
  .layout-25-50-25 .game-header .team-name {
    display: none;
  }
  .layout-33-33-33 .game-header .team-crest,
  .layout-33-66 .column-1 .game-header .team-crest,
  .layout-66-33 .column-2 .game-header .team-crest,
  .layout-25-50-25 .game-header .team-crest {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50% - 4px);
    height: auto;
  }
  .layout-33-33-33 .game-header .team-crest ~ .team-crest,
  .layout-33-66 .column-1 .game-header .team-crest ~ .team-crest,
  .layout-66-33 .column-2 .game-header .team-crest ~ .team-crest,
  .layout-25-50-25 .game-header .team-crest ~ .team-crest {
    left: auto;
    right: 0;
  }
  .layout-33-33-33 .game-header .game-title,
  .layout-33-66 .column-1 .game-header .game-title,
  .layout-66-33 .column-2 .game-header .game-title,
  .layout-25-50-25 .game-header .game-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    font-size: 16px;
  }
  .layout-33-33-33 .game-header .scores,
  .layout-33-66 .column-1 .game-header .scores,
  .layout-66-33 .column-2 .game-header .scores,
  .layout-25-50-25 .game-header .scores {
    overflow: hidden;
    bottom: 22px;
  }
  .layout-33-33-33 .game-header .scores .home,
  .layout-33-33-33 .game-header .scores .away,
  .layout-33-66 .column-1 .game-header .scores .home,
  .layout-33-66 .column-1 .game-header .scores .away,
  .layout-66-33 .column-2 .game-header .scores .home,
  .layout-66-33 .column-2 .game-header .scores .away,
  .layout-25-50-25 .game-header .scores .home,
  .layout-25-50-25 .game-header .scores .away {
    display: block;
    float: left;
    width: calc(50% - 4px);
  }
  .layout-33-33-33 .game-header .scores .home,
  .layout-33-66 .column-1 .game-header .scores .home,
  .layout-66-33 .column-2 .game-header .scores .home,
  .layout-25-50-25 .game-header .scores .home {
    float: right;
  }
  .layout-33-33-33 .game-header .scores .separator,
  .layout-33-66 .column-1 .game-header .scores .separator,
  .layout-66-33 .column-2 .game-header .scores .separator,
  .layout-25-50-25 .game-header .scores .separator {
    display: none;
  }
  .layout-33-33-33 .game-header:not(:last-child) .datetime,
  .layout-33-33-33 .game-header:not(:last-child) .status,
  .layout-33-66 .column-1 .game-header:not(:last-child) .datetime,
  .layout-33-66 .column-1 .game-header:not(:last-child) .status,
  .layout-66-33 .column-2 .game-header:not(:last-child) .datetime,
  .layout-66-33 .column-2 .game-header:not(:last-child) .status,
  .layout-25-50-25 .game-header:not(:last-child) .datetime,
  .layout-25-50-25 .game-header:not(:last-child) .status {
    display: none;
  }
  .layout-33-66 .column-2 .game-header .team-name,
  .layout-66-33 .column-1 .game-header .team-name,
  .layout-50-50 .game-header .team-name,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-name,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-name {
    display: none;
  }
  .layout-33-66 .column-2 .game-header .team-abbrev,
  .layout-66-33 .column-1 .game-header .team-abbrev,
  .layout-50-50 .game-header .team-abbrev,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-abbrev,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-abbrev {
    display: block;
  }
  .layout-33-66 .column-2 .game-header .team-crest,
  .layout-66-33 .column-1 .game-header .team-crest,
  .layout-50-50 .game-header .team-crest,
  .layout-25-25-50 .column:not(.column-3) .game-header .team-crest,
  .layout-50-25-25 .column:not(.column-1) .game-header .team-crest {
    box-sizing: border-box;
    -ms-flex: 0 1 106px;
    -webkit-box-flex: 0;
            flex: 0 1 106px;
  }
}

@media only screen and (max-width: 767px) {
  .game-header .team-name {
    display: none;
  }
  .game-header .team-abbrev {
    display: block;
  }
  .game-header .team-crest {
    box-sizing: border-box;
    -ms-flex: 0 1 106px;
    -webkit-box-flex: 0;
            flex: 0 1 106px;
  }
}

@media only screen and (max-width: 400px) {
  .game-header {
    padding-top: calc(36% + 14px + 8px);
  }
  .game-header.has-title {
    padding-top: calc(36% + 24px + 14px + 8px);
  }
  .game-header.has-title .team-crest {
    top: 24px;
  }
  .game-header .game-header-center {
    box-sizing: border-box;
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
            flex: 0 0 100%;
    padding: 0;
  }
  .game-header .team-abbrev {
    display: block;
  }
  .game-header .team-name {
    display: none;
  }
  .game-header .team-crest {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50% - 4px);
    height: auto;
  }
  .game-header .team-crest ~ .team-crest {
    left: auto;
    right: 0;
  }
  .game-header .game-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    font-size: 16px;
  }
  .game-header .scores {
    overflow: hidden;
    bottom: 22px;
  }
  .game-header .scores .home,
  .game-header .scores .away {
    display: block;
    float: left;
    width: calc(50% - 4px);
  }
  .game-header .scores .home {
    float: right;
  }
  .game-header .scores .separator {
    display: none;
  }
  .game-header:not(:last-child) .datetime,
  .game-header:not(:last-child) .status {
    display: none;
  }
}

#postList div.postElement {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
  padding-left: 100px;
}

#postList div.postElement:last-of-type {
  border: none;
}

#postList div.postElement .postUser img {
  border: 2px solid #ddd;
  height: 60px;
  margin-left: -80px;
  width: auto;
}

#postList div.postElement .postUser img:not(:first-of-type) {
  display: none;
}

#postList div.postElement .postUser .name {
  display: block;
  font-family: "Montserrat", sans-serif;
  line-height: 1.3em;
}

#postList div.postElement .postUser .date {
  color: #666;
  display: block;
  font-size: 10px;
  margin: .25em 0 1.5em;
  text-transform: uppercase;
}

#postList div.postElement .button-content {
  background: transparent;
  border: none;
}

#postList div.postElement .button-content:hover {
  background: transparent;
}

#postList div.postElement .button-image-right {
  display: none;
}

#postList div.postElement .button-image-right ~ .button-content {
  padding: 0;
}

@media (max-width: 414px) {
  #postList div.postElement {
    padding-left: 10px;
    padding-right: 10px;
  }
  #postList div.postElement .postUser {
    padding-left: 80px;
  }
  #postList div.postElement .postContent {
    clear: left;
    padding-top: 10px;
  }
}

.toolsLightbox #postContent {
  padding: 15px 15px 0;
}

.toolsLightbox #postContent .postElement {
  margin-bottom: 0;
}

.toolsLightbox #postComments {
  margin-top: 0;
  padding: 0 15px 15px;
}

.widget-multi-stat-filterable [id^="multi_stat"] {
  overflow-x: auto;
}

.widget-multi-stat-filterable [id^="multi_stat"] + div {
  border-style: solid;
  border-width: 0;
  border-bottom-color: #ddd;
  border-bottom-width: 1px !important;
  padding: 6px 12px;
}

.widget-multi-stat-filterable [id^="multi_stat"] + div a {
  color: #0DB14C;
  font-size: 13px;
  text-transform: uppercase;
  display: block;
  text-align: right;
}

.widget-multi-stat-filterable [id^="multi_stat"] + div a:after {
  color: #0054A6;
  content: '\f061';
  display: inline-block;
  font-family: 'FontAwesome';
  margin: -.1em 0 0 .4em;
  font-size: .9em;
}

.widget-multi-stat-filterable .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  position: relative;
}

.widget-multi-stat-filterable .sportTableLabel .teamLogo-tiny {
  left: 14px;
  position: absolute;
  top: 14px;
}

.widget-multi-stat-filterable .sportTableLabel * {
  color: inherit;
}

.widget-multi-stat-filterable .sportTableLabel h4.teamName {
  font-size: 24px;
  margin: 0;
  padding-left: 30px;
}

.widget-multi-stat-filterable .sportTableLabel .seasonDisplay,
.widget-multi-stat-filterable .sportTableLabel .expandedView {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-transform: none;
}

.widget-multi-stat-filterable .sportTableLabel .linkText {
  display: block;
}

.widget-multi-stat-filterable .sportTableLabel .season-separator {
  display: none;
}

.widget-multi-stat-filterable .statTable th {
  text-align: center;
}

.widget-multi-stat-filterable .statTable th img {
  display: none;
}

.widget-multi-stat-filterable .statTable th:first-child {
  text-align: center;
  width: 30px;
}

.widget-multi-stat-filterable .statTable td {
  text-align: center;
  white-space: nowrap;
}

.widget-multi-stat-filterable .statTable td:first-child {
  font-weight: 700;
}

.widget-multi-stat-filterable .statTable .statPlayer {
  text-align: left;
}

.widget-multi-stat-filterable .statTable .statPlayer a {
  display: inline-block;
  min-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 180px;
}

@media (min-width: 768px) {
  .col-md-3 [id^="multi_stat"] .sportTableLabel,
  .col-md-4 [id^="multi_stat"] .sportTableLabel {
    max-width: 100%;
    padding-left: 10px;
  }
  .col-md-3 [id^="multi_stat"] .sportTableLabel .teamLogo-tiny,
  .col-md-4 [id^="multi_stat"] .sportTableLabel .teamLogo-tiny {
    display: none;
  }
  .col-md-3 [id^="multi_stat"] .sportTableLabel h4 > *,
  .col-md-4 [id^="multi_stat"] .sportTableLabel h4 > * {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@media (min-width: 768px) and (max-width: 999px) {
  .layout-25-50-25 .col-md-3 [id^="multi_stat"] .sportTableLabel,
  .layout-25-50-25 .col-md-6 [id^="multi_stat"] .sportTableLabel {
    max-width: 100%;
    padding-left: 10px;
  }
  .layout-25-50-25 .col-md-3 [id^="multi_stat"] .sportTableLabel .teamLogo-tiny,
  .layout-25-50-25 .col-md-6 [id^="multi_stat"] .sportTableLabel .teamLogo-tiny {
    display: none;
  }
  .layout-25-50-25 .col-md-3 [id^="multi_stat"] .sportTableLabel h4 > *,
  .layout-25-50-25 .col-md-6 [id^="multi_stat"] .sportTableLabel h4 > * {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* Widget - Stat Leader
---------------------------------------------------------------------------------------------------- */
.widget-leader .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  position: relative;
}

.widget-leader .sportTableLabel .teamLogo-tiny {
  left: 14px;
  position: absolute;
  top: 14px;
}

.widget-leader .sportTableLabel * {
  color: inherit;
}

.widget-leader .sportTableLabel h4.teamName {
  font-size: 24px;
  margin: 0;
  padding-left: 30px;
}

.widget-leader .sportTableLabel .seasonDisplay,
.widget-leader .sportTableLabel .expandedView {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-transform: none;
}

.widget-leader .sportTableLabel .linkText {
  display: block;
}

.widget-leader .sportTableLabel .season-separator {
  display: none;
}

.widget-leader .statTable {
  width: 100%;
}

.widget-leader .statTable th:nth-child(1), .widget-leader .statTable td:nth-child(1) {
  text-align: center;
}

.widget-leader .statTable th:nth-child(2), .widget-leader .statTable td:nth-child(2) {
  text-align: left;
}

.widget-leader .statTable th:nth-child(3), .widget-leader .statTable td:nth-child(3) {
  text-align: center;
}

.widget-leader .statTable th:nth-child(1) {
  width: 30px;
}

.widget-leader .statTable td {
  white-space: nowrap;
}

.widget-leader .statTable td:nth-child(1) {
  font-weight: 700;
}

.widget-leader .leaderName {
  display: inline-block;
  width: 110px;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.widget-leader .leader-highlight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 15px;
  background-color: #e6e6e6;
}

.widget-leader .stats {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin: 0 0 0 10px;
  text-align: center;
}

.widget-leader .stats-major,
.widget-leader .stats-minor {
  margin: 0;
  padding: 0;
}

.widget-leader .player_photo {
  overflow: hidden;
  height: 70px;
  border: 3px solid #0054A6;
  background-color: #C7C7C7;
}

.widget-leader .player_photo img {
  display: block;
  width: 70px;
}

[id^="widget_standings_widget_"] .sportTableLabel,
#tab_division_standings_content .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  position: relative;
}

[id^="widget_standings_widget_"] .sportTableLabel .teamLogo-tiny,
#tab_division_standings_content .sportTableLabel .teamLogo-tiny {
  left: 14px;
  position: absolute;
  top: 14px;
}

[id^="widget_standings_widget_"] .sportTableLabel *,
#tab_division_standings_content .sportTableLabel * {
  color: inherit;
}

[id^="widget_standings_widget_"] .sportTableLabel h4.teamName,
#tab_division_standings_content .sportTableLabel h4.teamName {
  font-size: 24px;
  margin: 0;
  padding-left: 30px;
}

[id^="widget_standings_widget_"] .sportTableLabel .seasonDisplay,
[id^="widget_standings_widget_"] .sportTableLabel .expandedView,
#tab_division_standings_content .sportTableLabel .seasonDisplay,
#tab_division_standings_content .sportTableLabel .expandedView {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-transform: none;
}

[id^="widget_standings_widget_"] .sportTableLabel .linkText,
#tab_division_standings_content .sportTableLabel .linkText {
  display: block;
}

[id^="widget_standings_widget_"] .sportTableLabel .season-separator,
#tab_division_standings_content .sportTableLabel .season-separator {
  display: none;
}

[id^="widget_standings_widget_"] ul ul,
#tab_division_standings_content ul ul {
  padding-top: 2px;
  padding-left: 25px;
  position: relative;
}

[id^="widget_standings_widget_"] ul ul:before,
#tab_division_standings_content ul ul:before {
  background: #999;
  content: '';
  height: calc(100% - 4px);
  left: 2px;
  position: absolute;
  width: 3px;
}

[id^="widget_standings_widget_"] ul ul h4.teamName:before,
#tab_division_standings_content ul ul h4.teamName:before {
  background: #999;
  content: '';
  height: 3px;
  left: -22px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  width: 20px;
}

@media (max-width: 400px) {
  [id^="widget_standings_widget_"] ul ul,
  #tab_division_standings_content ul ul {
    padding-left: 4px;
  }
  [id^="widget_standings_widget_"] ul ul h4.teamName:before,
  #tab_division_standings_content ul ul h4.teamName:before {
    display: none;
  }
}

[id^="widget_standings_widget_"] th:not(.name),
#tab_division_standings_content th:not(.name) {
  text-align: center;
}

tr[id^="standing_"] td.name {
  text-align: left;
}

tr[id^="standing_"] .teamLogo-tiny {
  background: #fff;
  margin-right: 10px;
  position: relative;
}

tr[id^="standing_"] .teamLogo-tiny:after {
  background: #0DB14C;
  content: '';
  height: 100%;
  position: absolute;
  right: -5px;
  width: 3px;
}

.NginTableControls {
  display: none;
}

[id^="widget_team_stats_widget_"] .sportTableLabel {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 9px);
  height: auto;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background: #0054A6;
  font-size: 24px;
  box-shadow: 2px 0 #fff, 7px 0 #0DB14C;
  position: relative;
  position: relative;
}

[id^="widget_team_stats_widget_"] .sportTableLabel .teamLogo-tiny {
  left: 14px;
  position: absolute;
  top: 14px;
}

[id^="widget_team_stats_widget_"] .sportTableLabel * {
  color: inherit;
}

[id^="widget_team_stats_widget_"] .sportTableLabel h4.teamName {
  font-size: 24px;
  margin: 0;
  padding-left: 30px;
}

[id^="widget_team_stats_widget_"] .sportTableLabel .seasonDisplay,
[id^="widget_team_stats_widget_"] .sportTableLabel .expandedView {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-transform: none;
}

[id^="widget_team_stats_widget_"] .sportTableLabel .linkText {
  display: block;
}

[id^="widget_team_stats_widget_"] .sportTableLabel .season-separator {
  display: none;
}

[id^="widget_team_stats_widget_"] .statTable td:first-child,
[id^="widget_team_stats_widget_"] .statTable tr:nth-child(2) th:first-child {
  text-align: center;
}

@media (min-width: 768px) {
  .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel,
  .col-md-4 [id^="widget_team_stats_widget_"] .sportTableLabel {
    max-width: 100%;
    padding-left: 10px;
  }
  .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel .teamLogo-tiny,
  .col-md-4 [id^="widget_team_stats_widget_"] .sportTableLabel .teamLogo-tiny {
    display: none;
  }
  .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel h4 > *,
  .col-md-4 [id^="widget_team_stats_widget_"] .sportTableLabel h4 > * {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@media (min-width: 768px) and (max-width: 999px) {
  .layout-25-50-25 .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel,
  .layout-25-50-25 .col-md-6 [id^="widget_team_stats_widget_"] .sportTableLabel {
    max-width: 100%;
    padding-left: 10px;
  }
  .layout-25-50-25 .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel .teamLogo-tiny,
  .layout-25-50-25 .col-md-6 [id^="widget_team_stats_widget_"] .sportTableLabel .teamLogo-tiny {
    display: none;
  }
  .layout-25-50-25 .col-md-3 [id^="widget_team_stats_widget_"] .sportTableLabel h4 > *,
  .layout-25-50-25 .col-md-6 [id^="widget_team_stats_widget_"] .sportTableLabel h4 > * {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

body.admin .report-container {
  clear: both;
  display: block;
}

.layoutContainer .pageElement {
  margin: 0 0 30px;
}

#home #siteContainer {
  max-width: 1200px;
}

#home .theme-sub-nav {
  display: none !important;
}

#home #topNavPlaceholder {
  height: 100px;
}

#home #topNav.has-site-logo .outerNav .theme-main-nav {
  max-width: 1125px;
}

#topNav .theme-nav-style-dropdown > .theme-nav-item.home {
  display: none;
}

.edit_mode #topNav .theme-nav-style-dropdown > .theme-nav-item.home {
  display: block;
}

.nav-fixed #topNav.has-site-logo .outerNav,
.has-mobile-nav #topNav.has-site-logo .outerNav {
  height: 45px;
}

#topNav.has-site-logo .outerNav {
  background: #0054A6 url("https://assets.ngin.com.s3.amazonaws.com/site_files/12425/_site/images/pattern.png") repeat-x;
  width: 100%;
  height: 100px;
}

#topNav.has-site-logo .outerNav .theme-main-nav {
  max-width: 1000px;
}

#topNav.has-site-logo .outerNav .theme-main-nav .theme-nav-style-dropdown {
  max-width: 100%;
  left: auto;
  display: inline-block;
  width: auto;
  right: 0;
  position: absolute;
}

.theme-nav-forward.page_node_2507733,
#PageSearchBoxMobileNav {
  display: none;
}

#mobileLogo {
  height: 45px;
  width: 45px;
  display: block;
  position: absolute;
  right: -100px;
  background-size: 90%;
  background-repeat: no-repeat;
  background-position: center;
}

#mobileTitle {
  position: relative;
  width: auto;
  left: 102%;
  line-height: 44px;
  color: white;
  font-size: 14px;
  display: inline-block;
}

.feature .sn-media-slider .slider {
  margin-bottom: 0 !important;
}

.feature .sn-media-slider .slides .slide .slide-overlay {
  padding: 5%;
}

.feature .sn-media-slider .slide-title {
  margin: 5% 0 1%;
  text-shadow: none;
  font-size: 230%;
}

.feature .sn-media-slider .slide-description {
  margin: 0 0 1%;
  font-size: 100%;
  text-shadow: none;
  max-width: 55%;
}

.user_mode .feature .linkWrap {
  position: absolute;
  bottom: 0;
  width: 90%;
  margin: 0 5% 8%;
}

.user_mode .feature .linkWrap .pageElement.linkElement {
  float: left;
  max-width: 30%;
  width: 100%;
  clear: none;
  margin-right: 3%;
}

.homeCta .sn-call-to-action .sn-call-to-action-title {
  display: inline-block;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 10px;
  font-size: 20px;
}

.homeCta .sn-call-to-action .sn-call-to-action-title:before, .homeCta .sn-call-to-action .sn-call-to-action-title:after {
  content: '-';
  display: inline-block;
}

hr.hrElement {
  margin: 0 0 30px;
  background: none;
  border-top: solid 1px #ddd;
  height: 0;
}

.customAgg .newsAggregatorElement .item {
  width: 30.3333333333333%;
  float: left;
  border-top: none !important;
  margin-right: 3%;
}

.customAgg .newsAggregatorElement .item.extendedOptions {
  width: 100%;
  text-align: center !important;
  color: white;
}

.customAgg .newsAggregatorElement .item.extendedOptions a.rssLink {
  display: none;
}

.customAgg .newsAggregatorElement .item.extendedOptions a.goToLink.icon {
  padding: 15px 60px;
  border: solid 2px #dddddd;
  color: #dddddd;
  -webkit-transition: .2s ease-in-out;
          transition: .2s ease-in-out;
  font-family: "Montserrat", sans-serif;
  letter-spacing: .5px;
  font-weight: 100;
  font-size: 14px;
  -webkit-font-smoothing: antialiased !important;
}

.customAgg .newsAggregatorElement .item.extendedOptions a.goToLink.icon:before {
  display: none;
}

.customAgg .newsAggregatorElement .item.extendedOptions a.goToLink.icon:after {
  content: '\f105';
  margin-left: 5px;
  font-family: FontAwesome;
  display: inline-block;
}

.customAgg .newsAggregatorElement .item.extendedOptions a.goToLink.icon:hover {
  border: solid 2px #0DB14C;
  background: #0DB14C;
  color: white;
  text-decoration: none;
}

.customAgg .newsAggregatorElement .articleHasImage .newsItemHeader {
  padding-left: 0;
}

.customAgg .newsAggregatorElement .articleHasImage .newsItemHeader > a {
  display: none;
}

.customAgg .newsAggregatorElement .commentsAndMore {
  display: none;
}

.customAgg .newsDate,
.customAgg .newsAuthor {
  color: #A0A9B1;
}

.customAgg .condensed > a {
  display: none;
}

.customAgg .condensed .details {
  padding-left: 0;
}

.customAgg .condensed > ul h4 {
  font-size: 20px;
  text-transform: uppercase;
}

.customAgg .condensed .teaser {
  text-transform: none;
  color: #333333;
  font-weight: 600;
}

.customAgg .expanded .newsText {
  display: none;
}

.customAgg .expanded .newsItemHeader h2 {
  font-size: 20px;
  line-height: 1.5;
  text-transform: uppercase;
}

.customAgg .expanded .newsItemElement h4 {
  text-transform: none;
  color: #333333;
  text-weight: 600px;
}

@media only screen and (max-width: 1200px) {
  .feature .sn-media-slider .slide-title {
    margin: 0 0 1%;
  }
}

@media only screen and (max-width: 1000px) {
  .user_mode .feature .linkElement h4 a {
    padding: 15px 30px;
  }
  .user_mode .feature .linkElement.altLink h4 a {
    padding: 13px 30px;
  }
  .user_mode .feature .linkWrap {
    margin: 0 5% 5%;
  }
  .user_mode .feature .linkWrap .pageElement.linkElement {
    max-width: 46%;
    margin-right: 2%;
  }
  .feature .sn-media-slider .slide-description {
    max-width: 85%;
  }
  .customAgg .newsAggregatorElement .item {
    width: 50%;
    margin-right: 0;
  }
}

.edit_mode .sponsors .heroPhotoElement img {
  max-width: 150px;
}

.user_mode .sponsors .sponsorWrap {
  margin: auto;
  display: inline-block;
}

.user_mode .sponsors .pageEl {
  padding: 0 30px;
  min-width: 16.666666666667% !important;
  display: inline-block;
}

.user_mode .sponsors .pageEl .heroPhotoElement img {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  opacity: .5;
  -webkit-transition: .2s ease-in-out;
          transition: .2s ease-in-out;
}

.user_mode .sponsors .pageEl .heroPhotoElement img:hover {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  opacity: 1;
}

@media only screen and (max-width: 768px) {
  .layoutContainer .pageElement {
    margin: 0 0 15px;
  }
  .user_mode .feature .linkWrap {
    position: relative;
    width: 100%;
    padding: 2px 0 0;
    margin: 0;
  }
  .user_mode .feature .linkWrap .pageElement.linkElement {
    max-width: 100%;
    margin: 0 0 2px 0;
    float: none;
    clear: both;
  }
  .user_mode .feature .sn-media-slider .slide-title {
    font-size: 150%;
  }
  .user_mode .feature .sn-media-slider .slide-description {
    font-size: 80%;
  }
  .linkElement.altLink h4 a {
    border: solid 2px #0DB14C;
    color: #0DB14C;
  }
  .linkElement.altLink h4 a:before {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    font-size: 20px;
    margin-right: 10px;
  }
  .customAgg .newsAggregatorElement .item {
    width: 100%;
    margin-right: 0;
  }
  .user_mode .sponsors .pageEl {
    width: 33.333333333333% !important;
  }
  .user_mode .sponsors .pageEl img {
    padding: 0 !important;
  }
}

@media only screen and (max-width: 480px) {
  .layoutContainer {
    padding-left: 0;
  }
  #panelTwo {
    padding-left: 0;
    padding-right: 0;
  }
  .user_mode .feature .sn-media-slider .slide-title {
    font-size: 100%;
  }
  .user_mode .feature .sn-media-slider .slide-description {
    font-size: 70%;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjEyNDI1X3N0eWxlLmNzcyIsIl9zZXR0aW5ncy9fdmFyaWFibGVzLnNjc3MiLCJfY3VzdG9tL190aGVtZS5zY3NzIiwiX2N1c3RvbS9fdHlwb2dyYXBoeS5zY3NzIiwiX3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzIiwiX3NoYXJlZC9fYWRzLnNjc3MiLCJfc2hhcmVkL19wYWdlX21hbmFnZXIuc2NzcyIsIl9zaGFyZWQvX3BhZ2VfbWFuYWdlcl9wcmV2aWV3LnNjc3MiLCJfc2hhcmVkL19hY2NvdW50X25hdi5zY3NzIiwiX3NoYXJlZC9fcGFnZV9zZWFyY2hfYm94LnNjc3MiLCJfc2hhcmVkL19wYWdlX3NlYXJjaF9tb2RhbC5zY3NzIiwiX3NoYXJlZC9fc2xpZGVfbmF2LnNjc3MiLCJfc2V0dGluZ3MvX21peGlucy9fc3RydWN0dXJlLnNjc3MiLCJfc2hhcmVkL19nb29nbGVfc2VhcmNoLnNjc3MiLCJfZGVmYXVsdC9fY2xlYXJmaXguc2NzcyIsIl9kZWZhdWx0L19ib290c3RyYXAuc2NzcyIsIl9kZWZhdWx0L19ib3hzY29yZS5zY3NzIiwiX2RlZmF1bHQvX2Ntcy5zY3NzIiwiX2RlZmF1bHQvX3N5c3RlbV9ub3RpY2VzLnNjc3MiLCJfZGVmYXVsdC9fYWRtaW5fbmF2LnNjc3MiLCJfZGVmYXVsdC9fbGF5b3V0X2NvbnRhaW5lcnMuc2NzcyIsIl9kZWZhdWx0L19zdWJuYXYuc2NzcyIsIl9kZWZhdWx0L19zdXJ2ZXlfc3RlcHMuc2NzcyIsIl9kZWZhdWx0L19uZXdzLnNjc3MiLCJfZGVmYXVsdC9fY29tbWVudGluZy5zY3NzIiwiX2RlZmF1bHQvX2J1dHRvbnMuc2NzcyIsIl9jdXN0b20vX3RhYmxlcy5zY3NzIiwiX2RlZmF1bHQvX2NvdW50ZG93bi5zY3NzIiwiX2RlZmF1bHQvX3BhZ2Vfb3B0aW9ucy5zY3NzIiwiX2RlZmF1bHQvX3BheXdhbGwuc2NzcyIsIl9kZWZhdWx0L19saW5rX2ljb25zLnNjc3MiLCJfZGVmYXVsdC9fcGhvdG9fZ2FsbGVyeS5zY3NzIiwiX2RlZmF1bHQvX2dhbGxlcnkuc2NzcyIsIl9kZWZhdWx0L191bmxpbWl0ZWRfaGllcmFyY2h5LnNjc3MiLCJfY3VzdG9tL19jb250ZW50X3RhYnMuc2NzcyIsIl9kZWZhdWx0L19zbi1zaXRlLWxvZ28uc2NzcyIsIl9kZWZhdWx0L19jYWxlbmRhci5zY3NzIiwiX2RlZmF1bHQvX2RpYnMuc2NzcyIsIl9kZWZhdWx0L19wcm9maWxlX3VuaXZlcnNhbC5zY3NzIiwiX2RlZmF1bHQvX3BhZ2luYXRpb24uc2NzcyIsIl9kZWZhdWx0L19ub2RlX3BpY2tlci5zY3NzIiwiX2RlZmF1bHQvX2xvYmFyLnNjc3MiLCJfZGVmYXVsdC9fbGlnaHRib3guc2NzcyIsIl9kZWZhdWx0L19zdHJlYW1pbmctdmlkZW8uc2NzcyIsIl9kZWZhdWx0L19yZWdpc3RyYXRpb24uc2NzcyIsIl9kZWZhdWx0L19sYXlvdXRfYWRqdXN0bWVudHMuc2NzcyIsIl9kZWZhdWx0L19zaXRlX2NvbnRhaW5lci5zY3NzIiwiX2RlZmF1bHQvX3NpdGVfaGVhZGVyLnNjc3MiLCJfY3VzdG9tL19kcm9wZG93bl9uYXYuc2NzcyIsIl9uYXZpZ2F0aW9uL19uZXR3b3JrX25hdl9iYXIuc2NzcyIsIl9zZXR0aW5ncy9fbWl4aW5zL19pY29ucy5zY3NzIiwiX25hdmlnYXRpb24vX25ldHdvcmtfbmF2X21lbnUuc2NzcyIsIl9jdXN0b20vX3NpdGVfbG9nby5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BhZ2VfZWxlbWVudF9kZWZhdWx0cy5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX2RvY3VtZW50LnNjc3MiLCJfY3VzdG9tL19wZV9saW5rLnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fcGVfYWdncmVnYXRvci5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX2FnZ3JlZ2F0b3JfbmV3cy5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX2FnZ3JlZ2F0b3JfZXZlbnRzLnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fcGVfYXVkaW9fZWxlbWVudC5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX2NvbGxlY3RvcnMuc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV9mZWVkX3JlYWRlci5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX2NvbnRhY3Quc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV9zcG9uc29yLnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fcGVfcG9sbC5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3NpdGVfbWFwLnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fbmV3c19zbGlkZV9zaG93LnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fcGVfd2VhdGhlci5zY3NzIiwiX3BhZ2VfZWxlbWVudHMvX3BlX3N1cnZleV9yZXBvcnQuc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV92ZW51ZV9lbGVtZW50LnNjc3MiLCJfcGFnZV9lbGVtZW50cy9fcGVfcG93ZXJfcmFua2luZ3Muc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV9zaW5nbGVfcGhvdG8uc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV9zdXJ2ZXlfbGluay5zY3NzIiwiX2N1c3RvbS9fcGVfY2FsbF90b19hY3Rpb24uc2NzcyIsIl9jdXN0b20vX3BlX3RleHRfYmxvY2suc2NzcyIsIl9wYWdlX2VsZW1lbnRzL19wZV9jb2RlLnNjc3MiLCJfc3BvcnRzL19zcG9ydF9kZWZhdWx0cy5zY3NzIiwiX3Nwb3J0cy9fcm9zdGVyX3BsYXllci5zY3NzIiwiX3Nwb3J0cy9fZ2FtZV9jZW50ZXIuc2NzcyIsIl9zcG9ydHMvX2dhbWVfbGlzdC5zY3NzIiwiX3Nwb3J0cy9fZ2FtZV9zaG93LnNjc3MiLCJfc3BvcnRzL19zcG9ydF9oZWFkZXIuc2NzcyIsIl9zcG9ydHMvX3Nwb3J0X2VsZW1lbnRfaGVhZGVyLnNjc3MiLCJfZGVmYXVsdC9fd2lkZ2V0cy5zY3NzIiwiX3Nwb3J0cy9fbWVnYV9kcm9wX2Rvd24uc2NzcyIsIl9zcG9ydHMvX3BsYXktYnktcGxheS5zY3NzIiwiX3Nwb3J0cy9fcGl0Y2gtdHJhY2tlci5zY3NzIiwiX3Nwb3J0cy9fc2NvcmVib2FyZC5zY3NzIiwiX3Nwb3J0cy9fYnJhY2tldC5zY3NzIiwiX3Nwb3J0cy9fc3BvcnRfc2xpZGVyLnNjc3MiLCJfc3BvcnRzL19wbGF5ZXJfcHJvZmlsZS5zY3NzIiwiX3Nwb3J0cy9fcm9zdGVyX3BsYXllcl9jb25uZWN0aW9ucy5zY3NzIiwiX3Nwb3J0cy9fZGVmYXVsdHMuc2NzcyIsIl9zcG9ydHMvX2Zvb3RiYWxsLnNjc3MiLCJfc3BvcnRzL19ob2NrZXlpc2guc2NzcyIsIl9zcG9ydHMvX2dhbWVfc2xpZGVyLnNjc3MiLCJfc3BvcnRzL190ZWFtX2hlYWRlcnMuc2NzcyIsIl9zcG9ydHMvX3Bvc3RzLnNjc3MiLCJfc3BvcnRzL193aWRnZXRzL19wbGF5ZXItc3RhdC13aWRnZXQuc2NzcyIsIl9zcG9ydHMvX3dpZGdldHMvX3BsYXllci1zdGF0LWxlYWRlci13aWRnZXQuc2NzcyIsIl9zcG9ydHMvX3dpZGdldHMvX3RlYW0tc3RhbmRpbmdzLXdpZGdldC5zY3NzIiwiX3Nwb3J0cy9fd2lkZ2V0cy9fdGVhbS1zdGF0LXdpZGdldC5zY3NzIiwiX2N1c3RvbS9fYWRtaW4vX2FkbWluLnNjc3MiLCJfY3VzdG9tL19jdXN0b21fc3R5bGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCLGVBQWU7QUFrTGYsa05BQVk7QUN2SFo7O0dEc2VFLFFBQVM7Q0FRVjs7QUFURDs7O0VBR0ksYUFBYTtFQUNiLGVBQWU7Q0FDaEI7O0FDMWVIOztFRDRlSSxZQUFZO0NBQ2I7O0FBY0g7RUFDRTtJQUNFLFdBQVc7SUFDWCxTQUFTO0dEamlCVjtFQ21pQkQ7SUFDRSxXQUFXO0lBQ1gsVUFBVTtHRGppQlg7Q0FDRjs7QUNtaUJEO0VBQ0U7SUFDRSxXQUFXO0lBQ1gsU0FBUztHRGhpQlY7RUNraUJEO0lBQ0UsV0FBVztJQUNYLFVBQVU7R0RoaUJYO0NBQ0Y7O0FHeENELGlCQUFpQjtBQWFqQjtFQUNFLHFDRnVLK0I7RUV0Sy9CLGdCQUEyQjtFQUMzQixp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RSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxZQUFZO0NBQ2I7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxvQkFBb0I7Q0FDckI7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxZQUFZO0NBQ2I7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxVQUFVO0NBQ1g7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxVQUFVO0NBQ1g7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxVQUFVO0NBQ1g7O0FBQ0Q7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBQ0Q7RUFDRSxrQkFBa0I7Q0FDbkI7O0FBQ0Q7RUFDRSxXQUFXO0NBQ1o7O0FBQ0Q7RUFDRSxrQkFBa0I7Q0FDbkI7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7RUFDRSxpQkFBaUI7Q0FDbEI7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7RUFDRSxpQkFBaUI7Q0FDbEI7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7RUFDRSwwQkFBMEI7Q0FDM0I7O0FBQ0Q7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Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRkQ7RUFDRSxXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZrQjtFQUNqQixXQUFTO0NBQ1Y7O0FBRmtCO0VBQ2pCLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGRDtFQUNFLFdBQVM7Q0FDVjs7QUFGa0I7RUFDakIsV0FBUztDQUNWOztBQUZEO0VBQ0UsV0FBUztDQUNWOztBQUZE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SUFDaEIsaUJBQWlCO0dBQ2pCO0VBRUQ7SUFFZ0IsZ0JBQWdCO0dBQUk7RUFFbkM7SUFBcUIsZUFBZTtHQUFJO0N2R3U1MEJ6QyIsImZpbGUiOiIxMjQyNV9zdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiBWYXJpYWJsZXMgKi9cbkBpbXBvcnQgdXJsKC8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYXRvOjQwMCw3MDAsNDAwaXRhbGljLDcwMGl0YWxpYywxMDAsMTAwaXRhbGljLDMwMCwzMDBpdGFsaWMsOTAwLDkwMGl0YWxpY3xUaXRpbGxpdW0rV2ViOjQwMCwyMDAsMjAwaXRhbGljLDMwMCwzMDBpdGFsaWMsNDAwaXRhbGljLDYwMCw2MDBpdGFsaWMsNzAwLDcwMGl0YWxpYyw5MDApO1xuI3NpdGVGb290ZXIsIC5wYWdlRWwsIC5yaWdodC1jb2x1bW4tYWQtd3JhcHBlciwgI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhcixcbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biwgLmNvbGxlY3Rvck5ld3MgLml0ZW0sIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHAge1xuICAqem9vbTogMTtcbn1cblxuI3NpdGVGb290ZXI6YmVmb3JlLCAucGFnZUVsOmJlZm9yZSwgLnJpZ2h0LWNvbHVtbi1hZC13cmFwcGVyOmJlZm9yZSwgI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhcjpiZWZvcmUsXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd246YmVmb3JlLCAuY29sbGVjdG9yTmV3cyAuaXRlbTpiZWZvcmUsIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHA6YmVmb3JlLCAjc2l0ZUZvb3RlcjphZnRlciwgLnBhZ2VFbDphZnRlciwgLnJpZ2h0LWNvbHVtbi1hZC13cmFwcGVyOmFmdGVyLCAjdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyOmFmdGVyLFxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duOmFmdGVyLCAuY29sbGVjdG9yTmV3cyAuaXRlbTphZnRlciwgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgcDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuI3NpdGVGb290ZXI6YWZ0ZXIsIC5wYWdlRWw6YWZ0ZXIsIC5yaWdodC1jb2x1bW4tYWQtd3JhcHBlcjphZnRlciwgI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhcjphZnRlcixcbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93bjphZnRlciwgLmNvbGxlY3Rvck5ld3MgLml0ZW06YWZ0ZXIsIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHA6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3Bkb3duLXNlYXNvbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRvcDogOTAlO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdG9wOiAxMDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZHJvcGRvd24tc2Vhc29uIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiA5MCU7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDEwMCU7XG4gIH1cbn1cblxuLyogVHlwZ29ncmFwaHkgKi9cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzY2Njtcbn1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxucCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG5oMSwgaDIsIGgzIHtcbiAgY29sb3I6ICMwMDQwN0Y7XG59XG5cbmg1IHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiA0OHB4O1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDMycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5iLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuaSwgZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiAuNzVlbTtcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHllbGxvdztcbn1cblxucywgc3RyaWtlLCBkZWwge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxudSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjYzcyNTRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmMmY0O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbmJsb2NrcXVvdGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogIzMzMzMzMztcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMCAwIDE1cHggMTVweDtcbn1cblxuYmxvY2txdW90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAnFwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjQ0NDO1xufVxuXG5ibG9ja3F1b3RlOmFmdGVyIHtcbiAgY29udGVudDogXCLigJ1cIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogI0NDQztcbn1cblxuYmxvY2txdW90ZSBwIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG5jb2RlLCBrYmQsIHByZSwgc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBNZW5sbyxNb25hY28sQ29uc29sYXMsXCJDb3VyaWVyIE5ld1wiLG1vbm9zcGFjZTtcbn1cblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjMzMzO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAvKiBjc3MtMyAqL1xuICB3aGl0ZS1zcGFjZTogLW1vei1wcmUtd3JhcCAhaW1wb3J0YW50O1xuICAvKiBNb3ppbGxhLCBzaW5jZSAxOTk5ICovXG4gIHdoaXRlLXNwYWNlOiAtcHJlLXdyYXA7XG4gIC8qIE9wZXJhIDQtNiAqL1xuICB3aGl0ZS1zcGFjZTogLW8tcHJlLXdyYXA7XG4gIC8qIE9wZXJhIDcgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5ociB7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxNjJkZWcsICNBQUEgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI0FBQSA0cHgpO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KC03MmRlZywgI0FBQSAwcHgsIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgM3B4LCAjQUFBIDRweCk7XG4gIGhlaWdodDogM3B4O1xuICBtYXJnaW46IDFyZW0gMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5oci5ockVsZW1lbnQge1xuICBtYXJnaW46IDFyZW0gMDtcbn1cblxuYSB7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbjtcbn1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAzYTczO1xufVxuXG4ucGFnZUVsZW1lbnQgYSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbnRhYmxlIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4udGV4dCA+IHA6bGFzdC1jaGlsZCwgLnRleHQgPiBoMTpsYXN0LWNoaWxkLCAudGV4dCA+IGgyOmxhc3QtY2hpbGQsIC50ZXh0ID4gaDM6bGFzdC1jaGlsZCwgLnRleHQgPiBoNDpsYXN0LWNoaWxkLCAudGV4dCA+IGg1Omxhc3QtY2hpbGQsIC50ZXh0ID4gaDY6bGFzdC1jaGlsZCwgLnRleHQgPiBvbDpsYXN0LWNoaWxkLCAudGV4dCA+IHVsOmxhc3QtY2hpbGQsIC50ZXh0ID4gYmxvY2txdW90ZTpsYXN0LWNoaWxkLCAudGV4dCA+IHByZTpsYXN0LWNoaWxkLCAucHJldmlld1RleHQgPiBwOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGgxOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGgyOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGgzOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGg0Omxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGg1Omxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGg2Omxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IG9sOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IHVsOmxhc3QtY2hpbGQsIC5wcmV2aWV3VGV4dCA+IGJsb2NrcXVvdGU6bGFzdC1jaGlsZCwgLnByZXZpZXdUZXh0ID4gcHJlOmxhc3QtY2hpbGQsIC5uZXdzVGV4dCA+IHA6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDE6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDI6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDM6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDQ6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDU6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gaDY6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gb2w6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gdWw6bGFzdC1jaGlsZCwgLm5ld3NUZXh0ID4gYmxvY2txdW90ZTpsYXN0LWNoaWxkLCAubmV3c1RleHQgPiBwcmU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50ZXh0IHVsLCAudGV4dCBvbCwgLnByZXZpZXdUZXh0IHVsLCAucHJldmlld1RleHQgb2wsIC5uZXdzVGV4dCB1bCwgLm5ld3NUZXh0IG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4udGV4dCB1bCBsaSA+IHVsLCAudGV4dCB1bCBsaSA+IG9sLCAudGV4dCBvbCBsaSA+IHVsLCAudGV4dCBvbCBsaSA+IG9sLCAucHJldmlld1RleHQgdWwgbGkgPiB1bCwgLnByZXZpZXdUZXh0IHVsIGxpID4gb2wsIC5wcmV2aWV3VGV4dCBvbCBsaSA+IHVsLCAucHJldmlld1RleHQgb2wgbGkgPiBvbCwgLm5ld3NUZXh0IHVsIGxpID4gdWwsIC5uZXdzVGV4dCB1bCBsaSA+IG9sLCAubmV3c1RleHQgb2wgbGkgPiB1bCwgLm5ld3NUZXh0IG9sIGxpID4gb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnRvb2xJY29uIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogNXB4IDAgMTVweCA0MHB4O1xufVxuXG5wLnRhZ3Mge1xuICBmb250LXNpemU6IC43ZW07XG59XG5cbi5zdWJOYXYgbGkgYSxcbi5yZWxhdGVkU2VjdGlvbnMgbGkgYSB7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbi5lbGxpcHNpcyB7XG4gIC8qIE5lZWRzIGEgZml4ZWQgd2lkdGggdG8gd29yayAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8qIEN1c3RvbSBUaGVtZSBTdHlsZXMgKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuI0ZPUCB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG5odG1sLFxuYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuI3BhZ2VDb250ZW50Q29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmxheW91dENvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zbkZvb3RlckNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYmFja2dyb3VuZDogIzAwNTRBNiB1cmwoXCJodHRwOi8vYXNzZXRzLm5naW4uY29tLnMzLmFtYXpvbmF3cy5jb20vc2l0ZV9maWxlcy8xMjQyNS9fc2l0ZS9pbWFnZXMvcGF0dGVybi5wbmdcIikgcmVwZWF0LXg7XG59XG5cbiNjdXN0b21Gb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4jY3VzdG9tRm9vdGVyIC5zbi1zb2NpYWwtbWVkaWEtbGlzdCAuc24tc29jaWFsLW1lZGlhLWljb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbiNzaXRlRm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogNDBweCAyMHB4IDYwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBjbGVhcjogYm90aDtcbn1cblxuI3NpdGVGb290ZXIgPiB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuI3NpdGVGb290ZXIgPiB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAuMmVtO1xuICBtaW4taGVpZ2h0OiAyMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNzaXRlRm9vdGVyID4gdWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG59XG5cbiNzaXRlRm9vdGVyID4gdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4jc2l0ZUZvb3RlciA+IHVsIGxpOmhvdmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jc2l0ZUZvb3RlciBsaSNwb3dlcmVkQnlOR0lOIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbiNzaXRlRm9vdGVyIGxpI3Bvd2VyZWRCeU5HSU4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IGF1dG87XG59XG5cbiNzaXRlRm9vdGVyIGxpI3Bvd2VyZWRCeU5HSU4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc3BvcnRuZ2luX2Zvb3Rlcl9sb2dvX3doaXRlLnN2Z1wiKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jc2l0ZUZvb3RlciBsaSNwb3dlcmVkQnlOR0lOIGEgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNuRm9vdGVyQ29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgfVxufVxuXG4ucGFnZUVsIHtcbiAgLyogVGV4dCBCbG9jayBFbGVtZW50ICovXG4gIC8qIENvbnRlbnQgVGFicyAqL1xufVxuXG4ucGFnZUVsIC5wYWdlRWxlbWVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDE1cHggMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnZUVsIC53aWRnZXRFbGVtZW50IC53aWRnZXRIaWVyYXJjaHkge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgLmxlZnRUZXh0SW1hZ2UsXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IC5vcmlnaW5hbFRleHRJbWFnZSxcbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgLnJpZ2h0VGV4dEltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgLmxlZnRUZXh0SW1hZ2UgYnIsXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IC5vcmlnaW5hbFRleHRJbWFnZSBicixcbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgLnJpZ2h0VGV4dEltYWdlIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCAubGVmdFRleHRJbWFnZSAuY3V0bGluZSxcbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgLm9yaWdpbmFsVGV4dEltYWdlIC5jdXRsaW5lLFxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCAucmlnaHRUZXh0SW1hZ2UgLmN1dGxpbmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLnBhZ2VFbCAudmlkZW8gLmp3cGxheWVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlRWwgLmp3cGxheWVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VFbCAudGFiYmVkRWxlbWVudCB1bC5jb250ZW50VGFicyB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VFbCAudGFiYmVkRWxlbWVudCB1bC5jb250ZW50VGFicyBsaSBzcGFuIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBhZ2VFbCAudGFiYmVkRWxlbWVudCAudGFiQ29udGFpbmVyIC5jdXJyZW50IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI1BsYXllclN0YXRzRGl2IC5zcG9ydC10b29sczpudGgtY2hpbGQoZXZlbikgdWwucGlsbC1idXR0b25zIGxpLnNlbGVjdGVkIGEsXG4jVGVhbVN0YXRzRGl2IC5zcG9ydC10b29sczpudGgtY2hpbGQoZXZlbikgdWwucGlsbC1idXR0b25zIGxpLnNlbGVjdGVkIGEge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwMDU0QTY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jUGxheWVyU3RhdHNEaXYgLnNwb3J0LXRvb2xzOm50aC1jaGlsZChldmVuKSB1bC5waWxsLWJ1dHRvbnMgbGkgYSxcbiNUZWFtU3RhdHNEaXYgLnNwb3J0LXRvb2xzOm50aC1jaGlsZChldmVuKSB1bC5waWxsLWJ1dHRvbnMgbGkgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5lZGl0X21vZGUgLmNvbnRlbnRUYWJzLnJhcGlkVGFic0NvbnN0cnVjdGlvbiBsaSBzcGFuIGEge1xuICBjb2xvcjogIzY2NjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLmVkaXRfbW9kZSAuY29udGVudFRhYnMucmFwaWRUYWJzQ29uc3RydWN0aW9uIC5zZWxlY3RlZCBzcGFuIGEge1xuICBiYWNrZ3JvdW5kOiAjRkNDRDIyO1xuICBjb2xvcjogIzMzMztcbn1cblxuLnBhZ2VFbGVtZW50IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAucGFnZUVsZW1lbnQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDgwcHg7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IC43NWVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuMXMgZWFzZTtcbn1cblxuLnBhZ2VFbGVtZW50IGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyLCAucGFnZUVsZW1lbnQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4ICNkZGQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XG59XG5cbi5wYWdlRWxlbWVudCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cywgLnBhZ2VFbGVtZW50IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCAjZGRkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA1NEE2O1xuICBvdXRsaW5lOiAwO1xufVxuXG4ucGFnZUVsZW1lbnQgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDI4cHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgLjFzIGVhc2U7XG59XG5cbi5wYWdlRWxlbWVudCB0ZXh0YXJlYTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCAjZGRkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xufVxuXG4ucGFnZUVsZW1lbnQgdGV4dGFyZWE6Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggI2RkZDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNTRBNjtcbiAgb3V0bGluZTogMDtcbn1cblxuLnBhZ2VFbGVtZW50IHNlbGVjdCB7XG4gIGhlaWdodDogMjhweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIHRyYW5zaXRpb246IGFsbCAuMXMgZWFzZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLnBhZ2VFbGVtZW50IHNlbGVjdDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAjZGRkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xufVxuXG4ucGFnZUVsZW1lbnQgc2VsZWN0OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4ICNkZGQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDU0QTY7XG4gIG91dGxpbmU6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm9uZUNvbHVtbiAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAub25lQ29sdW1uIC5jb2x1bW4xIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudHdvQ29sdW1uMjU3NSAuY29sdW1uMiwgLnR3b0NvbHVtbjc1MjUgLmNvbHVtbjEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC50d29Db2x1bW42NjMzIC5jb2x1bW4xLCAudHdvQ29sdW1uMzM2NiAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNjYzMyAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uMzM2NiAuY29sdW1uMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnR3b0NvbHVtbjUwNTAgLmNvbHVtbjEsIC50d29Db2x1bW41MDUwIC5jb2x1bW4yLCAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjEsIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMiwgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4zLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW41MDUwIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW41MDUwIC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEsIC50d29Db2x1bW42NjMzIC5jb2x1bW4yLCAudHdvQ29sdW1uMzM2NiAuY29sdW1uMSwgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4yLCAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjMsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW42NjMzIC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW4zMzY2IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC50d29Db2x1bW4yNTc1IC5jb2x1bW4xLCAudHdvQ29sdW1uNzUyNSAuY29sdW1uMixcbiAgLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4yLCAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjMsXG4gIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSwgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4zLFxuICAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbHVtbjEsIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMixcbiAgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMSwgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMixcbiAgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMywgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uNCxcbiAgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4zLFxuICAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjMsXG4gIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMixcbiAgLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjIsXG4gIC5sYXlvdXRDb250YWluZXIgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4yIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAud2lkdGgyNSwgLndpZHRoMzMsIC53aWR0aDUwLCAud2lkdGg2NiwgLndpZHRoNzUsIC53aWR0aDEwMCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC14cy0xLCAuY29sLXNtLTEsIC5jb2wtbWQtMSwgLmNvbC1sZy0xLCAuY29sLXhzLTIsIC5jb2wtc20tMiwgLmNvbC1tZC0yLCAuY29sLWxnLTIsIC5jb2wteHMtMywgLmNvbC1zbS0zLCAuY29sLW1kLTMsIC5jb2wtbGctMywgLmNvbC14cy00LCAuY29sLXNtLTQsIC5jb2wtbWQtNCwgLmNvbC1sZy00LCAuY29sLXhzLTUsIC5jb2wtc20tNSwgLmNvbC1tZC01LCAuY29sLWxnLTUsIC5jb2wteHMtNiwgLmNvbC1zbS02LCAuY29sLW1kLTYsIC5jb2wtbGctNiwgLmNvbC14cy03LCAuY29sLXNtLTcsIC5jb2wtbWQtNywgLmNvbC1sZy03LCAuY29sLXhzLTgsIC5jb2wtc20tOCwgLmNvbC1tZC04LCAuY29sLWxnLTgsIC5jb2wteHMtOSwgLmNvbC1zbS05LCAuY29sLW1kLTksIC5jb2wtbGctOSwgLmNvbC14cy0xMCwgLmNvbC1zbS0xMCwgLmNvbC1tZC0xMCwgLmNvbC1sZy0xMCwgLmNvbC14cy0xMSwgLmNvbC1zbS0xMSwgLmNvbC1tZC0xMSwgLmNvbC1sZy0xMSwgLmNvbC14cy0xMiwgLmNvbC1zbS0xMiwgLmNvbC1tZC0xMiwgLmNvbC1sZy0xMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02LFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IHtcbiAgICB3aWR0aDogMzMuMzMzMyU7XG4gIH1cbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSA+ICoge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyogUkVTUE9OU0lWRSAqL1xuLyogbWF4V2lkdGggRGVza3RvcCBTY3JlZW4gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC8qID4gMTAyM3B4IFN0eWxlcyAqL1xuICAvKiBDb250ZW50IFRhYnMgKi9cbiAgLnRhYmJlZEVsZW1lbnQgdWwuY29udGVudFRhYnMgbGkge1xuICAgIHdpZHRoOiAzMyU7XG4gICAgcGFkZGluZzogMnB4O1xuICB9XG4gIC50YWJiZWRFbGVtZW50IHVsLmNvbnRlbnRUYWJzIGxpIHNwYW4gYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC8qIEdhbWUgU2hvdyAqL1xuICAjbGl2ZUdhbWVTaW1wbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogRm9vdGVyICovXG4gICNzaXRlRm9vdGVyIGxpIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG4gICNzaXRlRm9vdGVyIGxpI3Bvd2VyZWRCeU5HSU4ge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiBUYWJsZXRzICYgUGhvbmVzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC8qID4gNzY5cHggU3R5bGVzICovXG4gIC8qIEFkbWluICovXG4gIC5hZG1pblRvZ2dsZSxcbiAgI2FkbWluTmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNzaXRlQ29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAjc2l0ZUNvbnRhaW5lciAjcGFuZWxUd28gLmxheW91dENvbnRhaW5lciAuY29sdW1uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAvKiBDb2RlIEVsZW1lbnQgKi9cbiAgLmNvZGVFbGVtZW50IG9iamVjdCwgLmNvZGVFbGVtZW50IGVtYmVkLCAuY29kZUVsZW1lbnQgaWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAvKiBDb250ZW50IFRhYnMgKi9cbiAgLnRhYmJlZEVsZW1lbnQgdWwuY29udGVudFRhYnMgbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMnB4O1xuICB9XG4gIC50YWJiZWRFbGVtZW50IHVsLmNvbnRlbnRUYWJzIGxpIHNwYW4gYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC8qIFdpZGdldCBFbGVtZW50cyAqL1xuICAud2lkZ2V0RWxlbWVudCAud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUuc3RhdFRhYmxlIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAud2lkZ2V0RWxlbWVudCAud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUuc3RhdFRhYmxlIHRoZWFkIHRyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLndpZGdldEVsZW1lbnQgLndpZGdldC1yb3N0ZXItcGxheWVyIHRhYmxlLnN0YXRUYWJsZSB0aGVhZCB0ciB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDhweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAud2lkZ2V0RWxlbWVudCAud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUuc3RhdFRhYmxlIHRib2R5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAud2lkZ2V0RWxlbWVudCAud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUuc3RhdFRhYmxlIHRib2R5IHRyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLndpZGdldEVsZW1lbnQgLndpZGdldC1yb3N0ZXItcGxheWVyIHRhYmxlLnN0YXRUYWJsZSB0Ym9keSB0ciB0ZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMzBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIH1cbiAgLndpZGdldEVsZW1lbnQgLndpZGdldC1nYW1lVGFibGUgLnNob3dNb3JlR2FtZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogU3VydmV5IFJlcG9ydHMgKi9cbiAgI3N1cnZleV9zdGVwcyAuc2l0ZUNvbnRhaW5lciAjYWNjb3VudE5hdiB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgI3N1cnZleV9zdGVwcyAuc2l0ZUNvbnRhaW5lciAuYWRtaW5Ub2dnbGUge1xuICAgIHRvcDogMDtcbiAgfVxuICAjc3VydmV5X3N0ZXBzIC5zaXRlQ29udGFpbmVyICNwYWdlQ29udGVudENvbnRhaW5lciAjcGFuZWxPbmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG4gICNzdXJ2ZXlfc3RlcHMgLnNpdGVDb250YWluZXIgI3BhZ2VDb250ZW50Q29udGFpbmVyICNwYW5lbFR3byB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLyogVEVBTSBQQUdFUyAqL1xuICAvKiBHYW1lIFNob3cgQ29udGVudCAqL1xuICAjR2FtZVNob3dDb250ZW50IGxpLnRhYl9tZW51LXRhYiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAudGVhbVRhZ0ZpbHRlciBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC8qID4gNjQwcHggU3R5bGVzICovXG4gICNzaXRlRm9vdGVyIGxpIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG4gICNzaXRlRm9vdGVyIGxpI3Bvd2VyZWRCeU5HSU4ge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC8qID4gNDgwcHggU3R5bGVzICovXG4gIC8qIFN0YXRzICovXG4gIC5TdGF0V2lkZ2V0Q29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICB9XG4gIC5TdGF0V2lkZ2V0IHtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIH1cbiAgLlN0YXRXaWRnZXRDb250YWluZXIuZ2FtZV9kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gIH1cbiAgLkdhbWVTaG93RGF0YUNvbnRhaW5lciAuU3RhdFdpZGdldEdyb3VwIHtcbiAgICBtYXJnaW46IDAgMTBweCAyMHB4IDA7XG4gIH1cbiAgI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgbGkgaDIge1xuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICB9XG4gICNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0IHtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICB9XG4gIC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9uYW1lIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuICAudGVhbUxvZ28tbWVkaXVtLCAudGVhbUxvZ29yLW1lZGl1bSB7XG4gICAgd2lkdGg6IDcwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDIzcHggIWltcG9ydGFudDtcbiAgfVxuICAvKiBmaWx0ZXIgc3R5bGVzICovXG4gIC50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgfVxuICAudGFnLWZpbHRlckZvcm0gLnRhZy1maWx0ZXJXcmFwLmJ1dHRvbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAudGFnLWZpbHRlckZvcm0gLmlucHV0Q2hvaWNlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRhZy1maWx0ZXJXcmFwLmRyb3Bkb3duIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudGFnLWZpbHRlcldyYXAuZHJvcGRvd24gbGFiZWwgc2VsZWN0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxufVxuXG4uYWQtd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbio6bm90KC5wYWdlRWxlbWVudCkgPiAuYWQtd3JhcHBlciB7XG4gIG1hcmdpbjogMCAxNXB4O1xuICBwYWRkaW5nOiAxNXB4IDA7XG59XG5cbi5hZC13cmFwcGVyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5hZC13cmFwcGVyID4gKiB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbn1cblxuI2NvbnRlbnRUYWJzTG9hZGVyOm5vdChbc3R5bGUqPVwiZGlzcGxheTpub25lXCJdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6IG5vbmVcIl0pIH4gLnJpZ2h0LWNvbHVtbi1hZC13cmFwcGVyIC5yaWdodC1jb2x1bW4tYWRzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJpZ2h0LWNvbHVtbi1hZC1jb250ZW50IHtcbiAgd2lkdGg6IDY2LjY2NiU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5yaWdodC1jb2x1bW4tYWQtY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnJpZ2h0LWNvbHVtbi1hZHMge1xuICB3aWR0aDogMzMuMzMzJTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5yaWdodC1jb2x1bW4tYWRzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMXB4KSB7XG4gIC5yaWdodC1jb2x1bW4tYWRzIC5hZC13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuaHRtbC5wYWdlLW1hbmFnZXItdmlzaWJsZSAuc24tcGFnZU1hbmFnZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZjFmM2Y0O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDVkYWRkO1xuICB0b3A6IDBweDtcbiAgei1pbmRleDogNDk5O1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuYWRtaW5Ub2dnbGUsXG4uc24tcGFnZU1hbmFnZXIgI2FkbWluTmF2LFxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1zaWRlYmFySXRlbSB7XG4gIGJvcmRlcjogMHB4IHNvbGlkICNENURBREQ7XG4gIGJvcmRlci13aWR0aDogMHB4IDBweCAxcHggMHB4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLmFkbWluVG9nZ2xlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtaW5kZW50OiAtOTk5OTlweDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5hZG1pblRvZ2dsZSxcbi5zbi1wYWdlTWFuYWdlciAjYWRtaW5OYXYsXG4uc24tcGFnZU1hbmFnZXIgLnNuLXNpZGViYXJJdGVtIHtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXNpZGViYXJMaW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNDAwbXM7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuYWN0aXZlID4gLnNuLXNpZGViYXJMaW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U1RTdFODtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5nb1RvQWRtaW4ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYWRtaW5fZ2Vhci5zdmdcIikgY2VudGVyIDM1JSBuby1yZXBlYXQ7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAjYWRtaW5OYXYgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyICNhZG1pbk5hdiB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9zd2l0Y2hfb2ZmLnN2Z1wiKSBjZW50ZXIgMzUlIG5vLXJlcGVhdDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1lZGl0LW1vZGUtZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3BhZ2VNYW5hZ2VyL3N3aXRjaF9vZmZfZGlzYWJsZWQucG5nXCIpIGNlbnRlciAzNSUgbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tZWRpdC1tb2RlLWRpc2FibGVkIC5zbi10b29sdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjAwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYmFja2dyb3VuZDogI2UwMzc0MDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgbGVmdDogNTdweDtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA2cHg7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tZWRpdC1tb2RlLWRpc2FibGVkIC5zbi10b29sdGlwOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiA2cHggc29saWQgYmxhY2s7XG4gIGJvcmRlci1jb2xvcjogI2UwMzc0MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZTAzNzQwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBib3gtc2hhZG93OiAtMXB4IC0xcHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGxlZnQ6IC00cHg7XG4gIHotaW5kZXg6IDA7XG4gIHRvcDogMjNweDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi10b2dnbGVQYWdlcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wYWdlc19pY29uLnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyICNhZG1pbk5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogNjBweDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5hZG1pblRvZ2dsZTpiZWZvcmUsXG4uc24tcGFnZU1hbmFnZXIgI2FkbWluTmF2ID4gYTpiZWZvcmUsXG4uc24tcGFnZU1hbmFnZXIgLnNuLXNpZGViYXJJdGVtID4gYTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM4NDkyOWM7XG4gIHRleHQtaW5kZW50OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiA0M3B4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLmFkbWluVG9nZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdBZG1pbic7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAjYWRtaW5OYXYgPiBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdFZGl0IE1vZGUnO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLWVkaXQtbW9kZS1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC41O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLWVkaXQtbW9kZS1kaXNhYmxlZCA+IGE6YmVmb3JlIHtcbiAgY29udGVudDogJ0VkaXQgTW9kZSc7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tc3RydWN0dXJlLnNuLXNpZGViYXJJdGVtID4gYTpiZWZvcmUge1xuICBjb250ZW50OiAnUGFnZXMnO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXRhYldyYXBwZXIge1xuICBvcGFjaXR5OiAwO1xuICB0b3A6IDBweDtcbiAgbGVmdDogLTIwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNGOUZBRkI7XG4gIHotaW5kZXg6IC0xO1xuICBib3gtc2hhZG93OiA1cHggMHB4IDEwcHggLTVweCByZ2JhKDUwLCA1MCwgNTAsIDAuNSk7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLmFjdGl2ZSAuc24tdGFiV3JhcHBlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGxlZnQ6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDAgMXB4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXRhYkNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVkZWRlO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLW5hdiA+IGxpLnNuLXRhYixcbi5zbi1wYWdlTWFuYWdlciAuc24tbmF2LXRhYnMgPiBsaS5zbi10YWIsXG4uc24tcGFnZU1hbmFnZXIgLnNuLXRhYiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDUwJTtcbiAgei1pbmRleDogMTtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1uYXYgPiBsaS5zbi10YWIuYWN0aXZlLFxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1uYXYtdGFicyA+IGxpLnNuLXRhYi5hY3RpdmUsXG4uc24tcGFnZU1hbmFnZXIgLnNuLXRhYi5hY3RpdmUge1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi10aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICMzOTQxNDY7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tdGFiLmFjdGl2ZSAuc24tdGl0bGUge1xuICB3aWR0aDogNTAlO1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzE5OTdjODtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi10YWIudHdvIC5zbi10aXRsZSB7XG4gIG1hcmdpbi1sZWZ0OiAxMDAlO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXRhYi50d28uYWN0aXZlIC5zbi10aXRsZSB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tc3VidGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXN1YnRpdGxlLCAuc24tcGFnZU1hbmFnZXIgLnNuLXN1YnRpdGxlIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDlweDtcbiAgY29sb3I6ICM4MDhGOTg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tc3VidGl0bGUgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMge1xuICBwYWRkaW5nOiAxMHB4IDIwcHggNTBweCAyMHB4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMgbGkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0I5QzFDNjtcbiAgcGFkZGluZzogMCAwIDAgMTRweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW46IDJweCAwO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMgbGkgYSB7XG4gIGNvbG9yOiAjMzk0MTQ2O1xuICBjdXJzb3I6IG1vdmU7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyBsaSBwIHtcbiAgY29sb3I6ICMzOTQxNDY7XG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmctdG9wOiAzcHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAucHJpdmF0ZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIzcHg7XG59XG5cbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMgLnByaXZhdGU6YWZ0ZXIge1xuICByaWdodDogNHB4O1xuICB3aWR0aDogMTVweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9wYWdlTWFuYWdlci9wcml2YXRlLnBuZ1wiKTtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAuZGlzYWJsZWQge1xuICBwYWRkaW5nLXJpZ2h0OiAyM3B4O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIC5kaXNhYmxlZDphZnRlciB7XG4gIHJpZ2h0OiA0cHg7XG4gIHdpZHRoOiAxNXB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3BhZ2VNYW5hZ2VyL2Rpc2FibGVkLnBuZ1wiKTtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAucHJpdmF0ZSxcbi5zbi1wYWdlTWFuYWdlciAuc24tcGFnZXMgLmRpc2FibGVkLFxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAucGF5d2FsbGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIC5wcml2YXRlOmFmdGVyLFxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAuZGlzYWJsZWQ6YWZ0ZXIsXG4uc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIC5wYXl3YWxsZWQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEycHg7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIC5kaXNhYmxlZCBhLCAuc24tcGFnZU1hbmFnZXIgLnNuLXBhZ2VzIC5wcml2YXRlIGEge1xuICBjb2xvcjogIzgwOEY5ODtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIC5zbi1wYWdlcyAuZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9wYWdlTWFuYWdlci9kcmFnLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMnB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnNuLXBhZ2VNYW5hZ2VyOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmVkaXRfbW9kZSAuc24tcGFnZU1hbmFnZXIgLmNtc05hdkJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMjBweCAwcHggMHB4O1xufVxuXG4uZWRpdF9tb2RlIC5zbi1wYWdlTWFuYWdlciAuY21zTmF2QnV0dG9uIGEge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5lZGl0X21vZGUgI2FkbWluTmF2IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3N3aXRjaF9vbi5zdmdcIikgY2VudGVyIDM1JSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNUU3RTg7XG59XG5cbi5zbi1wcmV2aWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM4NDkyOWM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q1REFERDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnNuLXByZXZpZXc6aG92ZXIge1xuICBjb2xvcjogIzg0OTI5YztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc24tcHJldmlldy5wcmV2aWV3LW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U1RTdFODtcbn1cblxuLnNuLXByZXZpZXcucHJldmlldy1vbjpiZWZvcmUsIC5zbi1wcmV2aWV3LnByZXZpZXctb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuXG4uc24tcHJldmlldy5wcmV2aWV3LW9mZjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2V5ZS1vZmYuc3ZnKTtcbn1cblxuLnNuLXByZXZpZXcucHJldmlldy1vbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2V5ZS1vbi5zdmcpO1xufVxuXG4jYWNjb3VudE5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMCBjYWxjKDUwJSAtIDUwMHB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDM5OTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kOiAjMjMyODJiO1xufVxuXG5odG1sLmhhcy1tb2JpbGUtbmF2ICNhY2NvdW50TmF2IHtcbiAgcGFkZGluZzogMCAxNnB4O1xufVxuXG5odG1sLnBhZ2UtbWFuYWdlci12aXNpYmxlICNhY2NvdW50TmF2IHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDUwJSAtIDUwMHB4ICsgNjBweCk7XG59XG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYucGFnZS1tYW5hZ2VyLXZpc2libGUgI2FjY291bnROYXYge1xuICBwYWRkaW5nLWxlZnQ6IDc2cHg7XG59XG5cbiNzdXJ2ZXlfc3RlcHMgI2FjY291bnROYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMTZweDtcbn1cblxuI2FjY291bnROYXYgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgLyogSWNvbnMgKGxpa2UgbWVzc2FnZXMpICovXG59XG5cbiNhY2NvdW50TmF2ID4gbGkuaG9tZSBzcGFuLnJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IC4zZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbiNhY2NvdW50TmF2ID4gbGkuaG9tZSBzcGFuLnJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG59XG5cbiNhY2NvdW50TmF2ID4gbGkgYSBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4jYWNjb3VudE5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA4cHg7XG59XG5cbiNhY2NvdW50TmF2IC5uZ2luTG9nbyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDI0cHg7XG59XG5cbiNhY2NvdW50TmF2IC5uZ2luTG9nbyBhIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Nwb3J0LW5naW4tbG9nby13aGl0ZS5zdmdcIikgcmlnaHQgY2VudGVyIG5vLXJlcGVhdDtcbiAgdGV4dC1pbmRlbnQ6IC0yMDAwMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbiNhY2NvdW50TmF2IC5zZWNvbmRhcnkgYSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbiNhY2NvdW50TmF2IC5zZWNvbmRhcnkgYTpob3ZlciB7XG4gIGNvbG9yOiAjY2NjO1xufVxuXG4jYWNjb3VudE5hdiAuY3VycmVudFNpdGUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbn1cblxuI2FjY291bnROYXYgLmN1cnJlbnRTaXRlIGE6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMjBweDtcbn1cblxuI2FjY291bnROYXYgLmxvY2FsLWRldi10b29sIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBsaW5lLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4jYWNjb3VudE5hdiAubG9jYWwtZGV2LXRvb2wgfiAubmdpbkxvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBOb3RpZmljYXRpb25zIE1lbnVzICovXG4uZGFzaGJvYXJkX25hdiAuY291bnQsXG4jYWNjb3VudE5hdiAuY291bnQge1xuICBiYWNrZ3JvdW5kOiAjYzAwO1xuICBib3JkZXI6IDFweCBpbnNldCByZ2JhKDIwMSwgMjAxLCAyMDEsIDAuNSk7XG4gIGNvbG9yOiAjZWVlO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQ6IGJvbGQgMTBweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgbWluLXdpZHRoOiAxLjVlbTtcbiAgcGFkZGluZzogMCAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbiNhY2NvdW50TmF2IC5jb3VudCB7XG4gIGZsb2F0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgdG9wOiAtNnB4O1xufVxuXG4jdXNlcl90b29sc19tZW51X2NhbGxvdXQgLmNvdW50IHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vKiBEcm9wIERvd24gTWVudSAqL1xuI2FjY291bnROYXYgI3VzZXJfdG9vbHNfbWVudV9jYWxsb3V0LFxuI3VzZXJfc2l0ZXMgdWwsXG4jdHN0X29wdGlvbnMgdWwsXG4jaGVscF9hbmRfdXBkYXRlcyB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiN1c2VyX3NpdGVzX21lbnUge1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbiN1c2VyX3NpdGVzIGEge1xuICB0ZXh0LWluZGVudDogLTk5OWVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xpbmtfaWNvbnMucG5nXCIpIDhweCAtMzIzMXB4IG5vLXJlcGVhdDtcbiAgd2lkdGg6IDMycHg7XG59XG5cbiN0c3Rfb3B0aW9ucyBhIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9saW5rX2ljb25zLnBuZ1wiKSA4cHggLTIzMDhweCBuby1yZXBlYXQ7XG4gIHdpZHRoOiAzMnB4O1xufVxuXG4jaGVscF9hbmRfdXBkYXRlcyBhLm5ld19oZWxwX2FuZF91cGRhdGVzOmFmdGVyLFxuI2hlbHBfYW5kX3VwZGF0ZXNfbWVudSBhLm5ld19oZWxwX2FuZF91cGRhdGVzOmFmdGVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAwIDJweCAwIDJweDtcbiAgZm9udC1zaXplOiA4cHg7XG4gIGNvbnRlbnQ6ICdORVcnO1xuICBiYWNrZ3JvdW5kOiBncmVlbjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBsaW5lLWhlaWdodDogMTJweDtcbn1cblxuI2hlbHBfYW5kX3VwZGF0ZXMgYS5uZXdfaGVscF9hbmRfdXBkYXRlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI2hlbHBfYW5kX3VwZGF0ZXMgYS5uZXdfaGVscF9hbmRfdXBkYXRlczphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cblxuI2hlbHBfYW5kX3VwZGF0ZXNfbWVudSBpbWcge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuXG4jaGVscF9hbmRfdXBkYXRlc19tZW51IGEubmV3X2hlbHBfYW5kX3VwZGF0ZXM6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDNweDtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG5odG1sLmhhcy1tb2JpbGUtbmF2IGJvZHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyODJiO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ0cHg7XG59XG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYgI2FjY291bnROYXYge1xuICBoZWlnaHQ6IDQ0cHg7XG59XG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYgI2FjY291bnROYXYgPiBsaSB7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG59XG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYgLm5naW5Mb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiAjYWNjb3VudE5hdiA+ICo6bm90KCNsb2dpbik6bm90KCNsb2dvdXQpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiAjbG9naW4sXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2ICNsb2dvdXQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbmh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYgI2xvZ2luIGEsXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2ICNsb2dvdXQgYSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbn1cblxuI1BhZ2VTZWFyY2hCb3gge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBwYWRkaW5nOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jUGFnZVNlYXJjaEJveCAudGhlbWUtc2VhcmNoLWlucHV0LFxuI1BhZ2VTZWFyY2hCb3ggLnRoZW1lLXNlYXJjaC1zdWJtaXQge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW47XG59XG5cbiNQYWdlU2VhcmNoQm94IC50aGVtZS1zZWFyY2gtaW5wdXQsXG4jUGFnZVNlYXJjaEJveCAudGhlbWUtc2VhcmNoLWNsb3NlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4jUGFnZVNlYXJjaEJveCAudGhlbWUtc2VhcmNoLWlucHV0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgcGFkZGluZzogMCAzMHB4IDAgMTBweDtcbn1cblxuI1BhZ2VTZWFyY2hCb3ggLnRoZW1lLXNlYXJjaC1pbnB1dDo6LW1zLWNsZWFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI1BhZ2VTZWFyY2hCb3ggLnRoZW1lLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbiNQYWdlU2VhcmNoQm94IC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNjVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgYmFja2dyb3VuZDogI0NFQ0VDRTtcbn1cblxuI1BhZ2VTZWFyY2hCb3ggLnRoZW1lLXNlYXJjaC1zdWJtaXQ6Zm9jdXMsICNQYWdlU2VhcmNoQm94IC50aGVtZS1zZWFyY2gtc3VibWl0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0NFQ0VDRTtcbn1cblxuI1BhZ2VTZWFyY2hCb3ggLnRoZW1lLXNlYXJjaC1jbGVhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDc1cHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuXG4jUGFnZVNlYXJjaEJveCAudGhlbWUtc2VhcmNoLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyVXCI7XG4gIGNvbG9yOiAjOWNhOGFmO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnRoZW1lLXNlYXJjaC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMCU7XG4gIGJvdHRvbTogMTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzAwcHg7XG4gIHdpZHRoOiA2MDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q0ZDlkYztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gIC50aGVtZS1zZWFyY2gtbW9kYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAyMnB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgY29sb3I6ICMyMzI4MmI7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDY4cHg7XG59XG5cbi50aGVtZS1zZWFyY2gtbW9kYWwgLnRoZW1lLXNlYXJjaC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGxpbmUtaGVpZ2h0OiA0NHB4O1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLinJVcIjtcbiAgY29sb3I6ICM5Y2E4YWY7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgcGFkZGluZzogMCAyNHB4O1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBib3JkZXItdG9wOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLWlucHV0IHtcbiAgY29sb3I6ICM2NjY7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDAgMzBweCAwIDhweDtcbiAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLWlucHV0OjotbXMtY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogN3B4O1xuICByaWdodDogMjRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzAwNTRBNjtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyVXCI7XG4gIGNvbG9yOiAjOWNhOGFmO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLXN0YXR1cyB7XG4gIGNvbG9yOiAjYjhjMGM1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtcmVzdWx0cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMTRweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogMjRweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtcmVzdWx0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDRkOWRjO1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtcmVzdWx0Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q0ZDlkYztcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLXJlc3VsdC1pbmZvIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDZweDtcbiAgaGVpZ2h0OiA0NHB4O1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtcmVzdWx0LWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjBmMWYyO1xufVxuXG4udGhlbWUtc2VhcmNoLW1vZGFsIC50aGVtZS1zZWFyY2gtcmVzdWx0LXByaW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAudGhlbWUtc2VhcmNoLXJlc3VsdC1zZWNvbmRhcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA3MCU7XG4gIGNvbG9yOiAjYjhjMGM1O1xufVxuXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2ICN0b3BOYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiAubmF2LWZpeGVkIC50aGVtZS1tb2JpbGUtbmF2IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2IC50aGVtZS1uYXYtc3R5bGUtc2xpZGUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICB0cmFuc2l0aW9uOiByaWdodCAyMDBtcyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIGh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYgLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICB9XG4gIGh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYuc2xpZGUtbmF2LW9wZW4gLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7XG4gICAgcmlnaHQ6IGNhbGMoMTAwdncgLSA0MDBweCkgIWltcG9ydGFudDtcbiAgfVxuICBodG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2LnNsaWRlLW5hdi1vcGVuLnBhZ2UtbWFuYWdlci12aXNpYmxlIC50aGVtZS1uYXYtc3R5bGUtc2xpZGUge1xuICAgIHJpZ2h0OiBjYWxjKDEwMHZ3IC0gNDAwcHggLSA2MHB4KSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYgLnRoZW1lLXNsaWRlLW5hdi1vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA5OTk5cHg7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2LnNsaWRlLW5hdi1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdi5zbGlkZS1uYXYtb3BlbiAqOm5vdCgudGhlbWUtc2xpZGUtbmF2LWNvbnRlbnQpICsgLnRoZW1lLW5hdi10aXRsZSAudGhlbWUtbmF2LXRpdGxlLXRleHQge1xuICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xufVxuXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2LnNsaWRlLW5hdi1vcGVuIC50aGVtZS1uYXYtc3R5bGUtc2xpZGUge1xuICByaWdodDogMDtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdi5zbGlkZS1uYXYtb3BlbiAudGhlbWUtc2xpZGUtbmF2LW92ZXJsYXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogLjU7XG59XG5cbmh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYuc2xpZGUtbmF2LW9wZW4gLnRoZW1lLXNlYXJjaC1ib3g6Zmlyc3QtY2hpbGQsIGh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXYuc2xpZGUtbmF2LW9wZW4gLnRoZW1lLXNlYXJjaC1ib3g6Zmlyc3QtY2hpbGQgfiAudGhlbWUtc2VhcmNoLWJveCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7XG59XG5cbmh0bWwuY29sbGFwc2VkLW1vYmlsZS1uYXY6bm90KC5zbGlkZS1uYXYtb3BlbikgLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdjpub3QoLnNsaWRlLW5hdi1vcGVuKSAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogLTQ0cHg7XG4gIGJhY2tncm91bmQ6ICMwREIxNEM7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMjUwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlID4gKiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFnZS1tYW5hZ2VyLXZpc2libGUgLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7XG4gIGxlZnQ6IDYwcHg7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2xpZGUtbmF2LWNvbnRlbnQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLXNlYXJjaC1ib3g6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtc3VibWl0LFxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2VhcmNoLWNsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGxpbmVhcjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2VhcmNoLWlucHV0LFxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2VhcmNoLWNsZWFyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtaW5wdXQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBwYWRkaW5nOiAwIDI4cHggMCAxMHB4O1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtaW5wdXQ6Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzM7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLXNlYXJjaC1zdWJtaXQ6Zm9jdXMsIC50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLXNlYXJjaC1zdWJtaXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAyMDQwO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtMzFweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2VhcmNoLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyVXCI7XG4gIGNvbG9yOiAjOWNhOGFmO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogNDRweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLXNsaWRlLW5hdi10b2dnbGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgY29udGVudDogXCJcXGYwYzlcIjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjZWVlO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtdGl0bGUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LXRpdGxlLXRleHQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb2xvcjogI2VhZWFlYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMTJweCAyMHB4O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1iYWNrLFxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWZvcndhcmQge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWJhY2sge1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgd2lkdGg6IDQ0cHg7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1iYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1iYWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWZvcndhcmQge1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDQ0cHg7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1mb3J3YXJkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAuZGlzYWJsZWQgPiAudGhlbWUtbmF2LWZvcndhcmQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjYmZiZmJmO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtbWVudXMge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWZsZXg6IDEgMSAxMDAlO1xuICAtbXMtZmxleDogMSAxIDEwMCU7XG4gIGZsZXg6IDEgMSAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmctYm90dG9tOiA3MnB4O1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtcGFyZW50LWluLFxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LXBhcmVudC1vdXQge1xuICBsZWZ0OiAtMTAlO1xuICBvcGFjaXR5OiAwO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtY2hpbGRyZW4taW4sXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtY2hpbGRyZW4tb3V0IHtcbiAgbGVmdDogMTAwJTtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LXBhcmVudC1vdXQsXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtY2hpbGRyZW4tb3V0IHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiA0NHB4O1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtaXRlbS5wYXl3YWxsZWQgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIG1heC13aWR0aDogNDBweDtcbiAgbWF4LWhlaWdodDogMjBweDtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWl0ZW0uc2VsZWN0ZWQgPiAudGhlbWUtbmF2LWxpbmsge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtaXRlbSA+IC50aGVtZS1uYXYtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1pdGVtLmRpc2FibGVkID4gKiB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSAudGhlbWUtbmF2LWl0ZW0uZGlzYWJsZWQuc2VsZWN0ZWQgPiAudGhlbWUtbmF2LWxpbmsge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1pdGVtLmRpc2FibGVkID4gKjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG59XG5cbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgLnRoZW1lLW5hdi1saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogI0ZGRjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIC50aGVtZS1uYXYtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG59XG5cbi5nc2MtY29udHJvbC1jc2UsXG4uZ3NjLXNlYXJjaC1ib3gge1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbn1cblxuLmdzYy1jb250cm9sLWNzZSwgLmdzYy1jb250cm9sLWNzZSAqLFxuLmdzYy1zZWFyY2gtYm94LFxuLmdzYy1zZWFyY2gtYm94ICoge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgYm94LXNpemluZzogaW5pdGlhbDtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCAuZ3NjLXNlYXJjaC1ib3gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50aGVtZS1zZWFyY2gtbW9kYWwgLmdzYy1jbGVhci1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBUT0RPOiBHZXQgcmlkIG9mIHRoaXMgbG9uZyBhbmQgaGFyZCB0byBtYWludGFpbiBsaXN0IGFuZCBqdXN0IHVzZSBhIGNsZWFyZml4IGNsYXNzICovXG4vKiBJbnRlcm5ldCBFeHBsb3JlciAqL1xuLmNsZWFyZml4IHtcbiAgem9vbTogMTtcbn1cblxuLyogRXZlcnl0aGluZyBlbHNlICovXG4uY2xlYXJmaXg6YWZ0ZXIsXG4uYm94c2NvcmUtY29udGFpbmVyOmFmdGVyLFxuLmJveHNjb3JlLWV4dHJhczphZnRlcixcbi5icmFja2V0LWdhbWUgcDphZnRlcixcbiNicmFja2V0LXNlZWQtbGlzdCBwOmFmdGVyLFxuI2JyYWNrZXQtdGVhbXMgcDphZnRlcixcbi5icmFja2V0LWdhbWUgcDphZnRlcixcbi5jbXNHYW1lU3RhdHVzOmFmdGVyLFxuLmNtc0dhbWVTdGF0dXMgdWw6YWZ0ZXIsXG4uY21zUGFnZVN0YXR1czphZnRlcixcbi5jb21tZW50LWNvbnRhaW5lcjphZnRlcixcbi5jb21tZW50LWZvcm06YWZ0ZXIsXG4uY29tbWVudDphZnRlcixcbi5nYW1lLWxpc3Rpbmc6YWZ0ZXIsXG4uZ2FtZVN0YXR1c0NvbnN0cnVjdGlvbjphZnRlcixcbi5sZWFkZXItaGlnaGxpZ2h0OmFmdGVyLFxuLmxvZ2luLW9wdGlvbnM6YWZ0ZXIsXG4ubG9naW4tb3B0aW9ucy1ib2R5OmFmdGVyLFxuLmxvZ2luLW9wdGlvbnMtZm9vdGVyOmFmdGVyLFxuLmxvZ2luLW9wdGlvbnMtaGVhZGVyOmFmdGVyLFxuLm5ld3NJdGVtRWxlbWVudDphZnRlcixcbiNwaG90b0dhbGxlcnlDb250cm9sczphZnRlcixcbiNwaG90b0dhbGxlcnlDb250cm9scyAubGF5b3V0Q29udGFpbmVyOmFmdGVyLFxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbjphZnRlcixcbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudDphZnRlcixcbiNtZWdhRHJvcERvd24gLnNlYXNvbjphZnRlcixcbi5zZWFzb24tdGl0bGU6YWZ0ZXIsXG4uc2Vhc29uIC5oZWFkZXI6YWZ0ZXIsXG4jc3BvcnQtY29sb3JzOmFmdGVyLFxuI3Nwb3J0LXNsaWRlcjphZnRlcixcbi5zcG9ydC10b29sczphZnRlcixcbi5zcG9ydC10b29scyB1bDphZnRlcixcbi5zcG9ydC10b29scyB1bCBsaTphZnRlcixcbi5zdWJjb21tZW50OmFmdGVyLFxuI21lZ2FEcm9wRG93biAuc3Vic2Vhc29uOmFmdGVyLFxuI3N1cnZleV9zdGVwcyBmb3JtOmFmdGVyLFxuLnN1cnZleUZvcndhcmRCdXR0b246YWZ0ZXIsXG4udG9vbHRpcC1pbm5lcjphZnRlcixcbi50b29sdGlwLW91dGVyOmFmdGVyLFxuLndpZGdldEZvb3RlcjphZnRlcixcbi53aWRnZXRIaWVyYXJjaHkgLnNpbmdsZUxldmVsOmFmdGVyLFxuLndpZGdldC10ZWFtQnV0dG9ucyBhOmFmdGVyLFxuLndpZGdldC10ZWFtQnV0dG9ucyAuc3BvcnQtY29sb3JzOmFmdGVyLFxuLndpZGdldC1sZWFkZXI6YWZ0ZXIsXG4ud2lkZ2V0LWxlYWRlciB0YWJsZSBsaSBwOmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIVxuICogQm9vdHN0cmFwIHYzLjMuMiAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cbi8qIVxuICogVGhpcyBpcyBqdXN0IHRoZSBncmlkIHVzZSwgSSd2ZSBkZWxldGVkIGV2ZXJ5dGhpbmcgZWxzZSBvdXQgYXMgd2UgZG9uJ3QgbmVlZCBpdCBhcyB3ZSBoYXZlIG91ciBvd24gc3R5bGVzIGFuZCBpdCBlbmRzIHVwIGJlaW5nIGNvbmZsaWN0ZWQuIDMvMTkvMjAxNSAtIEpvZSBCLlxuXG5cbiAqIEdlbmVyYXRlZCB1c2luZyB0aGUgQm9vdHN0cmFwIEN1c3RvbWl6ZXIgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2N1c3RvbWl6ZS8/aWQ9NWVkYjAwMGVlNzllN2JiMzYzMTUpXG4gKiBDb25maWcgc2F2ZWQgdG8gY29uZmlnLmpzb24gYW5kIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tLzVlZGIwMDBlZTc5ZTdiYjM2MzE1XG4gKi9cbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4vKiAuTkdJTl90aXAgLmNvbnRhaW5lciAqL1xuLk5HSU5fdGlwIC5jb250YWluZXIge1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiA3NTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDk3MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDExNzBweDtcbiAgfVxufVxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4uY29sLXhzLTEsIC5jb2wtc20tMSwgLmNvbC1tZC0xLCAuY29sLWxnLTEsIC5jb2wteHMtMiwgLmNvbC1zbS0yLCAuY29sLW1kLTIsIC5jb2wtbGctMiwgLmNvbC14cy0zLCAuY29sLXNtLTMsIC5jb2wtbWQtMywgLmNvbC1sZy0zLCAuY29sLXhzLTQsIC5jb2wtc20tNCwgLmNvbC1tZC00LCAuY29sLWxnLTQsIC5jb2wteHMtNSwgLmNvbC1zbS01LCAuY29sLW1kLTUsIC5jb2wtbGctNSwgLmNvbC14cy02LCAuY29sLXNtLTYsIC5jb2wtbWQtNiwgLmNvbC1sZy02LCAuY29sLXhzLTcsIC5jb2wtc20tNywgLmNvbC1tZC03LCAuY29sLWxnLTcsIC5jb2wteHMtOCwgLmNvbC1zbS04LCAuY29sLW1kLTgsIC5jb2wtbGctOCwgLmNvbC14cy05LCAuY29sLXNtLTksIC5jb2wtbWQtOSwgLmNvbC1sZy05LCAuY29sLXhzLTEwLCAuY29sLXNtLTEwLCAuY29sLW1kLTEwLCAuY29sLWxnLTEwLCAuY29sLXhzLTExLCAuY29sLXNtLTExLCAuY29sLW1kLTExLCAuY29sLWxnLTExLCAuY29sLXhzLTEyLCAuY29sLXNtLTEyLCAuY29sLW1kLTEyLCAuY29sLWxnLTEyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbn1cblxuLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtMSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tMSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtMSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctMSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtMiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tMiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtMiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctMiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtMywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tMywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtMywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctMywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtNCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tNCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtNCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctNCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtNSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tNSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtNSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctNSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtNiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tNiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtNiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctNiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtNywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tNywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtNywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctNywgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtOCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tOCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtOCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctOCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtOSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tOSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtOSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctOSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wteHMtMTAsIC5lZGl0X21vZGUgLmxheW91dENvbnRhaW5lciAuY29sLXNtLTEwLCAuZWRpdF9tb2RlIC5sYXlvdXRDb250YWluZXIgLmNvbC1tZC0xMCwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbGctMTAsIC5lZGl0X21vZGUgLmxheW91dENvbnRhaW5lciAuY29sLXhzLTExLCAuZWRpdF9tb2RlIC5sYXlvdXRDb250YWluZXIgLmNvbC1zbS0xMSwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtbWQtMTEsIC5lZGl0X21vZGUgLmxheW91dENvbnRhaW5lciAuY29sLWxnLTExLCAuZWRpdF9tb2RlIC5sYXlvdXRDb250YWluZXIgLmNvbC14cy0xMiwgLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVyIC5jb2wtc20tMTIsIC5lZGl0X21vZGUgLmxheW91dENvbnRhaW5lciAuY29sLW1kLTEyLCAuZWRpdF9tb2RlIC5sYXlvdXRDb250YWluZXIgLmNvbC1sZy0xMiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmNvbC14cy0xLCAuY29sLXhzLTIsIC5jb2wteHMtMywgLmNvbC14cy00LCAuY29sLXhzLTUsIC5jb2wteHMtNiwgLmNvbC14cy03LCAuY29sLXhzLTgsIC5jb2wteHMtOSwgLmNvbC14cy0xMCwgLmNvbC14cy0xMSwgLmNvbC14cy0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY29sLXhzLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wteHMtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjclO1xufVxuXG4uY29sLXhzLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy05IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLmNvbC14cy04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy02IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmNvbC14cy01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy00IHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy0zIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLmNvbC14cy0yIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLXB1bGwtMTIge1xuICByaWdodDogMTAwJTtcbn1cblxuLmNvbC14cy1wdWxsLTExIHtcbiAgcmlnaHQ6IDkxLjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy1wdWxsLTEwIHtcbiAgcmlnaHQ6IDgzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdWxsLTkge1xuICByaWdodDogNzUlO1xufVxuXG4uY29sLXhzLXB1bGwtOCB7XG4gIHJpZ2h0OiA2Ni42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtcHVsbC03IHtcbiAgcmlnaHQ6IDU4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdWxsLTYge1xuICByaWdodDogNTAlO1xufVxuXG4uY29sLXhzLXB1bGwtNSB7XG4gIHJpZ2h0OiA0MS42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtcHVsbC00IHtcbiAgcmlnaHQ6IDMzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdWxsLTMge1xuICByaWdodDogMjUlO1xufVxuXG4uY29sLXhzLXB1bGwtMiB7XG4gIHJpZ2h0OiAxNi42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtcHVsbC0xIHtcbiAgcmlnaHQ6IDguMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLXB1bGwtMCB7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uY29sLXhzLXB1c2gtMTIge1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uY29sLXhzLXB1c2gtMTEge1xuICBsZWZ0OiA5MS42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtcHVzaC0xMCB7XG4gIGxlZnQ6IDgzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdXNoLTkge1xuICBsZWZ0OiA3NSU7XG59XG5cbi5jb2wteHMtcHVzaC04IHtcbiAgbGVmdDogNjYuNjY2NjY2NjclO1xufVxuXG4uY29sLXhzLXB1c2gtNyB7XG4gIGxlZnQ6IDU4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdXNoLTYge1xuICBsZWZ0OiA1MCU7XG59XG5cbi5jb2wteHMtcHVzaC01IHtcbiAgbGVmdDogNDEuNjY2NjY2NjclO1xufVxuXG4uY29sLXhzLXB1c2gtNCB7XG4gIGxlZnQ6IDMzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy1wdXNoLTMge1xuICBsZWZ0OiAyNSU7XG59XG5cbi5jb2wteHMtcHVzaC0yIHtcbiAgbGVmdDogMTYuNjY2NjY2NjclO1xufVxuXG4uY29sLXhzLXB1c2gtMSB7XG4gIGxlZnQ6IDguMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLXB1c2gtMCB7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5jb2wteHMtb2Zmc2V0LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7XG59XG5cbi5jb2wteHMtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmNvbC14cy1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLmNvbC14cy1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xufVxuXG4uY29sLXhzLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLmNvbC14cy1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG59XG5cbi5jb2wteHMtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG59XG5cbi5jb2wteHMtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLXNtLTEsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuY29sLXNtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLXB1bGwtMTIge1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIC5jb2wtc20tcHVsbC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLXB1bGwtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTkge1xuICAgIHJpZ2h0OiA3NSU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTYge1xuICAgIHJpZ2h0OiA1MCU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTMge1xuICAgIHJpZ2h0OiAyNSU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLXB1bGwtMCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTEyIHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5jb2wtc20tcHVzaC0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tcHVzaC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVzaC05IHtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLXB1c2gtNyB7XG4gICAgbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVzaC02IHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLXB1c2gtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVzaC0zIHtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLXB1c2gtMSB7XG4gICAgbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTAge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkge1xuICAuY29sLW1kLTEsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuY29sLW1kLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLW1kLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtbWQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtbWQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtbWQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMTIge1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtcHVsbC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTkge1xuICAgIHJpZ2h0OiA3NSU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTYge1xuICAgIHJpZ2h0OiA1MCU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTMge1xuICAgIHJpZ2h0OiAyNSU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTEyIHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtcHVzaC0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtcHVzaC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtcHVzaC05IHtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1c2gtNyB7XG4gICAgbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtcHVzaC02IHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1c2gtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtcHVzaC0zIHtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1c2gtMSB7XG4gICAgbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTAge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLWxnLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTtcbiAgfVxuICAuY29sLWxnLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC05IHtcbiAgICByaWdodDogNzUlO1xuICB9XG4gIC5jb2wtbGctcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC02IHtcbiAgICByaWdodDogNTAlO1xuICB9XG4gIC5jb2wtbGctcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC0zIHtcbiAgICByaWdodDogMjUlO1xuICB9XG4gIC5jb2wtbGctcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gIC5jb2wtbGctcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtbGctcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtbGctcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtbGctcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxufVxuXG4uY2xlYXJmaXg6YmVmb3JlLFxuLmNsZWFyZml4OmFmdGVyLFxuLmNvbnRhaW5lcjpiZWZvcmUsXG4uY29udGFpbmVyOmFmdGVyLFxuLmNvbnRhaW5lci1mbHVpZDpiZWZvcmUsXG4uY29udGFpbmVyLWZsdWlkOmFmdGVyLFxuLnJvdzpiZWZvcmUsXG4ucm93OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIsXG4uY29udGFpbmVyOmFmdGVyLFxuLmNvbnRhaW5lci1mbHVpZDphZnRlcixcbi5yb3c6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLmFmZml4IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG5ALW1zLXZpZXdwb3J0IHtcbiAgd2lkdGg6IGRldmljZS13aWR0aDtcbn1cblxuLnZpc2libGUteHMsXG4udmlzaWJsZS1zbSxcbi52aXNpYmxlLW1kLFxuLnZpc2libGUtbGcge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgdHIudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGgudmlzaWJsZS14cyxcbiAgdGQudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuICB0ci52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0aC52aXNpYmxlLXNtLFxuICB0ZC52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuICB0ci52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0aC52aXNpYmxlLW1kLFxuICB0ZC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudmlzaWJsZS1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgdHIudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGgudmlzaWJsZS1sZyxcbiAgdGQudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGctYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmlzaWJsZS1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5oaWRkZW4tc20ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhpZGRlbi1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuICB0ci52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0aC52aXNpYmxlLXByaW50LFxuICB0ZC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmhpZGRlbi1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIGJvcmRlci1jb2xsYXBzZTogaW5pdGlhbDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUgdGQsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRkLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHRkLCAuYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRoLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0aCxcbiNtb250aF9saXN0IC5ib3hzY29yZSB0aCB7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3ggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ZDpsYXN0LWNoaWxkLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ZDpsYXN0LWNoaWxkLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHRkOmxhc3QtY2hpbGQsIC5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUgdGg6bGFzdC1jaGlsZCwgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuYm94c2NvcmUgdGg6bGFzdC1jaGlsZCxcbiNtb250aF9saXN0IC5ib3hzY29yZSB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRyOmxhc3QtY2hpbGQgdGQsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRyOmxhc3QtY2hpbGQgdGQsXG4jbW9udGhfbGlzdCAuYm94c2NvcmUgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUgdGJvZHkgdGQsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRib2R5IHRkLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHRib2R5IHRkIHtcbiAgYmFja2dyb3VuZDogI2VlZTtcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0aCwgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuYm94c2NvcmUgdGgsXG4jbW9udGhfbGlzdCAuYm94c2NvcmUgdGgge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgYmFja2dyb3VuZDogI0UxRThFRDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udDogNjAwIDEycHgvMS4yIFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRkLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ZCxcbiNtb250aF9saXN0IC5ib3hzY29yZSB0ZCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMzBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0UxRThFRDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ZC5oaWdobGlnaHQsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRkLmhpZ2hsaWdodCxcbiNtb250aF9saXN0IC5ib3hzY29yZSB0ZC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRkLnRlYW0sICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRkLnRlYW0sXG4jbW9udGhfbGlzdCAuYm94c2NvcmUgdGQudGVhbSwgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0aC50ZWFtLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0aC50ZWFtLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHRoLnRlYW0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRkOm5vdCgudGVhbSksICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRkOm5vdCgudGVhbSksXG4jbW9udGhfbGlzdCAuYm94c2NvcmUgdGQ6bm90KC50ZWFtKSwgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0aDpub3QoLnRlYW0pLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0aDpub3QoLnRlYW0pLFxuI21vbnRoX2xpc3QgLmJveHNjb3JlIHRoOm5vdCgudGVhbSkge1xuICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuY29sLW1kLTMgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgLmJveHNjb3JlLWNvbnRhaW5lciAuY29sLW1kLTMgdGFibGUuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksIC5jb2wtbWQtMyAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuY29sLW1kLTMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAuY29sLW1kLTNcbiAgI21vbnRoX2xpc3QgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAjbW9udGhfbGlzdCAuY29sLW1kLTMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jb2wtbWQtMyAuYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCwgLmJveHNjb3JlLWNvbnRhaW5lciAuY29sLW1kLTMgdGFibGUuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLCAuY29sLW1kLTMgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5jb2wtbWQtMyAuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLCAuY29sLW1kLTNcbiAgI21vbnRoX2xpc3QgLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCxcbiAgI21vbnRoX2xpc3QgLmNvbC1tZC0zIC5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgLmJveHNjb3JlLWNvbnRhaW5lciAuY29sLW1kLTMgdGFibGUuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksIC5jb2wtbWQtMyAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuY29sLW1kLTMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAuY29sLW1kLTNcbiAgI21vbnRoX2xpc3QgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAjbW9udGhfbGlzdCAuY29sLW1kLTMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAuY29sLW1kLTQgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgLmJveHNjb3JlLWNvbnRhaW5lclxuICAuY29sLW1kLTQgdGFibGUuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksXG4gIC5jb2wtbWQtNCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgI2RheVZpZXdDYWxlbmRhckV2ZW50c1xuICAuY29sLW1kLTQgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAuY29sLW1kLTRcbiAgI21vbnRoX2xpc3QgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAjbW9udGhfbGlzdFxuICAuY29sLW1kLTQgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAubGF5b3V0LTUwLTUwIC5jb2wtbWQtNiAuYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAuYm94c2NvcmUtY29udGFpbmVyIC5sYXlvdXQtNTAtNTAgLmNvbC1tZC02IHRhYmxlLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAubGF5b3V0LTUwLTUwIC5jb2wtbWQtNiAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgI2RheVZpZXdDYWxlbmRhckV2ZW50cyAubGF5b3V0LTUwLTUwIC5jb2wtbWQtNiAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksIC5sYXlvdXQtNTAtNTAgLmNvbC1tZC02XG4gICNtb250aF9saXN0IC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSxcbiAgI21vbnRoX2xpc3QgLmxheW91dC01MC01MCAuY29sLW1kLTYgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jb2wtbWQtNCAuYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAuYm94c2NvcmUtY29udGFpbmVyIC5jb2wtbWQtNCB0YWJsZS5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgLmNvbC1tZC00ICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5jb2wtbWQtNCAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksIC5jb2wtbWQtNFxuICAjbW9udGhfbGlzdCAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksXG4gICNtb250aF9saXN0IC5jb2wtbWQtNCAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmJveHNjb3JlLWNvbnRhaW5lciB0YWJsZS5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSwgLmJveHNjb3JlLWNvbnRhaW5lclxuICAubGF5b3V0LTI1LTUwLTI1IHRhYmxlLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAubGF5b3V0LTI1LTUwLTI1ICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAubGF5b3V0LTI1LTUwLTI1XG4gICNtb250aF9saXN0IC5ib3hzY29yZSB0ciA+ICo6bm90KC50ZWFtKTpub3QoLnNjb3JlLWZpbmFsKSxcbiAgI21vbnRoX2xpc3RcbiAgLmxheW91dC0yNS01MC0yNSAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC00IC5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLCAuYm94c2NvcmUtY29udGFpbmVyIC5jb2wtbWQtNCB0YWJsZS5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwsIC5jb2wtbWQtNCAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmNvbC1tZC00IC5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwsIC5jb2wtbWQtNFxuICAjbW9udGhfbGlzdCAuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLFxuICAjbW9udGhfbGlzdCAuY29sLW1kLTQgLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCxcbiAgLmxheW91dC0yNS01MC0yNSAuYm94c2NvcmUtY29udGFpbmVyIHRhYmxlLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCwgLmJveHNjb3JlLWNvbnRhaW5lclxuICAubGF5b3V0LTI1LTUwLTI1IHRhYmxlLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCxcbiAgLmxheW91dC0yNS01MC0yNSAjZGF5Vmlld0NhbGVuZGFyRXZlbnRzIC5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwsICNkYXlWaWV3Q2FsZW5kYXJFdmVudHNcbiAgLmxheW91dC0yNS01MC0yNSAuYm94c2NvcmUgLnRlYW1Mb2dvLXNtYWxsLFxuICAubGF5b3V0LTI1LTUwLTI1XG4gICNtb250aF9saXN0IC5ib3hzY29yZSAudGVhbUxvZ28tc21hbGwsXG4gICNtb250aF9saXN0XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmJveHNjb3JlIC50ZWFtTG9nby1zbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gIC5ib3hzY29yZS1jb250YWluZXIgdGFibGUuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCksICNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmJveHNjb3JlIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpLFxuICAjbW9udGhfbGlzdCAuYm94c2NvcmUgdHIgPiAqOm5vdCgudGVhbSk6bm90KC5zY29yZS1maW5hbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuI3RhYl9ib3hzY29yZXNfY29udGVudCAuYm94c2NvcmUtY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciAudGVhbSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgLnRlYW1OYW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDE1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciAudGFibGUtd3JhcHBlci1zY3JvbGwge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmJveHNjb3JlLWNvbnRhaW5lciAudGVhbUxvZ28tc21hbGwge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIG1hcmdpbjogMnB4IDZweDtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDJweCA2cHggMnB4IDA7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgLmJveHNjb3JlLWlubmVyLWNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIC5ib3hzY29yZS1leHRyYXMge1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIC5ib3hzY29yZS1leHRyYXMgLmRhdGV0aW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgLmJveHNjb3JlLWV4dHJhcyAudGltZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgLmJveHNjb3JlLWV4dHJhcyAubG9jYXRpb24sXG4uYm94c2NvcmUtY29udGFpbmVyIC5ib3hzY29yZS1leHRyYXMgLmdhbWUtaWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNnB4O1xufVxuXG4uYm94c2NvcmUtY29udGFpbmVyIC5ib3hzY29yZS1leHRyYXMgLmdhbWUtc2hvdy1saW5rIHtcbiAgY29sb3I6ICMwREIxNEM7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIgLmJveHNjb3JlLWV4dHJhcyAuZ2FtZS1zaG93LWxpbms6YWZ0ZXIge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgY29udGVudDogJ1xcZjA2MSc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIG1hcmdpbjogLS4xZW0gMCAwIC40ZW07XG4gIGZvbnQtc2l6ZTogLjllbTtcbn1cblxuLnNuLXRhYmxlLWdhbWUtaGlnaGxpZ2h0IHtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBpbml0aWFsO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNuLXRhYmxlLWdhbWUtaGlnaGxpZ2h0IHRkLCAuc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGgge1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XG59XG5cbi5zbi10YWJsZS1nYW1lLWhpZ2hsaWdodCB0ZDpsYXN0LWNoaWxkLCAuc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGg6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cblxuLnNuLXRhYmxlLWdhbWUtaGlnaGxpZ2h0IHRyOmxhc3QtY2hpbGQgdGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGJvZHkgdGQge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGgge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgYmFja2dyb3VuZDogI0UxRThFRDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udDogNjAwIDEycHgvMS4yIFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGJvZHkgdGQge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNFMUU4RUQ7XG59XG5cbi5zbi10YWJsZS1nYW1lLWhpZ2hsaWdodCB0Ym9keSB0ZC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGZvb3Qge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGZvb3QgdGQge1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQgdGZvb3QgdGQgPiBkaXYge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbi10YWJsZS1nYW1lLWhpZ2hsaWdodCB0Zm9vdCBhIHtcbiAgY29sb3I6ICMwREIxNEM7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zbi10YWJsZS1nYW1lLWhpZ2hsaWdodCB0Zm9vdCBhOmFmdGVyIHtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIGNvbnRlbnQ6ICdcXGYwNjEnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBtYXJnaW46IC0uMWVtIDAgMCAuNGVtO1xuICBmb250LXNpemU6IC45ZW07XG59XG5cbi8qIEZDSyBFZGl0b3IgdHdlYWtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlbGVjdEVsZW1lbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBoZWlnaHQ6IDE1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICBtYXJnaW46IDAgMjVweDtcbn1cblxuLnNlbGVjdEVsZW1lbnQgLm9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7XG59XG5cbi5zZWxlY3RFbGVtZW50IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogM3B4IDVweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnNlbGVjdEVsZW1lbnQgaW5wdXQsIC5zZWxlY3RFbGVtZW50IGltZywgLnNlbGVjdEVsZW1lbnQgaDQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi8qIENNUyBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY21zQnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9jbXNCdXR0b24uZ2lmXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIEFkbWluIFRvZ2dsZSBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZ29Ub0FkbWluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zaXRlQWRtaW5Ub2dnbGUuZ2lmXCIpO1xufVxuXG4uZ29Ub1dlYnNpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3dlYnNpdGVUb2dnbGUuZ2lmXCIpO1xufVxuXG4vKiBBRE1JTiAtIFBhZ2UgT3B0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNhZG1pblBhZ2VPcHRpb25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFODcyO1xufVxuXG4jYWRtaW5QYWdlT3B0aW9ucyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jYWRtaW5QYWdlT3B0aW9ucyBvcHRpb24ge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4jYWRtaW5QYWdlT3B0aW9ucyBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZWRpdFBhZ2VMaW5rOmxpbmssIC5lZGl0UGFnZUxpbms6dmlzaXRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlEMTAwO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG4gIG1hcmdpbjogMCAxcHggMjVweCAxcHg7XG59XG5cbi8qIENvbnN0cnVjdGlvbiBSYXBpZCBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiB7XG4gIHBhZGRpbmc6IDE1cHggMTVweCAwO1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBib3R0b20gbGVmdDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnBhZ2VFbGVtZW50QWRtaW4ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGM0IwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRERBMzAxO1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5wYWdlRWxlbWVudEFkbWluIC5wYWdlRWxlbWVudCB7XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLnJhcGlkVGFic0NvbnN0cnVjdGlvbkxvYWRlciB7XG4gIGJhY2tncm91bmQ6ICNGREU4NzIgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmXCIpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0REQTMwMTtcbn1cblxuLyogQ01TIFBhZ2UgU3RhdHVzICovXG4uY21zUGFnZVN0YXR1cyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNtc1BhZ2VTdGF0dXMgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB3aWR0aDogMzk1cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY21zUGFnZVN0YXR1cyB1bCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY21zUGFnZVN0YXR1cyBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzBweDtcbiAgaGVpZ2h0OiAwcHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xufVxuXG4uY21zUGFnZVN0YXR1cyAuY21zUGFnZURpc2FibGVkIGEge1xuICB3aWR0aDogMTAzcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcHVibGljUHJpdmF0ZVRvZ2dsZV9kaXNhYmxlZC5wbmdcIik7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5jbXNQYWdlUGF5d2FsbGVkIGEge1xuICB3aWR0aDogMTEycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcHVibGljUHJpdmF0ZVRvZ2dsZV9wYXl3YWxsZWQucG5nXCIpO1xufVxuXG4uY21zUGFnZVN0YXR1cyAuY21zUGFnZVByaXZhdGUgYSB7XG4gIHdpZHRoOiA5MXB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3B1YmxpY1ByaXZhdGVUb2dnbGVfcHJpdmF0ZS5wbmdcIik7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5jbXNQYWdlUHVibGljIGEge1xuICB3aWR0aDogODlweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9wdWJsaWNQcml2YXRlVG9nZ2xlX3B1YmxpYy5wbmdcIik7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5zZWxlY3RlZCBhIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzBweDtcbn1cblxuLmNtc1BhZ2VTdGF0dXMgLmlubGluZUhlbHAsIC5pbmxpbmVIZWxwIHtcbiAgY2xlYXI6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgbGluZS1oZWlnaHQ6IDEzNSU7XG4gIHBhZGRpbmc6IDE1cHggNXB4O1xufVxuXG4vKiBDTVMgUGFnZSBUYWIgVGFibGVzICovXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5kYXRhVGFibGUsIC5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnJlc3VsdHNUYWJsZSwgI3Byb2ZpbGVzX3RhYmxlIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLm9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkYzQjA7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLmV2ZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVGQ0Y0O1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5nZW5lcmljUGVybWlzc2lvbnMge1xuICBjb2xvcjogIzMzMzMzMztcbn1cblxuLyogV2hpdGUgaW5uZXIgY29udGFpbmVyIGZvciBjb250ZW50IGNvbnN0cnVjdGlvbiB0YWJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5sYXlvdXRDb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnBhZ2VFbGVtZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5zdGF0VGFibGUgdGgsXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnN0YXRUYWJsZSB0ZCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnN0YXRUYWJsZSAub2RkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLm9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5ldmVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5wYWdlRWxlbWVudDpsYXN0LWNoaWxkLFxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5wYWdlRWxlbWVudDpsYXN0LWNoaWxkIC5kYXRhVGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBZZWxsb3cgaW5uZXIgY29udGFpbmVyIGZvciBjb250ZW50IGNvbnN0cnVjdGlvbiB0YWJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyWWVsbG93IHtcbiAgYmFja2dyb3VuZDogI2ZmZjNiMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLyogRGF0YSBUYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5kYXRhVGFibGUgdGQsIC5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLmRhdGFUYWJsZSB0aCwgLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAucmVzdWx0c1RhYmxlIHRyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uZGF0YVRhYmxlIC5vZGQgLnBlcm1pc3Npb25EaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNDQ0M7XG59XG5cbi5kYXRhVGFibGUgLmV2ZW4gLnBlcm1pc3Npb25EaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNFRkVGRUY7XG59XG5cbi5kYXRhVGFibGUgLmtleSAucGVybWlzc2lvbkRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDogIzk5OTtcbn1cblxuLmRhdGFUYWJsZSAucHJvZmlsZVBpYyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZGF0YVRhYmxlIC5wcm9maWxlUGljIGltZyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZGF0YVRhYmxlIC5wcm9maWxlU3ViUGljIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCA1cHggMCAtMTBweDtcbn1cblxuLmRhdGFUYWJsZSB0ZCAucHJvZmlsZVN1YlBpYyBpbWcge1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hIHtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5kYXRhVGFibGUgLnBlcnNvbmEgaW5wdXQge1xuICBtYXJnaW46IDVweCAxMHB4IDAgNXB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmRhdGFUYWJsZSAucGVyc29uYSAucHJvZmlsZVBpYyB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hIGltZyB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hIC5uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiN1c2VyUGFnZSAuZGF0YVRhYmxlIC5wZXJzb25hIHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hU21hbGwgLnByb2ZpbGVQaWMge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiA1cHggNXB4IDAgMDtcbn1cblxuLyogdXNlZCBpbiBVc2VyIHNlY3Rpb24gKi9cbi5kYXRhVGFibGUgLnNhdmVkTWVzc2FnZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiAgQXJjaGl2ZWQgUGFnZSBBZG1pbiBTdGF0dXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY21zVGFiSGVhZGVyIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2NjY7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBtYXJnaW46IDAgNXB4IDVweCAwO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFkbWluUGFnZVNldHRpbmdzIHtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xufVxuXG4uYWRtaW5QYWdlU3RhdHVzIHtcbiAgd2lkdGg6IDQwJTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hZG1pblBhZ2VTdGF0dXMgcCB7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLmFkbWluUGFnZVN0YXR1cyBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLm9iamVjdEF0dHJpYnV0ZXNMaW5rRGl2IHVsIHtcbiAgcGFkZGluZzogMCAxMHB4IDEwcHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnBhZ2VFbGVtZW50TWVudSB7XG4gIGNsZWFyOiBib3RoO1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBib3R0b20gbGVmdDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREEzMDE7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRERBMzAxO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VFbGVtZW50TWVudSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3RhYl9jb250ZW50X2NvbnRlbnQgLnBhZ2VFbGVtZW50TWVudSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbiN0YWJfY29udGVudF9jb250ZW50IC5wYWdlRWxlbWVudE1lbnUgaDMge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmFkZEVsZW1lbnRNZW51IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qIENNUyBQYWdlIE9wdGlvbnMgKi9cbi5jbXNQYWdlT3B0aW9ucyB7XG4gIGNsZWFyOiBib3RoO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMDAlO1xufVxuXG4uY21zUGFnZU9wdGlvbnMgbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogQ01TIE5vZGUgUGlja2VyICovXG4ucGFnZUVsZW1lbnRBZG1pbiAucGFnZUVsZW1lbnRNZW51LCAucGFnZUVsZW1lbnRBZG1pbiAubm9kZVBpY2tlckNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG4vKiBBRE1JTiAtIFBhZ2UgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBQRSBzcGFjaW5nICovXG4ucGFnZUVsZW1lbnRBZG1pbiB7XG4gIG1hcmdpbjogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnRBZG1pbiB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5jb2xsZWN0b3JFbGVtZW50IC5wYWdlRWxlbWVudEFkbWluIHtcbiAgbWFyZ2luOiAwIDAgMjBweCAwO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudEFkbWluIC5wYWdlRWxlbWVudCwgLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnRBZG1pbiAuZm9ybUVsZW1lbnQsIC5sYXlvdXRDb250YWluZXIgLnBhZ2VFbGVtZW50QWRtaW4gLmhyRWxlbWVudCwgLnBhZ2VFbGVtZW50QWRtaW4gLnBhZ2VFbGVtZW50IHtcbiAgbWFyZ2luOiAzcHggMCAwO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudEFkbWluIC5mb3JtRWxlbWVudCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIENvbGxhcHNlIFBFIEJ1dHRvbiAqL1xuLmNvbGxhcHNlUEUge1xuICBwYWRkaW5nLWxlZnQ6IDEzcHg7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbmF2X2Fzc2V0c19ibGFjay5naWZcIikgbm8tcmVwZWF0IDAgNXB4O1xufVxuXG4uZXhwYW5kUEUge1xuICBwYWRkaW5nLWxlZnQ6IDEzcHg7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbmF2X2Fzc2V0c19ibGFjay5naWZcIikgbm8tcmVwZWF0IDAgLTc4cHg7XG59XG5cbi8qIEFkbWluIEJhciAgRGVsZXRlL0VuYWJsZSAqL1xuLmVsZW1lbnRCYXIgLnBhZ2VFbGVtZW50X2RlbGV0ZSxcbi5jb250YWluZXJCYXIgLmxheW91dENvbnRhaW5lcl9kZWxldGUge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9wZV90cmFzaC5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDNweCAzcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDAgNXB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5lbGVtZW50QmFyIC5wYWdlRWxlbWVudF9kZWxldGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggLTQ3cHg7XG59XG5cbi5jb250YWluZXJCYXIgLmxheW91dENvbnRhaW5lcl9kZWxldGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggLTIwcHg7XG59XG5cbi5jb250YWluZXJCYXIgLmxheW91dENvbnRhaW5lcl9kZWxldGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggLTQ1cHg7XG59XG5cbi5lbGVtZW50QmFyIC5wYWdlRWxlbWVudF9lbmFibGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL3BlX3JlbG9hZC5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDk1JSAzcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDAgMjBweCAwIDhweCAhaW1wb3J0YW50O1xufVxuXG4uZWxlbWVudEJhciAucGFnZUVsZW1lbnRfZW5hYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTUlIC00N3B4O1xufVxuXG4uZHJhZyAuZWxlbWVudEJhcixcbi5sb2NrIC5kcmFnIC5lbGVtZW50QmFyLFxuLmRyYWdUd28gLmNvbnRhaW5lckJhciB7XG4gIGN1cnNvcjogbW92ZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAubG9jayAuZWxlbWVudEJhcixcbi5sb2NrIC5jb250YWluZXJCYXIsXG4uZHJhZyAubG9jayAuZWxlbWVudEJhcixcbi5kcmFnIC5wYWdlRWxlbWVudCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBhZ2VFbGVtZW50QWRtaW4gLmVsZW1lbnRCYXIsXG4ucGhvdG9HYWxsZXJ5VGh1bWIgLmVsZW1lbnRCYXIsXG4uZ2FsbGVyeVRodW1iQWRtaW4gLmVsZW1lbnRCYXIsXG4uY2xpZW50R3JhcGhpYyAuZWxlbWVudEJhciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNHB4O1xuICBiYWNrZ3JvdW5kOiAjRkNDRDIyIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZWxlbWVudEJhci5naWZcIikgcmVwZWF0LXg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmVsZW1lbnRCYXIgPiAqIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmVsZW1lbnRCYXIgPiAuaGFuZGxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNTU1O1xuICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmVsZW1lbnRCYXIgLmVsZW1lbnRUaXRsZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLmVsZW1lbnRCYXIgLmVsZW1lbnRUaXRsZSBzcGFuIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbi5lbGVtZW50QmFyLFxuLmVsZW1lbnRCYXIgYTpsaW5rLFxuLmVsZW1lbnRCYXIgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luOiAxcHggMDtcbn1cblxuLmVsZW1lbnRCYXIgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkRGNUY7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5lbGVtZW50QmFyTWluaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5lbGVtZW50QmFyTWluaSAuYnV0dG9ucyB7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAuZWxlbWVudEJhck1pbmkgLmJ1dHRvbnMgYSB7XG4gIG1pbi13aWR0aDogNnB4O1xufVxuXG4uZHJhZ1R3byAuaGFuZGxlLFxuLmRyYWcgLmhhbmRsZSxcbi5sb2NrIC5oYW5kbGUsXG4ud29ya2luZyAuaGFuZGxlIHtcbiAgaGVpZ2h0OiAyNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDRweCA2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmRyYWdUd28gLmhhbmRsZSwgLmRyYWcgLmhhbmRsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZHJhZ0ljb24uZ2lmXCIpO1xufVxuXG4ubG9jayAuaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9sb2NrZWRJY29uLmdpZlwiKTtcbn1cblxuLndvcmtpbmcgLmhhbmRsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZHJhZ0ljb25fbG9ja2VkLmdpZlwiKTtcbn1cblxuLmVsZW1lbnRCYXIgLmJ1dHRvbnMsXG4uY29udGFpbmVyQmFyIC5idXR0b25zIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIHdpZHRoOiBhdXRvO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5lbGVtZW50QmFyIC5idXR0b25zIGEsXG4uZWxlbWVudEJhciAuYnV0dG9ucyBzcGFuIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICNEREEzMDE7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBtaW4td2lkdGg6IDExcHg7XG59XG5cbi5lbGVtZW50QmFyIC5idXR0b25zIHNwYW4ge1xuICBjb2xvcjogI0VGRUZFRjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uZWxlbWVudEJhciBhLmdyYXlfb3V0IHtcbiAgb3BhY2l0eTogMC40O1xufVxuXG4uYnV0dG9uSW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiBGaXJlZm94LCBvdGhlciBHZWNrbyAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogT3BlcmEvSUUgOCsgKi9cbn1cblxuLmFjdGlvbkJ1dHRvbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiBGaXJlZm94LCBvdGhlciBHZWNrbyAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogT3BlcmEvSUUgOCsgKi9cbn1cblxuLmJ1dHRvbkltYWdlQWRkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9pbWFnZV9hZGQuc3ZnXCIpO1xufVxuXG4uYnV0dG9uSW1hZ2VSZW1vdmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL2ltYWdlX3JlbW92ZS5zdmdcIik7XG59XG5cbi5idXR0b25DaGFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvbGluay5zdmdcIik7XG59XG5cbi5idXR0b25QcmludCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvcHJpbnQuc3ZnXCIpO1xufVxuXG4uYnV0dG9uQWRkQXJ0aWNsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvYWRkX2FydGljbGUuc3ZnXCIpO1xufVxuXG4uYnV0dG9uVG9vbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvdG9vbC5zdmdcIik7XG59XG5cbi5idXR0b25Db3B5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9jb3B5LnN2Z1wiKTtcbn1cblxuLmJ1dHRvbkRlbGV0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvdHJhc2guc3ZnXCIpO1xufVxuXG4uYnV0dG9uRG93bmxvYWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL2Rvd25sb2FkLnN2Z1wiKTtcbn1cblxuLmJ1dHRvbkVkaXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL2VkaXQuc3ZnXCIpO1xufVxuXG4uYnV0dG9uUGxheWVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9wbGF5ZXIuc3ZnXCIpO1xufVxuXG4uYnV0dG9uVHJhZGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL3RyYWRlLnN2Z1wiKTtcbn1cblxuLmJ1dHRvbkV2ZW50IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9ldmVudC5zdmdcIik7XG59XG5cbi5idXR0b25GbGFnIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9mbGFnLnN2Z1wiKTtcbn1cblxuLmJ1dHRvbkljYWxGZWVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9pY29ucy9jYWxlbmRhci5zdmdcIik7XG59XG5cbi5idXR0b25Hcm91cCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvZ3JvdXAuc3ZnXCIpO1xufVxuXG4uYnV0dG9uTW92ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvd2Vic2l0ZV90cmVlLnN2Z1wiKTtcbn1cblxuLmJ1dHRvblNhdmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL3NhdmUuc3ZnXCIpO1xufVxuXG4uYnV0dG9uU2NvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL3Njb3JlLnN2Z1wiKTtcbn1cblxuLmJ1dHRvblVwbG9hZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaWNvbnMvdXBsb2FkLnN2Z1wiKTtcbn1cblxuLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmRlODcyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkNDRDIyO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4vKiBBRE1JTiAtIExheW91dCBDb250YWluZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29sbGFwc2VkIC5wYWdlRWxlbWVudEFkbWluIC5wYWdlRWxlbWVudCB7XG4gIGhlaWdodDogMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbGxhcHNlZCAucGFnZUVsZW1lbnRBZG1pbiAuZm9ybUVsZW1lbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyQWRtaW4ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ubGF5b3V0Q29udGFpbmVyQWRtaW4gLmxheW91dENvbnRhaW5lciB7XG4gIGJvcmRlcjogc29saWQgM3B4ICM5OTk7XG4gIHBhZGRpbmc6IDNweDtcbn1cblxuLmxheW91dENvbnRhaW5lckFkbWluIC5sYXlvdXRDb250YWluZXIgLmxheW91dENvbnRhaW5lciB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmNvbnRhaW5lckJhciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NDO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDExcHg7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9sYXlvdXRDb250YWluZXJCYXIuZ2lmXCIpO1xufVxuXG4uZHJhZ1R3byAuY29udGFpbmVyQmFyIC5oYW5kbGUsXG4ubG9jayAuY29udGFpbmVyQmFyIC5oYW5kbGUge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0cHggNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5jb250YWluZXJCYXIgLmJ1dHRvbnMgYSxcbi5jb250YWluZXJCYXIgLmJ1dHRvbnMgc3BhbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1pbi13aWR0aDogMTFweDtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjOTk5O1xuICBwYWRkaW5nOiAwIDhweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBoZWlnaHQ6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmNvbnRhaW5lckJhciAuYnV0dG9ucyBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5jb2x1bW5Cb3VuZHMge1xuICBtYXJnaW46IDAgM3B4O1xuICBib3JkZXI6IGRhc2hlZCAxcHggI0REQTMwMTtcbn1cblxuLmxheW91dENvbnRhaW5lckFkbWluIC5jb2x1bW5Cb3VuZHMge1xuICBib3JkZXI6IGRhc2hlZCAxcHggI0REQTMwMTtcbiAgbWFyZ2luOiAwIDAgMCAzcHg7XG59XG5cbi5sYXlvdXRDb250YWluZXJNaXJyb3JlZCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbWlycm9yQmFja2dyb3VuZC1sYXlvdXRDb250YWluZXIucG5nXCIpO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyTWlycm9yZWQgLmNvbHVtbkJvdW5kcyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyTWlycm9yZWQgLm1pcnJvckJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hZGRQYWdlRWxlbWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDVweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtaW5kZW50OiAtMTAwMDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9hZGRQRS5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG59XG5cbi5hZGRQYWdlRWxlbWVudDpob3ZlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWluZGVudDogMDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2FkZFBFX2hvdmVyLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbn1cblxuLmFkZFBhZ2VFbGVtZW50VG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNXB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHRleHQtaW5kZW50OiAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYWRkUEVfaG92ZXIucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4vKiBBRE1JTiAtIENvbGxlY3RvcnMgYW5kIEFnZ3JlZ2F0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2VFbGVtZW50QWRtaW4gLmNvbGxlY3RvckVsZW1lbnQgLml0ZW0ge1xuICB3aWR0aDogOTglO1xufVxuXG4vKiBBRE1JTiAtIFRhYmxlIEJ1aWxkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGFibGVCdWlsZGVyIHRkIHtcbiAgYm9yZGVyOiBzb2xpZCAzcHggI0NDQztcbiAgcGFkZGluZzogMDtcbn1cblxuLnRhYmxlQnVpbGRlciAuaW5wdXQge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxMXB4O1xuICB3aWR0aDogNzVweDtcbiAgcGFkZGluZzogMnB4O1xufVxuXG4udGFibGVCdWlsZGVyIC5idWlsZExpbmtzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDUxcHg7XG59XG5cbi50YWJsZUJ1aWxkZXIgLmJ1aWxkTGlua3MgYSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIHdpZHRoOiAyNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi50YWJsZUJ1aWxkZXIgLmJ1aWxkTGlua3MgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbi50YWJsZUJ1aWxkZXIgLmJ1aWxkTGlua3MgLnJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90YWJsZV9idWlsZGVyX3JpZ2h0LmdpZlwiKTtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjQ0NDO1xufVxuXG4udGFibGVCdWlsZGVyIC5idWlsZExpbmtzIC5kb3duIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90YWJsZV9idWlsZGVyX2Rvd24uZ2lmXCIpO1xufVxuXG4udGFibGVCdWlsZGVyIC5idWlsZExpbmtzIC5kZWxldGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3RhYmxlX2J1aWxkZXJfeC5naWZcIik7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI0NDQztcbn1cblxuLnRhYmxlQnVpbGRlciAuaGVhZGVyRW5hYmxlZCBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogbGktZWRpdCBvcHRpb25zICovXG4ubGlFZGl0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0NDQztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbn1cblxuLmxpRWRpdCAubGlFZGl0TGluayB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMCA1cHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI0REQTMwMTtcbn1cblxuLmxpRWRpdCAubGlFZGl0TGluazpsaW5rLCAubGlFZGl0IC5saUVkaXRMaW5rOnZpc2l0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5kcmFnVHdvLmxpRWRpdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZHJhZ0ljb24uZ2lmXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIGN1cnNvcjogbW92ZTtcbn1cblxuLmxvY2tlZC5saUVkaXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xvY2tlZEljb24uZ2lmXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmxpRWRpdC5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUZFRkVGO1xufVxuXG4vKiAgU2V0dGluZyBWYWx1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2V0dGluZ1ZhbHVlcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IC0xcHggMCAwO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWY3ZDA7XG59XG5cbi5zZXR0aW5nVmFsdWVzIC5zZXR0aW5nVmFsdWVzIGxpIHtcbiAgbGluZS1oZWlnaHQ6IDE2MCU7XG59XG5cbi5zZXR0aW5nVmFsdWVzIC5zZXR0aW5nVmFsdWVzIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zZXR0aW5nVmFsdWVzLmZvckZvcm0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogIEdhbWUgU3RhdHVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmdhbWVTdGF0dXNDb25zdHJ1Y3Rpb24ge1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMDtcbiAgYmFja2dyb3VuZDogI0ZERTg3MiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Ntc1RhYkZvb3Rlci5naWZcIikgcmVwZWF0LXggYm90dG9tIGxlZnQ7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRERBMzAxO1xufVxuXG4uY21zR2FtZVN0YXR1cyB7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY21zR2FtZVN0YXR1cyB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgYXV0byA0cHg7XG4gIHdpZHRoOiAyNDJweDtcbn1cblxuLmNtc0dhbWVTdGF0dXMgbGkge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmNtc0dhbWVTdGF0dXMgbGkgYSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZVN0YXR1c1RvZ2dsZS5wbmdcIikgMCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZVNjaGVkdWxlZCBhIHtcbiAgd2lkdGg6IDkxcHg7XG59XG5cbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lSW5Qcm9ncmVzcyBhIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTkxcHggMDtcbiAgd2lkdGg6IDk2cHg7XG59XG5cbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lRmluYWwgYSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xODdweCAwO1xuICB3aWR0aDogNTVweDtcbn1cblxuLmNtc0dhbWVTdGF0dXMgLmNtc0dhbWVTY2hlZHVsZWQgYS5zZWxlY3RlZCxcbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lU2NoZWR1bGVkIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMHB4O1xufVxuXG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZUluUHJvZ3Jlc3MgYS5zZWxlY3RlZCxcbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lSW5Qcm9ncmVzcyBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTkxcHggLTMwcHg7XG59XG5cbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lRmluYWwgYS5zZWxlY3RlZCxcbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lRmluYWwgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xODdweCAtMzBweDtcbn1cblxuLmNtc0dhbWVVbnNjaGVkdWxlZCB7XG4gIHBhZGRpbmc6IDAgMCAxNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNtc0dhbWVCdXR0b25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyogTWlzYy5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc3Bpbm5lci1pbmxpbmUge1xuICBtYXJnaW46IDAgMCAtNHB4O1xufVxuXG4uc3RhdHVzLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21pbmlMb2FkZXIuZ2lmXCIpIDVweCA1MCUgbm8tcmVwZWF0O1xuICBwYWRkaW5nOiA1cHggMCA1cHggMjVweDtcbn1cblxuLyogIEZsYXNoIGFuZCBFcnJvciBOb3RpY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2ZsYXNoTm90aWNlLCAjZmxhc2hFcnJvciwgI2Vycm9yRXhwbGFuYXRpb24sIC5mb3JtRXJyb3IsIC5yZWdpc3RyYXRpb25fbG9va3VwX25vdF9mb3VuZCB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZDNjtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbiNmbGFzaE5vdGljZSwgI2ZsYXNoRXJyb3IsICNlcnJvckV4cGxhbmF0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZERTA0NTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuI2Rpc3BsYXlCb2R5Q29udGVudCAubWFpbFN1YnNjcmliZUVsZW1lbnQgI2Vycm9yRXhwbGFuYXRpb24ge1xuICBtYXJnaW46IDA7XG59XG5cbiNsYkNvbnRlbnQgI2ZsYXNoTm90aWNlLCAjbGJDb250ZW50ICNmbGFzaEVycm9yLCAjbGJDb250ZW50ICNlcnJvckV4cGxhbmF0aW9uIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDNjAwMDU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbiNsYkNvbnRlbnQgI2ZsYXNoTm90aWNlIGgyLCAjbGJDb250ZW50ICNmbGFzaEVycm9yIGgyLCAjbGJDb250ZW50ICNlcnJvckV4cGxhbmF0aW9uIGgyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNlcnJvckV4cGxhbmF0aW9uLCAucmVnaXN0cmF0aW9uX2xvb2t1cF9ub3RfZm91bmQge1xuICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweCAxMHB4O1xufVxuXG4jZmxhc2hOb3RpY2Ugc3BhbiwgLmZsYXNoTm90aWNlIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL25vdGljZUljb24uZ2lmXCIpO1xufVxuXG4jZmxhc2hFcnJvciBzcGFuLCAjZmxhc2hOb3RpY2Ugc3BhbiwgLmZsYXNoTm90aWNlIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggNDVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMnB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG59XG5cbiNmbGFzaE5vdGljZSBzcGFuLCAuZmxhc2hOb3RpY2Ugc3BhbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbm90aWNlSWNvbi5naWZcIik7XG59XG5cbiNmbGFzaEVycm9yIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Vycm9ySWNvbi5naWZcIik7XG59XG5cbiNmbGFzaFJpY2hNZXNzYWdlIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggNDVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmVhdHVyZUNoZWNrbWFyay5wbmdcIik7XG59XG5cbiNlcnJvckV4cGxhbmF0aW9uIGgyLCAucmVnaXN0cmF0aW9uX2xvb2t1cF9ub3RfZm91bmQgc3BhbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZXJyb3JJY29uLmdpZlwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogNXB4IDAgNXB4IDQ1cHg7XG59XG5cbiNmbGFzaE5vdGljZSBoMiwgI2Vycm9yRXhwbGFuYXRpb24gaDIsICNmbGFzaEVycm9yIGgyLCAuZmxhc2hOb3RpY2UgaDIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBjb2xvcjogIzg2NzAwMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbiNmbGFzaEVycm9yLCAjZXJyb3JFeHBsYW5hdGlvbiB7XG4gIGNvbG9yOiAjQzYwMDA1O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI2ZsYXNoUmljaE1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjVlMmFmO1xufVxuXG4jbGJDb250ZW50ICNmbGFzaEVycm9yLCAjbGJDb250ZW50ICNmbGFzaE5vdGljZSwgI2xiQ29udGVudCAjZXJyb3JFeHBsYW5hdGlvbiB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4jZXJyb3JFeHBsYW5hdGlvbiBwIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4jZXJyb3JFeHBsYW5hdGlvbiB1bCB7XG4gIG1hcmdpbjogNXB4IDAgMCA3NXB4O1xufVxuXG4uZHJhZnROb3RpY2Uge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ubWluaUFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2ZmZCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2FsZXJ0LnBuZ1wiKSA1cHggNHB4IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjA0LCAwLjUpIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYWxlcnQucG5nXCIpIDVweCA0cHggbm8tcmVwZWF0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmY5O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAxNTMsIDAuNjUpO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgcGFkZGluZzogNXB4IDVweCA1cHggMjVweDtcbn1cblxuLyogRm9ybSBFcnJvciBNZXNzYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb3JtRXJyb3IuZm9ybUVsZW1lbnQgaDQge1xuICBjb2xvcjogI0M2MDAwNTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Vycm9ySWNvbk1pbmkuZ2lmXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nOiA0cHggMCAxNXB4IDI2cHg7XG59XG5cbi8qIE5vIERhdGEgaGFzIGJlZW4gcHJldmlvdXNseSBlbnRlcmVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5vRW50cnkge1xuICBjb2xvcjogIzY2NjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0RERERERDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAubm9FbnRyeSxcbi5jb25zdHJ1Y3Rpb25MaWdodGJveCAubm9FbnRyeSB7XG4gIGNvbG9yOiAjRERBMzAxO1xuICBiYWNrZ3JvdW5kOiAjRkZGM0IwO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogVXNlciBBY3Rpb25zIFBhbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udXNlckFjdGlvbnNQYW5lIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG59XG5cbi51c2VyQWN0aW9uc1BhbmUgbGkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkM2O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZsYXNoQmFjay5qcGdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZERTA0NTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW46IDAgMCAxNXB4O1xufVxuXG4udXNlckFjdGlvbnNQYW5lIGg1IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgbWFyZ2luLWJvdHRvbTogN3B4O1xufVxuXG4udXNlckFjdGlvbnNQYW5lIHAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4vKiBMb2FkaW5nIEFuaW1hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sb2FkaW5nQW5pbWF0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogU1BPUlQgTkdJTiBMSVZFIE5vdGljZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zbmxOb3RpY2Uge1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBzY3JvbGwgbGVmdCBib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNubE5vdGljZSAuc25sVGV4dCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc25sTG9nby1uZXcucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgNnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBwYWRkaW5nOiA0NXB4IDEwcHggMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc25sTm90aWNlIC5zbmxUZXh0Lm5vdExpdmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3NuTG9nby1uZXcucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgNnB4O1xufVxuXG4uc25sU2NvcmluZ09wdGlvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMnB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjRkZGO1xuICBiYWNrZ3JvdW5kOiAjRUVFO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDNweCAzcHggMTBweCAtNXB4ICMwMDA7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxODBweDtcbiAgcGFkZGluZzogOHB4O1xuICBtYXJnaW46IDAgLTFweCAwIDFweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkZGO1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjREREO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWluLWhlaWdodDogMTAuNWVtO1xufVxuXG4uc25sU2NvcmluZ09wdGlvbnMgbGk6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4IDAgMCAycHg7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uc25sU2NvcmluZ09wdGlvbnMgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAycHggMnB4IDA7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNEREQ7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5saXZlU2NvcmUge1xuICB3aWR0aDogMzIwcHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaSBwIHtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGNvbG9yOiAjQUFBO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5wLnNubFN0YXRXYXJuaW5nIHN0cm9uZyB7XG4gIGNvbG9yOiAjRkYwMDAwO1xufVxuXG5wLnNubFN0YXRXYXJuaW5nIGEge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnNubFNjb3JpbmdPcHRpb25zIC5idXR0b24tbGFyZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyAuYnV0dG9uLWxhcmdlOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyAuYnV0dG9uLWxhcmdlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIDEwMCUpO1xufVxuXG4uc25sU2NvcmluZ09wdGlvbnMgbGkubGl2ZVNjb3JlIC5idXR0b24tbGFyZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5kaXNhYmxlZCAuYnV0dG9uLWxhcmdlLFxuLnNubFNjb3JpbmdPcHRpb25zIGxpLmRpc2FibGVkIC5idXR0b24tbGFyZ2U6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQ0M7XG4gIGNvbG9yOiAjRUVFO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogU1BPUlQgTkdJTiBMSVZFIE5vdGljZSB3aXRoIFNjb3Jla2VlcGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmljZV9ob2NrZXkgLnNubE5vdGljZSAuc25sVGV4dCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDMwcHggMTBweDtcbn1cblxuLmljZV9ob2NrZXkgLnNubFNjb3JpbmdPcHRpb25zIHtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDg0OHB4O1xuICBoZWlnaHQ6IDI1OHB4O1xuICBib3JkZXI6IDRweCBzb2xpZCAjRkZGO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmljZV9ob2NrZXkgLnNubFNjb3JpbmdPcHRpb25zIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMnB4O1xuICB3aWR0aDogMjEwcHg7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaWNlX2hvY2tleSAuc25sU2NvcmluZ09wdGlvbnMgbGkubGl2ZVNjb3JlIHtcbiAgd2lkdGg6IDQyMHB4O1xufVxuXG4uaWNlX2hvY2tleSAuc25sU2NvcmluZ09wdGlvbnMgbGkuc2NvcmVrZWVwZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAwIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGl2ZS9zY29yZWtlZXBlci1ob2NrZXktYmcuanBnXCIpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNDIwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyAuc2NvcmVrZWVwZXIgYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogNDIwcHg7XG4gIGhlaWdodDogMjUwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG5cbi8qIE1haW50ZW5hbmNlIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbWFpbnRlbmFuY2VNZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogI2ZkZTA0NSB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2NvbnN0cnVjdGlvbkJHLmdpZlwiKSA1MCUgNTAlIHJlcGVhdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQocmdiYSgyNTIsIDIwNSwgMzQsIDApLCByZ2JhKDI1MiwgMjA1LCAzNCwgMC41KSksIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvY29uc3RydWN0aW9uQkcucG5nXCIpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCUgMCUsIDAlIDEwMCUsIGZyb20ocmdiYSgyNTIsIDIwNSwgMzQsIDApKSwgdG8ocmdiYSgyNTIsIDIwNSwgMzQsIDAuNSkpKSwgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9jb25zdHJ1Y3Rpb25CRy5wbmdcIik7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nOiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDM1JTtcbiAgcmlnaHQ6IDM1JTtcbiAgdG9wOiA1MHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB6LWluZGV4OiA5OTk7XG4gIC1vLWJveC1zaGFkb3c6IDAgMTBweCA1MHB4ICMwMDA7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxMHB4IDUwcHggIzAwMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggNTBweCAjMDAwO1xuICBib3gtc2hhZG93OiAwIDEwcHggNTBweCAjMDAwO1xuICAtby1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuI21haW50ZW5hbmNlTWVzc2FnZSBkaXYge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyIC1tb3otbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjIgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSksIHRvKHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgcGFkZGluZzogMTBweDtcbiAgLW8tYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAtby1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4jbWFpbnRlbmFuY2VNZXNzYWdlIGgyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIHBhZGRpbmc6IDAgMCAxMHB4O1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4ICNmZmY7XG59XG5cbiNtYWludGVuYW5jZU1lc3NhZ2UgcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICBwYWRkaW5nOiA1cHggMCAxNXB4O1xufVxuXG4vKiBUb29sIFNldHRpbmdzIFN1Y2Nlc3MvRXJyb3IgbWVzc2FnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb3JtLW5vdGljZSB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbiNzaXRlSGVhZGVyLFxuI3RzdFJlZ2lzdHJhdGlvbkhlYWRlcixcbiNwcm9maWxlUGFuZWxPbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNzaXRlSGVhZGVyICNhZG1pbk5hdixcbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IHtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbiNzaXRlSGVhZGVyICNhZG1pbk5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMzhweDtcbiAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4jdHN0UmVnaXN0cmF0aW9uSGVhZGVyICNhZG1pbk5hdiB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IHVsIGxpIGEge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDM0cHg7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDM0cHg7XG4gIG1hcmdpbjogMCA1cHggNXB4IDA7XG59XG5cbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IC5hZG1pbl9uYXZfdXNlcl9tb2RlIGEsXG4jdHN0UmVnaXN0cmF0aW9uSGVhZGVyICNhZG1pbk5hdiAuYWRtaW5fbmF2X2VkaXRfbW9kZSBhIHtcbiAgd2lkdGg6IDUxcHg7XG59XG5cbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IC5hZG1pbl9uYXZfdXNlcl9tb2RlIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3JlZ191c2VyX21vZGUuZ2lmXCIpO1xufVxuXG4jdHN0UmVnaXN0cmF0aW9uSGVhZGVyICNhZG1pbk5hdiAuYWRtaW5fbmF2X2VkaXRfbW9kZSBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9yZWdfZWRpdF9tb2RlLmdpZlwiKTtcbn1cblxuI3RzdFJlZ2lzdHJhdGlvbkhlYWRlciAjYWRtaW5OYXYgLmFkbWluX25hdl9wcmV2aWV3X21vZGUgYSB7XG4gIHdpZHRoOiA3NnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3JlZ19wcmV2aWV3X21vZGUuZ2lmXCIpO1xufVxuXG4jdHN0UmVnaXN0cmF0aW9uSGVhZGVyICNhZG1pbk5hdiAuc2VsZWN0ZWQgYSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLyogTGF5b3V0IENvbnRhaW5lcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sYXlvdXRDb250YWluZXIgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbjMsIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbjQge1xuICBmbG9hdDogbGVmdDtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxJTtcbn1cblxuI2xheW91dHNCaW4gLmxheW91dENvbnRhaW5lciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmxheW91dENvbnRhaW5lciAubGF5b3V0Q29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi8qIENvbnRhaW5lciBXaWR0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5vbmVDb2x1bW4gLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLm9uZUNvbHVtbiAuY29sdW1uMSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udHdvQ29sdW1uMjU3NSAuY29sdW1uMiwgLnR3b0NvbHVtbjc1MjUgLmNvbHVtbjEge1xuICB3aWR0aDogNzUlO1xufVxuXG4udHdvQ29sdW1uNjYzMyAuY29sdW1uMSwgLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjIge1xuICB3aWR0aDogNjYuNiU7XG59XG5cbi50d29Db2x1bW41MDUwIC5jb2x1bW4xLCAudHdvQ29sdW1uNTA1MCAuY29sdW1uMiwgLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4xLCAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjIsIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMywgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNTA1MCAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNTA1MCAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMyB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMSwgLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjIsIC50d29Db2x1bW4zMzY2IC5jb2x1bW4xLCAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIsIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMywgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMyB7XG4gIHdpZHRoOiAzMy4zJTtcbn1cblxuLnR3b0NvbHVtbjI1NzUgLmNvbHVtbjEsIC50d29Db2x1bW43NTI1IC5jb2x1bW4yLFxuLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4yLCAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjMsXG4udGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjEsIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSwgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4yLFxuLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMSwgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMixcbi5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjMsIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjQsXG4ubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjMsXG4ubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjMsXG4ubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbHVtbjIsXG4ubGF5b3V0Q29udGFpbmVyIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMixcbi5sYXlvdXRDb250YWluZXIgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4yIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLyogRmx1aWQgTGF5b3V0IEV4Y2VwdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5vbmVDb2x1bW4gLmNvbmRlbnNlZFZpZXcsXG4udHdvQ29sdW1uNjYzMyAuY29sdW1uMSAuY29uZGVuc2VkVmlldyxcbi50d29Db2x1bW4zMzY2IC5jb2x1bW4yIC5jb25kZW5zZWRWaWV3IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm9uZUNvbHVtbiAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50d29Db2x1bW41MDUwIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjUwMjUyNSAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMjU1MDI1IC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbmRlbnNlZFZpZXcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm9uZUNvbHVtbiAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50d29Db2x1bW41MDUwIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjUwMjUyNSAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMjU1MDI1IC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbmRlbnNlZFZpZXcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm9uZUNvbHVtbiAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiB0ciAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgdHIgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50d29Db2x1bW41MDUwIHRyIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4zMzMzMzMgdHIgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjUwMjUyNSB0ciAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMjU1MDI1IHRyIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4yNTI1NTAgdHIgLmNvbmRlbnNlZFZpZXcge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4vKi50d29Db2x1bW41MDUwIC5sYXlvdXRDb250YWluZXIsIC50d29Db2x1bW42NjMzIC5sYXlvdXRDb250YWluZXIsIC50d29Db2x1bW4zMzY2IC5sYXlvdXRDb250YWluZXIsIC50aHJlZUNvbHVtbjUwMjUyNSAubGF5b3V0Q29udGFpbmVyLCAudGhyZWVDb2x1bW4yNTUwMjUgLmxheW91dENvbnRhaW5lciwgLnRocmVlQ29sdW1uMjUyNTUwIC5sYXlvdXRDb250YWluZXJ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4qL1xuLmxheW91dENvbnRhaW5lciAuY29sdW1uMSAubmV3c0l0ZW1Db2x1bW4sIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbjIgLm5ld3NJdGVtQ29sdW1uLCAubGF5b3V0Q29udGFpbmVyIC5jb2x1bW4zIC5uZXdzSXRlbUNvbHVtbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBBbnRvbnltc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBlMjUgLm5vSW4yNSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wZTMzIC5ub0luMzMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGU1MCAubm9JbjUwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBlNjYgLm5vSW42NiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wZTc1IC5ub0luNzUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGUxMDAgLm5vSW4xMDAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTdWIgTmF2IFVuaXZlcnNhbCBTdHlsZSAqL1xuLnN1Yk5hdiBsaSxcbi5yZWxhdGVkU2VjdGlvbnMgbGksXG4uc2l0ZVVzZXJNZW51IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN1Yk5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN1Yk5hdixcbi5yZWxhdGVkU2VjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uc3ViTmF2IGg0LFxuLnJlbGF0ZWRTZWN0aW9ucyBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi51c2VyX21vZGUgLnN1Yk5hdiBsaSxcbi51c2VyX21vZGUgLnJlbGF0ZWRTZWN0aW9ucyBsaSB7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMjAwbXMsIGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG5cbi51c2VyX21vZGUgLnN1Yk5hdiBsaTpob3Zlcixcbi51c2VyX21vZGUgLnJlbGF0ZWRTZWN0aW9ucyBsaTpob3Zlcixcbi51c2VyX21vZGUgI3BhcmVudF9ub2RlcyA+IGxpOmxhc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi51c2VyX21vZGUgLnN1Yk5hdiBsaSxcbi51c2VyX21vZGUgLnJlbGF0ZWRTZWN0aW9ucyBsaSB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLmVkaXRfbW9kZSB7XG4gIC8qIERyYWcgb3IgTG9jayAqL1xuICAvKiBTdWJuYXYgQ01TICovXG59XG5cbi5lZGl0X21vZGUgLnN1Yk5hdiBsaTpob3Zlcixcbi5lZGl0X21vZGUgI3BhcmVudF9ub2RlcyA+IGxpOmxhc3QtY2hpbGQge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgcGFkZGluZzogMCAxMHB4O1xufVxuXG4uZWRpdF9tb2RlIC5zdWJOYXYgLmxvY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xvY2tlZEljb24uZ2lmXCIpO1xufVxuXG4uZWRpdF9tb2RlIC5zdWJOYXYgLmRyYWcsXG4uZWRpdF9tb2RlIC5zdWJOYXYgLndvcmtpbmcsXG4uZWRpdF9tb2RlIC5zdWJOYXYgLmxvY2ssXG4uZWRpdF9tb2RlICNzZXF1ZW5jZU1lbnUgLmRyYWcsXG4uZWRpdF9tb2RlICNzZXF1ZW5jZU1lbnUgLndvcmtpbmcge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2NkMjI7XG4gIC8qIGNvbnN0cnVjdGlvbiB5ZWxsb3cgKi9cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uZWRpdF9tb2RlIC5jbXNOYXZCdXR0b24gYSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYnVpbGRTdHJpcGUuZ2lmXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmVkaXRfbW9kZSAuc3ViTmF2IC5kcmFnLFxuLmVkaXRfbW9kZSAjc2VxdWVuY2VNZW51IC5kcmFnIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RyYWdJY29uLmdpZlwiKTtcbn1cblxuLmVkaXRfbW9kZSAuc3ViTmF2IC53b3JraW5nLFxuLmVkaXRfbW9kZSAjc2VxdWVuY2VNZW51IC53b3JraW5nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kcmFnSWNvbl9sb2NrZWQuZ2lmXCIpO1xufVxuXG4uZWRpdF9tb2RlIC5zdWJOYXYgLmNtc05hdkJ1dHRvbixcbi5lZGl0X21vZGUgLnN1Yk5hdiAuY21zTmF2QnV0dG9uOmhvdmVyIHtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1pbmRlbnQ6IDEwcHg7XG59XG5cbi8qIFNpdGUgVXNlciBNZW51ICovXG4uc2l0ZVVzZXJNZW51IHtcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4uc2l0ZVVzZXJNZW51IGg0IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbmdpbl9zdGFtcF9sb2dvLnBuZ1wiKSBuby1yZXBlYXQgM3B4IDVweDtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uc2l0ZVVzZXJNZW51IGEsXG4uc2l0ZVVzZXJNZW51IGE6aG92ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNXB4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI3N1cnZleV9zdGVwcyBhIHtcbiAgY29sb3I6ICMwMDU0QTY7XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLmRyYWdUd28gLmhhbmRsZSxcbiNzdXJ2ZXlfc3RlcHMgLmRyYWcgLmhhbmRsZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuI3N1cnZleV9zdGVwcyAuc2l0ZUNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDk5MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4jc3VydmV5X3N0ZXBzIC5zaXRlQ29udGFpbmVyICNhY2NvdW50TmF2IHtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLnNpdGVDb250YWluZXIgI2FkbWluTmF2IHtcbiAgdG9wOiA5M3B4O1xufVxuXG4jc3VydmV5X3N0ZXBzIC5zaXRlQ29udGFpbmVyIC5hZG1pblRvZ2dsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jc3VydmV5X3N0ZXBzIC5zaXRlQ29udGFpbmVyICNzdXJ2ZXlOYW1lSGVhZGVyIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwREIxNEM7XG4gIGZvbnQ6IGJvbGQgMjJweC80MHB4IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDIxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjc3VydmV5X3N0ZXBzIC5zaXRlQ29udGFpbmVyICNzdXJ2ZXlOYW1lSGVhZGVyIGgxIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgI3N1cnZleV9zdGVwcyAuc2l0ZUNvbnRhaW5lciAjc3VydmV5TmFtZUhlYWRlciBoMSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLnNpdGVDb250YWluZXIgI3BhZ2VDb250ZW50Q29udGFpbmVyICNwYW5lbE9uZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDMwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cblxuI3N1cnZleV9zdGVwcyAuc2l0ZUNvbnRhaW5lciAjcGFnZUNvbnRlbnRDb250YWluZXIgI3BhbmVsVHdvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNzAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi5taW5pUGVyc29uYSArICNzdXJ2ZXlfc3RlcHMgLnRleHRCbG9ja0VsZW1lbnQge1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLnRleHRCbG9ja0VsZW1lbnQgLnBhZ2VFbGVtZW50IC5yZXN1bHRzVGFibGUge1xuICBtYXJnaW46IC41ZW0gMCAxLjVlbSAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI3N1cnZleV9zdGVwcyAudGV4dEJsb2NrRWxlbWVudCAucGFnZUVsZW1lbnQgLnJlc3VsdHNUYWJsZSB0ciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0NDQztcbn1cblxuI3N1cnZleV9zdGVwcyAudGV4dEJsb2NrRWxlbWVudCAucGFnZUVsZW1lbnQgLnJlc3VsdHNUYWJsZSB0aCwgI3N1cnZleV9zdGVwcyAudGV4dEJsb2NrRWxlbWVudCAucGFnZUVsZW1lbnQgLnJlc3VsdHNUYWJsZSB0ZCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMzMzO1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IC40NWVtIC43NWVtO1xufVxuXG4jc3VydmV5X3N0ZXBzIC50ZXh0QmxvY2tFbGVtZW50IC5wYWdlRWxlbWVudCAucmVzdWx0c1RhYmxlIHRoIHtcbiAgd2lkdGg6IDM1JTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0NDQztcbn1cblxuI3N1cnZleV9zdGVwcyAjc2l0ZUZvb3RlciB7XG4gIG1heC13aWR0aDogOTkwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwREIxNEM7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3N1cnZleV9zdGVwcyAjc2l0ZUZvb3RlciBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBvcGFjaXR5OiAwLjk7XG4gIGZvbnQ6IDEwMCAwLjllbS8xLjVlbSBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbn1cblxuI3N1cnZleV9zdGVwcyAjc2l0ZUZvb3RlciBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuI3N1cnZleV9zdGVwcy5lZGl0X21vZGUgLnJhcGlkVGFic0NvbnN0cnVjdGlvbiB7XG4gIGJvcmRlci10b3A6IDBweDtcbn1cblxuI3N1cnZleV9zdGVwcy5lZGl0X21vZGUgLmNvbnRlbnRUYWJzLnJhcGlkVGFic0NvbnN0cnVjdGlvbiBhLFxuI3N1cnZleV9zdGVwcy5lZGl0X21vZGUgLmNvbnRlbnRUYWJzLnJhcGlkVGFic0NvbnN0cnVjdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxYWYxMDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbiNzdXJ2ZXlfc3RlcHMuZWRpdF9tb2RlIC5jb250ZW50VGFicy5yYXBpZFRhYnNDb25zdHJ1Y3Rpb24gLnNlbGVjdGVkIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlNzcxO1xuICBjb2xvcjogIzAwMDtcbn1cblxuI3N1cnZleV9zdGVwcy5lZGl0X21vZGUgLmNvbnRlbnRUYWJzLnJhcGlkVGFic0NvbnN0cnVjdGlvbiAuc2VsZWN0ZWQgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0NFMjk7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4jc3VydmV5X3N0ZXBzLmVkaXRfbW9kZSAuY29udGVudFRhYnMucmFwaWRUYWJzQ29uc3RydWN0aW9uIGxpIHNwYW4gYSB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG4vKiBOZXdzIEFydGljbGUgVmlldyAqL1xuLm5ld3NJdGVtRWxlbWVudCAudGl0bGVUZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLm5ld3NJdGVtRWxlbWVudCAuYXV0aG9yRGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luOiAxNXB4IDA7XG59XG5cbi5uZXdzSXRlbUVsZW1lbnQgLnRlYXNlclRleHQge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLm5ld3NJdGVtRWxlbWVudCAuaW1hZ2VPcmlnaW5hbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAycHggc29saWQgI2RkZDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm5ld3NJdGVtRWxlbWVudCAubmV3c0FydGljbGVUaHVtYm5haWwge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAuMzVlbSAxZW0gMCAwO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xuICBoZWlnaHQ6IDRlbTtcbn1cblxuLm5ld3NQYWdlIC55aWVsZFBhZ2VDb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubmV3c1BhZ2UgLnlpZWxkUGFnZUNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm5ld3NUYWdzIHtcbiAgZm9udC1zaXplOiAuNzVyZW07XG59XG5cbi8qIENvbW1lbnRzICovXG4ud29udEZpdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgPiBoMyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xufVxuXG4udGhyZWFkICsgLnRocmVhZCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tZW50U3RyZWFtQ29udGFpbmVyLmFzY2VuZGluZyA+IC50aHJlYWQge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uY29tbWVudFN0cmVhbUNvbnRhaW5lci5kZXNjZW5kaW5nID4gLnRocmVhZCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tZW50IHtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4uY29tbWVudCBpbWcge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiA2MHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbW1lbnQtbWV0YSAuY29tbWVudCBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5zdWJjb21tZW50cyB7XG4gIHBhZGRpbmctbGVmdDogNzVweDtcbn1cblxuLnN1YmNvbW1lbnQge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNkZGQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uY29tbWVudC1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiA3NXB4O1xufVxuXG4uY29tbWVudC1jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmNvbW1lbnQtY29udGVudCBoMyBzcGFuIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uY29tbWVudC1jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb21tZW50LWNvbnRlbnQgLnRpbWVhZ28ge1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogLjVlbSAwIDEuNWVtIDA7XG59XG5cbi5jb21tZW50LWNvbnRlbnQgLmNvbW1lbnQtbGlua3Mge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29tbWVudC1jb250ZW50IC5jb21tZW50LWxpbmtzIGEge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb21tZW50QWdncmVnYXRvciA+IGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA5cHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDJweCAwICNmZmYsIDdweCAwICMwREIxNEM7XG59XG5cbi5jb21tZW50QWdncmVnYXRvciAuY29tbWVudCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tZW50QWdncmVnYXRvciAuY29tbWVudDpsYXN0LW9mLXR5cGUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jb21tZW50QWdncmVnYXRvciAuY29tbWVudCAuY29tbWVudC1tZXRhIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY29tbWVudEFnZ3JlZ2F0b3IgLmNvbW1lbnQgLmNvbW1lbnQtbWV0YSBpbWcge1xuICBtYXgtaGVpZ2h0OiAyLjVlbTtcbiAgbWF4LXdpZHRoOiAyLjVlbTtcbiAgbWFyZ2luOiA1cHggOHB4IDAgMDtcbn1cblxuLmNvbW1lbnRBZ2dyZWdhdG9yIC5jb21tZW50IC5jb21tZW50LW1ldGEgPiBiIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG59XG5cbi5jb21tZW50QWdncmVnYXRvciAuY29tbWVudCAuY29tbWVudC1tZXRhIC50aW1lYWdvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogLjI1ZW0gMCAwIDA7XG59XG5cbi5jb21tZW50IC5jb21tZW50LW1ldGEgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuXG4uY29tbWVudFN0cmVhbUNvbnRhaW5lci5hc2NlbmRpbmcgLmNvbW1lbnQtZm9ybTpudGgtY2hpbGQoMikge1xuICBtYXJnaW4tdG9wOiAxLjVlbTtcbn1cblxuLmNvbW1lbnQtZm9ybSBmaWVsZHNldCB7XG4gIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uY29tbWVudC1mb3JtIGZpZWxkc2V0IHNwYW4ucHJvY2Vzc2luZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50LWZvcm0gZmllbGRzZXQgKyBmaWVsZHNldCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5jb21tZW50LWZvcm0gbGFiZWwge1xuICBmb250LXNpemU6IC44NzVlbTtcbiAgY29sb3I6ICMzMzM7XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbW1lbnQtZm9ybSBpbnB1dC50ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uY29tbWVudC1mb3JtIGxhYmVsICsgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudC1mb3JtIGlucHV0ICsgbGFiZWwsXG4uY29tbWVudC1mb3JtIHRleHRhcmVhICsgbGFiZWwge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uY29tbWVudC1mb3JtIHRleHRhcmVhIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDVlbTtcbiAgcGFkZGluZzogNXB4O1xuICB3aWR0aDogNDgwcHg7XG59XG5cbi5jb21tZW50LWZvcm0gaW5wdXQjcmVjYXB0Y2hhX3Jlc3BvbnNlX2ZpZWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmNvbW1lbnQtZm9ybSAuaGlkZU9uUHJvY2Vzc2luZyB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNvbW1lbnRfZWxlbWVudF9yZWNhcHRjaGEgI3JlY2FwdGNoYV9hcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1hcmdpbjogNXB4IDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcbn1cblxuLmNvbW1lbnRfZWxlbWVudF9yZWNhcHRjaGEgLnJlY2FwdGNoYXRhYmxlIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tZW50X2VsZW1lbnRfcmVjYXB0Y2hhIC5yZWNhcHRjaGF0YWJsZSB0ZC5yZWNhcHRjaGFfaW1hZ2VfY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudF9lbGVtZW50X3JlY2FwdGNoYSAucmVjYXB0Y2hhdGFibGUgZGl2I3JlY2FwdGNoYV9pbWFnZSB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG4uY29tbWVudF9lbGVtZW50X3JlY2FwdGNoYSAucmVjYXB0Y2hhdGFibGUgZGl2I3JlY2FwdGNoYV9pbWFnZSBpbWcjcmVjYXB0Y2hhX2NoYWxsZW5nZV9pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG59XG5cbi5jb21tZW50X2VsZW1lbnRfcmVjYXB0Y2hhIC5yZWNhcHRjaGF0YWJsZSBpbWcjcmVjYXB0Y2hhX2xvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudF9lbGVtZW50X3JlY2FwdGNoYSAucmVjYXB0Y2hhdGFibGUgc3BhbiNyZWNhcHRjaGFfcHJpdmFjeSB7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbiNsaWdodGJveCAuY29tbWVudC1jb250ZW50ID4gaDMsICNsaWdodGJveCAuY29tbWVudC1jb250ZW50IHAge1xuICBjb2xvcjogIzY2NiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gIC5zdWJjb21tZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDgzMHB4KSB7XG4gIC5jb2wtbWQtNiAuc3ViY29tbWVudHMge1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC00IC5zdWJjb21tZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMgLnN1YmNvbW1lbnRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gIC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgLmNvbW1lbnQgaW1nIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG4gIC5jb21tZW50LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTMwcHgpIHtcbiAgLmNvbC1tZC00IC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgLmNvbW1lbnQgaW1nIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG4gIC5jb2wtbWQtNCAuY29tbWVudC1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWcge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIH1cbiAgLmNvbC1tZC0zIC5jb21tZW50LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWcsIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgLmNvbW1lbnQgaW1nLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuY29tbWVudFRocmVhZEVsZW1lbnQtY29udGFpbmVyIC5jb21tZW50IGltZyxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWcge1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuY29tbWVudC1jb250ZW50LCAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAuY29tbWVudC1jb250ZW50LFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuY29tbWVudC1jb250ZW50LFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAuY29tbWVudC1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLnN1YmNvbW1lbnRzLCAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAuc3ViY29tbWVudHMsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5zdWJjb21tZW50cyxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLnN1YmNvbW1lbnRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWcsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgLmNvbW1lbnQgaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC5jb21tZW50LWNvbnRlbnQsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5jb21tZW50LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAuc3ViY29tbWVudHMsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5zdWJjb21tZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gIH1cbn1cblxuLyogQnV0dG9uIFN0eWxlcyAqL1xuLmJ1dHRvbi1zbWFsbCwgLnBpbGwtc21hbGwtbGVmdCwgLnBpbGwtc21hbGwtbWlkZGxlLCAucGlsbC1zbWFsbC1yaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJvcmRlcjogMCBzb2xpZCAjMDAwO1xuICBjb2xvcjogI2U1ZTVlNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IDlweC8yMHB4IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgcGFkZGluZzogMCA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idXR0b24tbWVkaXVtLCAucGlsbC1tZWRpdW0tbGVmdCwgLnBpbGwtbWVkaXVtLW1pZGRsZSwgLnBpbGwtbWVkaXVtLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgYm9yZGVyOiAwIHNvbGlkICMwMDA7XG4gIGNvbG9yOiAjZTVlNWU1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogMTJweC8zMHB4IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnV0dG9uLWxhcmdlLCAucGlsbC1sYXJnZS1sZWZ0LCAucGlsbC1sYXJnZS1taWRkbGUsIC5waWxsLWxhcmdlLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgYm9yZGVyOiAwIHNvbGlkICMwMDA7XG4gIGNvbG9yOiAjZTVlNWU1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogMTZweC80MHB4IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnV0dG9uLXNtYWxsOmhvdmVyLCAucGlsbC1zbWFsbC1sZWZ0OmhvdmVyLCAucGlsbC1zbWFsbC1taWRkbGU6aG92ZXIsIC5waWxsLXNtYWxsLXJpZ2h0OmhvdmVyLCAuYnV0dG9uLW1lZGl1bTpob3ZlciwgLnBpbGwtbWVkaXVtLWxlZnQ6aG92ZXIsIC5waWxsLW1lZGl1bS1taWRkbGU6aG92ZXIsIC5waWxsLW1lZGl1bS1yaWdodDpob3ZlciwgLmJ1dHRvbi1sYXJnZTpob3ZlciwgLnBpbGwtbGFyZ2UtbGVmdDpob3ZlciwgLnBpbGwtbGFyZ2UtbWlkZGxlOmhvdmVyLCAucGlsbC1sYXJnZS1yaWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJ1dHRvbi1zbWFsbDphY3RpdmUsIC5waWxsLXNtYWxsLWxlZnQ6YWN0aXZlLCAucGlsbC1zbWFsbC1taWRkbGU6YWN0aXZlLCAucGlsbC1zbWFsbC1yaWdodDphY3RpdmUsIC5idXR0b24tbWVkaXVtOmFjdGl2ZSwgLnBpbGwtbWVkaXVtLWxlZnQ6YWN0aXZlLCAucGlsbC1tZWRpdW0tbWlkZGxlOmFjdGl2ZSwgLnBpbGwtbWVkaXVtLXJpZ2h0OmFjdGl2ZSwgLmJ1dHRvbi1sYXJnZTphY3RpdmUsIC5waWxsLWxhcmdlLWxlZnQ6YWN0aXZlLCAucGlsbC1sYXJnZS1taWRkbGU6YWN0aXZlLCAucGlsbC1sYXJnZS1yaWdodDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idXR0b24tc21hbGw6Zm9jdXMsIC5waWxsLXNtYWxsLWxlZnQ6Zm9jdXMsIC5waWxsLXNtYWxsLW1pZGRsZTpmb2N1cywgLnBpbGwtc21hbGwtcmlnaHQ6Zm9jdXMsIC5idXR0b24tbWVkaXVtOmZvY3VzLCAucGlsbC1tZWRpdW0tbGVmdDpmb2N1cywgLnBpbGwtbWVkaXVtLW1pZGRsZTpmb2N1cywgLnBpbGwtbWVkaXVtLXJpZ2h0OmZvY3VzLCAuYnV0dG9uLWxhcmdlOmZvY3VzLCAucGlsbC1sYXJnZS1sZWZ0OmZvY3VzLCAucGlsbC1sYXJnZS1taWRkbGU6Zm9jdXMsIC5waWxsLWxhcmdlLXJpZ2h0OmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5waWxsLXNtYWxsLWxlZnQsIC5waWxsLW1lZGl1bS1sZWZ0LCAucGlsbC1sYXJnZS1sZWZ0IHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ucGlsbC1zbWFsbC1yaWdodCwgLnBpbGwtbWVkaXVtLXJpZ2h0LCAucGlsbC1sYXJnZS1yaWdodCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5idXR0b24tc2hlbGwtc21hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJ1dHRvbi1zaGVsbC1tZWRpdW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJ1dHRvbi1zaGVsbC1sYXJnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5hLmJ1dHRvbi1zbWFsbCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucGlsbC1zbWFsbC1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtc21hbGwtbWlkZGxlIC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtc21hbGwtcmlnaHQgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCwgLmJ1dHRvbi1zbWFsbCAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxNnB4O1xuICBsZWZ0OiAycHg7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgd2lkdGg6IDE2cHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5waWxsLXNtYWxsLWxlZnQgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtc21hbGwtbWlkZGxlIC5idXR0b24taW1hZ2UtcmlnaHQsIC5waWxsLXNtYWxsLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtc21hbGwgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLmJ1dHRvbi1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAycHg7XG4gIHRvcDogMnB4O1xuICB3aWR0aDogMTZweDtcbiAgei1pbmRleDogMTtcbn1cblxuLnBpbGwtc21hbGwtbGVmdCAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLXNtYWxsLXJpZ2h0IC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtc21hbGwtbWlkZGxlIC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLmJ1dHRvbi1zbWFsbCAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG59XG5cbi5idXR0b24tc2hlbGwtc21hbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1zbWFsbC1sZWZ0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LnBpbGwtc21hbGwtbWlkZGxlLCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LnBpbGwtc21hbGwtcmlnaHQsIC5idXR0b24tc2hlbGwtc21hbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQuYnV0dG9uLXNtYWxsIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucGlsbC1zbWFsbC1sZWZ0IC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLXNtYWxsLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLXNtYWxsLW1pZGRsZSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50LCAuYnV0dG9uLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xufVxuXG4uYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5waWxsLXNtYWxsLWxlZnQsIC5idXR0b24tc2hlbGwtc21hbGwgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtc21hbGwtbWlkZGxlLCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5waWxsLXNtYWxsLXJpZ2h0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5idXR0b24tc21hbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG5hLmJ1dHRvbi1tZWRpdW0gaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnBpbGwtbWVkaXVtLWxlZnQgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAucGlsbC1tZWRpdW0tbWlkZGxlIC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtbWVkaXVtLXJpZ2h0IC5idXR0b24taW1hZ2UtbGVmdCwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0LCAuYnV0dG9uLW1lZGl1bSAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNHB4O1xuICBsZWZ0OiAzcHg7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDNweDtcbiAgd2lkdGg6IDI0cHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5waWxsLW1lZGl1bS1sZWZ0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5waWxsLW1lZGl1bS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtbWVkaXVtLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAzcHg7XG4gIHdpZHRoOiAyNHB4O1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGlsbC1tZWRpdW0tbGVmdCAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLW1lZGl1bS1yaWdodCAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLW1lZGl1bS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAuYnV0dG9uLW1lZGl1bSAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG59XG5cbi5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LnBpbGwtbWVkaXVtLWxlZnQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LnBpbGwtbWVkaXVtLW1pZGRsZSwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1tZWRpdW0tcmlnaHQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LmJ1dHRvbi1tZWRpdW0ge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi5waWxsLW1lZGl1bS1sZWZ0IC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLW1lZGl1bS1yaWdodCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1tZWRpdW0tbWlkZGxlIC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5idXR0b24tbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxOHB4O1xufVxuXG4uYnV0dG9uLXNoZWxsLW1lZGl1bSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1tZWRpdW0tbGVmdCwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbWVkaXVtLW1pZGRsZSwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbWVkaXVtLXJpZ2h0LCAuYnV0dG9uLXNoZWxsLW1lZGl1bSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQuYnV0dG9uLW1lZGl1bSB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG5cbmEuYnV0dG9uLWxhcmdlIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5waWxsLWxhcmdlLWxlZnQgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAucGlsbC1sYXJnZS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAucGlsbC1sYXJnZS1yaWdodCAuYnV0dG9uLWltYWdlLWxlZnQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAuYnV0dG9uLWxhcmdlIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDMycHg7XG4gIGxlZnQ6IDRweDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNHB4O1xuICB3aWR0aDogMzJweDtcbiAgei1pbmRleDogMTtcbn1cblxuLnBpbGwtbGFyZ2UtbGVmdCAuYnV0dG9uLWltYWdlLXJpZ2h0LCAucGlsbC1sYXJnZS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtbGFyZ2UtcmlnaHQgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLXJpZ2h0LCAuYnV0dG9uLWxhcmdlIC5idXR0b24taW1hZ2UtcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDRweDtcbiAgdG9wOiA0cHg7XG4gIHdpZHRoOiAzMnB4O1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGlsbC1sYXJnZS1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtcmlnaHQgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1sYXJnZS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAuYnV0dG9uLWxhcmdlIC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMjZweDtcbn1cblxuLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5waWxsLWxhcmdlLWxlZnQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1sYXJnZS1taWRkbGUsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1sYXJnZS1yaWdodCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5idXR0b24tbGFyZ2Uge1xuICBwYWRkaW5nLWxlZnQ6IDQycHg7XG59XG5cbi5waWxsLWxhcmdlLWxlZnQgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtcmlnaHQgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtbWlkZGxlIC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5idXR0b24tbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDI2cHg7XG59XG5cbi5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbGFyZ2UtbGVmdCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1sYXJnZS1taWRkbGUsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbGFyZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LmJ1dHRvbi1sYXJnZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDQycHg7XG59XG5cbi5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudDplbXB0eSB7XG4gIHBhZGRpbmctbGVmdDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQ6ZW1wdHkge1xuICBwYWRkaW5nLXJpZ2h0OiAxcHggIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLmJ1dHRvbi1zbWFsbDo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLXNtYWxsOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLXNtYWxsLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0LnBpbGwtc21hbGwtbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLXNtYWxsLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1zbWFsbC1sZWZ0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1zbWFsbC1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLXNtYWxsLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24uYnV0dG9uLW1lZGl1bTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLW1lZGl1bTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQucGlsbC1tZWRpdW0tbGVmdDo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQucGlsbC1tZWRpdW0tbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLW1lZGl1bS1yaWdodDo6LW1vei1mb2N1cy1pbm5lciwgYnV0dG9uLnBpbGwtbWVkaXVtLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLW1lZGl1bS1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLW1lZGl1bS1yaWdodDo6LW1vei1mb2N1cy1pbm5lciwgYnV0dG9uLmJ1dHRvbi1sYXJnZTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLWxhcmdlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLWxhcmdlLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0LnBpbGwtbGFyZ2UtbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLWxhcmdlLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1sYXJnZS1sZWZ0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1sYXJnZS1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLWxhcmdlLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5idXR0b24tY2FuY2VsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMDAwMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICNlNWU1ZTU7XG59XG5cbi5idXR0b24tY2FuY2VsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1MDAwMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idXR0b24tY2FuY2VsOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uLWVkaXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjZDIyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBjb2xvcjogIzMzMztcbn1cblxuLmJ1dHRvbi1lZGl0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZTA0NTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICMxYTFhMWE7XG59XG5cbi5idXR0b24tZWRpdDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjZDIyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ1dHRvbi1jb25zdHJ1Y3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZmNjZDIyIHVybChcIi9hcHBfaW1hZ2VzL2Ntc1RhYkZvb3Rlci5naWZcIikgcmVwZWF0LXggc2Nyb2xsIDAgNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRhMzAxO1xuICBjb2xvcjogIzgwNzU0MDtcbn1cblxuLmJ1dHRvbi1jb25zdHJ1Y3Rpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmNjZDIyIHVybChcIi9hcHBfaW1hZ2VzL2Ntc1RhYkZvb3Rlci5naWZcIikgcmVwZWF0LXggc2Nyb2xsIDAgNTAlO1xuICBjb2xvcjogIzU5NDEwMDtcbn1cblxuLmJ1dHRvbi1jb25zdHJ1Y3Rpb246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2QyMjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICM1OTQxMDA7XG59XG5cbi5idXR0b24tc2l0ZUNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiNDc4ZDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICNlNWU1ZTU7XG59XG5cbi5idXR0b24tc2l0ZUNvbG9yOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiNDc4ZDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idXR0b24tc2l0ZUNvbG9yOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjQ3OGQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uLXN1YnRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBjb2xvcjogIzc3Nztcbn1cblxuLmJ1dHRvbi1zdWJ0bGU6aG92ZXIsIC5idXR0b24tc3VidGxlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBjb2xvcjogIzg4ODtcbn1cblxuLmJ1dHRvbi1zdWJ0bGU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbn1cblxuLmJ1dHRvbi1jb21tZW50Q291bnQgLmJ1dHRvbi1pbWFnZS1yaWdodCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi9hcHBfaW1hZ2VzL3BhZ2VFbGVtZW50cy9uZXdzQWdncmVnYXRvci9pY29uLnBuZz8xNDMyMDQzODU2XCIpIG5vLXJlcGVhdCBzY3JvbGwgMCA1MCU7XG4gIHRvcDogMXB4O1xufVxuXG4uYnV0dG9uLW9wZW4ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuICBjb2xvcjogIzFhMWExYTtcbn1cblxuLmJ1dHRvbi1vcGVuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgY29sb3I6ICMyNjI2MjY7XG59XG5cbi5idXR0b24tb3BlbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmJ1dHRvbi1vcGVuIC5idXR0b24tY29udGVudCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnV0dG9uLXNtYWxsLmJ1dHRvbi1kaXNhYmxlZCwgLmJ1dHRvbi1zbWFsbFtkaXNhYmxlZF0sIC5idXR0b24tc21hbGwuYnV0dG9uLWRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLXNtYWxsW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1zbWFsbC5idXR0b24tZGlzYWJsZWQ6YWN0aXZlLCAuYnV0dG9uLXNtYWxsW2Rpc2FibGVkXTphY3RpdmUsIC5idXR0b24tbWVkaXVtLmJ1dHRvbi1kaXNhYmxlZCwgLmJ1dHRvbi1tZWRpdW1bZGlzYWJsZWRdLCAuYnV0dG9uLW1lZGl1bS5idXR0b24tZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tbWVkaXVtW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1tZWRpdW0uYnV0dG9uLWRpc2FibGVkOmFjdGl2ZSwgLmJ1dHRvbi1tZWRpdW1bZGlzYWJsZWRdOmFjdGl2ZSwgLmJ1dHRvbi1sYXJnZS5idXR0b24tZGlzYWJsZWQsIC5idXR0b24tbGFyZ2VbZGlzYWJsZWRdLCAuYnV0dG9uLWxhcmdlLmJ1dHRvbi1kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1sYXJnZVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tbGFyZ2UuYnV0dG9uLWRpc2FibGVkOmFjdGl2ZSwgLmJ1dHRvbi1sYXJnZVtkaXNhYmxlZF06YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNSBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkgcmVwZWF0IHNjcm9sbCAwIDA7XG4gIGNvbG9yOiAjYjNiM2IzICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmJ1dHRvbi10b29sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbiAgei1pbmRleDogMTtcbn1cblxuLmJ1dHRvbi10b29sOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbiAgei1pbmRleDogMjtcbn1cblxuLmJ1dHRvbi10b29sOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGQ4ZDg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5idXR0b24tdG9vbC5waWxsLW1lZGl1bS1taWRkbGUsIC5idXR0b24tdG9vbC5waWxsLW1lZGl1bS1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uYnV0dG9uLWNhbmNlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzAwMDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjZTVlNWU1O1xufVxuXG4uYnV0dG9uLWNhbmNlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTAwMDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uLWNhbmNlbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZvb3RiYWxsLXJlYWwtdGltZS1idXR0b24tc2NvcmUtbGl2ZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUxLCAyMDMsIDM0LCAwKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAyNDhweDtcbn1cblxuLmZvb3RiYWxsLXJlYWwtdGltZS1idXR0b24tc2NvcmUtbGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGU4NzI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUxLCAyMDMsIDM0LCAwLjUpO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmZvb3RiYWxsLXJlYWwtdGltZS1idXR0b24tcXVpY2stc2NvcmUsIC5mb290YmFsbC1yZWFsLXRpbWUtYnV0dG9uLWVkaXQtc3RhdHMge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDExNXB4O1xufVxuXG4uYnV0dG9uLWZvb3RiYWxsLW9mZmxpbmUge1xuICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG59XG5cbiNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAuYnV0dG9uLXNtYWxsLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLnBpbGwtc21hbGwtbGVmdCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLXNtYWxsLW1pZGRsZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLXNtYWxsLXJpZ2h0LCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLmJ1dHRvbi1tZWRpdW0sICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1tZWRpdW0tbGVmdCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLW1lZGl1bS1taWRkbGUsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1tZWRpdW0tcmlnaHQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAuYnV0dG9uLWxhcmdlLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLnBpbGwtbGFyZ2UtbGVmdCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLWxhcmdlLW1pZGRsZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLWxhcmdlLXJpZ2h0IHtcbiAgY29sb3I6ICNlNWU1ZTU7XG59XG5cbiNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLmJ1dHRvbi1zbWFsbCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1zbWFsbC1sZWZ0LCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5waWxsLXNtYWxsLW1pZGRsZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1zbWFsbC1yaWdodCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAuYnV0dG9uLW1lZGl1bSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1tZWRpdW0tbGVmdCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1tZWRpdW0tbWlkZGxlLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5waWxsLW1lZGl1bS1yaWdodCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAuYnV0dG9uLWxhcmdlLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5waWxsLWxhcmdlLWxlZnQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLnBpbGwtbGFyZ2UtbWlkZGxlLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5waWxsLWxhcmdlLXJpZ2h0IHtcbiAgY29sb3I6ICM1OTU5NTk7XG59XG5cbi50b3BOYXYgW2NsYXNzKj1cImJ1dHRvbi1cIl0sXG4uc2l0ZUNvbnRhaW5lciBbY2xhc3MqPVwiYnV0dG9uLVwiXSB7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMDAyMDQwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIDAuMnMgZWFzZS1pbiwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW47XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnRvcE5hdiBbY2xhc3MqPVwiYnV0dG9uLVwiXTpob3Zlcixcbi5zaXRlQ29udGFpbmVyIFtjbGFzcyo9XCJidXR0b24tXCJdOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwMjA0MDtcbn1cblxuLmJ1dHRvbi1hZGQ6aG92ZXIsIC5idXR0b24tcmVtb3ZlOmhvdmVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmRlYTg4O1xufVxuXG4vKiBUYWJsZXMgKi9cbiNsaWdodGJveEJvZHkgLnRhYmxlRWxlbWVudCB7XG4gIF93aWR0aDogNjYwcHg7XG59XG5cbi5kYXRhVGFibGUsXG4uc3RhdFRhYmxlLFxuLnN0YXRfdGFibGUge1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBib3JkZXItY29sbGFwc2U6IGluaXRpYWw7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZGF0YVRhYmxlIHRkLCAuZGF0YVRhYmxlIHRoLFxuLnN0YXRUYWJsZSB0ZCxcbi5zdGF0VGFibGUgdGgsXG4uc3RhdF90YWJsZSB0ZCxcbi5zdGF0X3RhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xufVxuXG4uZGF0YVRhYmxlIHRkOmxhc3QtY2hpbGQsIC5kYXRhVGFibGUgdGg6bGFzdC1jaGlsZCxcbi5zdGF0VGFibGUgdGQ6bGFzdC1jaGlsZCxcbi5zdGF0VGFibGUgdGg6bGFzdC1jaGlsZCxcbi5zdGF0X3RhYmxlIHRkOmxhc3QtY2hpbGQsXG4uc3RhdF90YWJsZSB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uZGF0YVRhYmxlIHRyOmxhc3QtY2hpbGQgdGQsXG4uc3RhdFRhYmxlIHRyOmxhc3QtY2hpbGQgdGQsXG4uc3RhdF90YWJsZSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmRhdGFUYWJsZSB0Ym9keSB0ZCxcbi5zdGF0VGFibGUgdGJvZHkgdGQsXG4uc3RhdF90YWJsZSB0Ym9keSB0ZCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5kYXRhVGFibGUgKiA+LFxuLnN0YXRUYWJsZSAqID4sXG4uc3RhdF90YWJsZSAqID4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZGF0YVRhYmxlIHRoLFxuLnN0YXRUYWJsZSB0aCxcbi5zdGF0X3RhYmxlIHRoIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiAxNXB4IDEycHg7XG4gIGJhY2tncm91bmQ6ICNFMUU4RUQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQ6IDYwMCAxMnB4LzEuMiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmRhdGFUYWJsZSB0aC5BU0MsIC5kYXRhVGFibGUgdGguREVTQywgLmRhdGFUYWJsZSB0aC5zb3J0dGFibGVfc29ydGVkLCAuZGF0YVRhYmxlIHRoLnNvcnR0YWJsZV9zb3J0ZWRfcmV2ZXJzZSxcbi5zdGF0VGFibGUgdGguQVNDLFxuLnN0YXRUYWJsZSB0aC5ERVNDLFxuLnN0YXRUYWJsZSB0aC5zb3J0dGFibGVfc29ydGVkLFxuLnN0YXRUYWJsZSB0aC5zb3J0dGFibGVfc29ydGVkX3JldmVyc2UsXG4uc3RhdF90YWJsZSB0aC5BU0MsXG4uc3RhdF90YWJsZSB0aC5ERVNDLFxuLnN0YXRfdGFibGUgdGguc29ydHRhYmxlX3NvcnRlZCxcbi5zdGF0X3RhYmxlIHRoLnNvcnR0YWJsZV9zb3J0ZWRfcmV2ZXJzZSB7XG4gIGJhY2tncm91bmQ6ICMwMDQ3OGQ7XG59XG5cbi5kYXRhVGFibGUgdGQsXG4uc3RhdFRhYmxlIHRkLFxuLnN0YXRfdGFibGUgdGQge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNFMUU4RUQ7XG59XG5cbi5kYXRhVGFibGUgdGQuaGlnaGxpZ2h0LFxuLnN0YXRUYWJsZSB0ZC5oaWdobGlnaHQsXG4uc3RhdF90YWJsZSB0ZC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZGF0YVRhYmxlIHRkLmhpZ2hsaWdodCxcbi5zdGF0VGFibGUgdGQuaGlnaGxpZ2h0LFxuLnN0YXRfdGFibGUgdGQuaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogI2UxZTFlMTtcbn1cblxuLk5naW5UYWJsZVNjcm9sbCxcbi50YWJsZUVsZW1lbnQgLnRhYmxlV3JhcHBlcixcbi50ZXh0QmxvY2tFbGVtZW50IC50ZXh0ID4gLnRhYmxlV3JhcHBlciB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5kYXRhVGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGF0YVRhYmxlIHRoOmZpcnN0LWNoaWxkLCAuZGF0YVRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5kYXRhVGFibGUgdGhlYWQgdGguYWpheF9zb3J0IHtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGF0YVRhYmxlIHRoZWFkIHRoLmFqYXhfc29ydCAuc29ydGVkX2ltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kYXRhVGFibGUgdGhlYWQgdGguYWpheF9zb3J0OmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cblxuLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQ6YWZ0ZXIge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6ICdcXGYwZGMnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMTJweDtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC03cHg7XG59XG5cbi5kYXRhVGFibGUgdGhlYWQgdGguYWpheF9zb3J0LkFTQzphZnRlciwgLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQuc29ydHRhYmxlX3NvcnRlZDphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGYwZGUnO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4uZGF0YVRhYmxlIHRoZWFkIHRoLmFqYXhfc29ydC5ERVNDOmFmdGVyLCAuZGF0YVRhYmxlIHRoZWFkIHRoLmFqYXhfc29ydC5zb3J0dGFibGVfc29ydGVkX3JldmVyc2U6YWZ0ZXIge1xuICBjb250ZW50OiAnXFxmMGRkJztcbiAgbWFyZ2luLXRvcDogLTlweDtcbn1cblxuLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQuQVNDLCAuZGF0YVRhYmxlIHRoZWFkIHRoLmFqYXhfc29ydC5ERVNDLCAuZGF0YVRhYmxlIHRoZWFkIHRoLmFqYXhfc29ydC5oaWdobGlnaHRlZCwgLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQuc29ydHRhYmxlX3NvcnRlZCwgLmRhdGFUYWJsZSB0aGVhZCB0aC5hamF4X3NvcnQuc29ydHRhYmxlX3NvcnRlZF9yZXZlcnNlIHtcbiAgYmFja2dyb3VuZDogIzAwNDc4ZDtcbn1cblxuLmRhdGFUYWJsZSB0Ym9keSB0ZCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5kYXRhVGFibGUgdGZvb3Q6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCAjZWVlO1xufVxuXG4uZGF0YVRhYmxlIHRmb290OmVtcHR5OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN0YXRUYWJsZSAuY29uZGVuc2VkVmlldyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdGF0VGFibGUgLnNvcnRlZF9pbWcsXG4uc3RhdFRhYmxlIC5zb3J0LWFycm93IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN0YXRUYWJsZSAubmFtZSBzcGFuLFxuLnN0YXRUYWJsZSAuc3RhdFRlYW0gc3Bhbixcbi5zdGF0VGFibGUgLnN0YXRQbGF5ZXIgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnN0YXRUYWJsZSAuc2NoZWR1bGVMaXN0UmVzdWx0LFxuLnN0YXRUYWJsZSAuc2NoZWR1bGVMaXN0U2NvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zdGF0VGFibGUgLnNjaGVkdWxlTGlzdFJlc3VsdCArIC5zY2hlZHVsZUxpc3RTY29yZSB7XG4gIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbn1cblxuLnN0YXRUYWJsZSAud2lubmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX2NlbnRlci93aW5uZXJzTm90Y2gtc3RhdFRhYmxlLnBuZ1wiKSBuby1yZXBlYXQgbGVmdCA2MCU7XG59XG5cbi5zdGF0VGFibGUgdGgubmFtZSBzcGFuLCAuc3RhdFRhYmxlIHRoLnN0YXRUZWFtIHNwYW4sIC5zdGF0VGFibGUgdGguc3RhdFBsYXllciBzcGFuIHtcbiAgd2lkdGg6IDE0MHB4O1xuICBtYXJnaW4tbGVmdDogLS41ZW07XG59XG5cbi5zdGF0VGFibGUgdGQubmFtZSBzcGFuLCAuc3RhdFRhYmxlIHRkLnN0YXRUZWFtIHNwYW4sIC5zdGF0VGFibGUgdGQuc3RhdFBsYXllciBzcGFuIHtcbiAgd2lkdGg6IDE0MHB4O1xufVxuXG4uc3RhdFRhYmxlIC5leHRyYS1zcGFjZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbiNUZWFtU3RhdHNEaXYgLnN0YXRUYWJsZSB0aCA+IGltZyxcbiNQbGF5ZXJTdGF0c0RpdiAuc3RhdFRhYmxlIHRoID4gaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI1RlYW1TdGF0c0RpdiAuc3RhdFRhYmxlIHRkLFxuI1BsYXllclN0YXRzRGl2IC5zdGF0VGFibGUgdGQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jVGVhbVN0YXRzRGl2IC5zdGF0VGFibGUgdGg6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMTQwcHg7XG59XG5cbiNUZWFtU3RhdHNEaXYgLnN0YXRUYWJsZSAudGVhbU5hbWUge1xuICB3aWR0aDogMTQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNQbGF5ZXJTdGF0c0RpdiAuc3RhdFRhYmxlIHRoOm50aC1jaGlsZCgyKSwgI1BsYXllclN0YXRzRGl2IC5zdGF0VGFibGUgdGg6bnRoLWNoaWxkKDMpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDE0MHB4O1xufVxuXG4jUGxheWVyU3RhdHNEaXYgLnN0YXRUYWJsZSAuamVyc2V5LW51bWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiNQbGF5ZXJTdGF0c0RpdiAuc3RhdFRhYmxlIHRkOm50aC1jaGlsZCgyKSA+IGEge1xuICB3aWR0aDogMTQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNQbGF5ZXJTdGF0c0RpdiAuc3RhdFRhYmxlIHRkIC50ZWFtTmFtZSB7XG4gIHdpZHRoOiAxNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI1BsYXllclN0YXRzRGl2IC5zdGF0VGFibGUgdGQuc3RhdFBsYXllciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAudGhlbWUtc3RhdC10YWJsZSB0ZCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAudGhlbWUtc3RhdC10YWJsZSB0aDpmaXJzdC1jaGlsZDpub3QoLmplcnNleS1udW1iZXIpLFxuI1RlYW1JbnN0YW5jZVN0YXRzRGl2IC50aGVtZS1zdGF0LXRhYmxlIC5zdGF0UGxheWVyOm5vdCguamVyc2V5LW51bWJlcikge1xuICB3aWR0aDogMTQwcHg7XG59XG5cbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAudGhlbWUtc3RhdC10YWJsZSB0aC5zdGF0UGxheWVyIHtcbiAgd2lkdGg6IDE0MHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4jVGVhbUluc3RhbmNlU3RhdHNEaXYgLnRoZW1lLXN0YXQtdGFibGUgLmplcnNleS1udW1iZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jVGVhbUluc3RhbmNlU3RhdHNEaXYgLnRoZW1lLXN0YXQtdGFibGUgLnRlYW1OYW1lLFxuI1RlYW1JbnN0YW5jZVN0YXRzRGl2IC50aGVtZS1zdGF0LXRhYmxlIC5zdGF0UGxheWVyID4gYSB7XG4gIHdpZHRoOiAxNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnBsYXllclN0YXRMZWFkZXJFbGVtZW50IHRoOmZpcnN0LWNoaWxkIHtcbiAgd2lkdGg6IDRlbTtcbn1cblxuLnN0YW5kaW5nc0VsZW1lbnQgLnNwb3J0VGFibGVMYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xufVxuXG4uc3RhbmRpbmdzRWxlbWVudCAuc3BvcnRUYWJsZUxhYmVsIGg0IHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zdGFuZGluZ3NFbGVtZW50IC5zdGF0VGFibGUgdGg6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMTgwcHg7XG59XG5cbi5zdGFuZGluZ3NFbGVtZW50IC5zdGF0VGFibGUgdGg6Zmlyc3QtY2hpbGQsIC5zdGFuZGluZ3NFbGVtZW50IC5zdGF0VGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc3RhbmRpbmdzRWxlbWVudCAuTmdpblRhYmxlV3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLyogQ291bnRkb3duIEVsZW1lbnQgKi9cbi5jb3VudGRvd25FbGVtZW50IHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC1tcy1mbGV4LXBhY2s6IHNwYWNlLWJldHdlZW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAzNXB4IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbi5jb3VudGRvd25FbGVtZW50IGgyIHtcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xufVxuXG4uY291bnRkb3duRWxlbWVudCBoMjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb3VudGRvd25FbGVtZW50IGFiYnIge1xuICAtd2Via2l0LWFsaWduLXNlbGY6IGNlbnRlcjtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xuICBtaW4td2lkdGg6IDM0MHB4O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jb3VudGRvd25FbGVtZW50IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA2cHg7XG59XG5cbi5jb3VudGRvd25FbGVtZW50IGIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiA1MnB4O1xufVxuXG4uY291bnRkb3duRWxlbWVudCBzbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmNvdW50ZG93bkVsZW1lbnQuY291bnRkb3duLWRhcmsge1xuICBiYWNrZ3JvdW5kOiAjNTU1O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmNvdW50ZG93bkVsZW1lbnQuY291bnRkb3duLWRhcmsgaDI6YWZ0ZXIge1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICM1NTU7XG59XG5cbi5jb3VudGRvd25FbGVtZW50LmNvdW50ZG93bi1kYXJrOmJlZm9yZSwgLmNvdW50ZG93bkVsZW1lbnQuY291bnRkb3duLWRhcms6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTYyZGVnLCAjZmZmIDBweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAzcHgsICNmZmYgNHB4KTtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgtNzJkZWcsICNmZmYgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI2ZmZiA0cHgpO1xufVxuXG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tZGFyazpiZWZvcmUge1xuICB0b3A6IDA7XG59XG5cbi5jb3VudGRvd25FbGVtZW50LmNvdW50ZG93bi1kYXJrOmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNvdW50ZG93bkVsZW1lbnQuY291bnRkb3duLWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHQgYiB7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHQ6YmVmb3JlLCAuY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTYyZGVnLCAjYWFhIDBweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAzcHgsICNhYWEgNHB4KTtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgtNzJkZWcsICNhYWEgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI2FhYSA0cHgpO1xufVxuXG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHQ6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuXG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHQ6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5jb2wtbWQtNCAuY291bnRkb3duRWxlbWVudCwgLmNvbC1tZC0zIC5jb3VudGRvd25FbGVtZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgaDIsIC5jb2wtbWQtMyAuY291bnRkb3duRWxlbWVudCBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgYWJiciwgLmNvbC1tZC0zIC5jb3VudGRvd25FbGVtZW50IGFiYnIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgYiwgLmNvbC1tZC0zIC5jb3VudGRvd25FbGVtZW50IGIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgc21hbGwsIC5jb2wtbWQtMyAuY291bnRkb3duRWxlbWVudCBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgYWJiciBzcGFuLCAuY29sLW1kLTMgLmNvdW50ZG93bkVsZW1lbnQgYWJiciBzcGFuIHtcbiAgICB3aWR0aDogMzMlO1xuICAgIHBhZGRpbmc6IDEuNSUgMDtcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgYiwgLmNvbC1tZC0zIC5jb3VudGRvd25FbGVtZW50IGIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgfVxuICAuY29sLW1kLTQgLmNvdW50ZG93bkVsZW1lbnQgc21hbGwsIC5jb2wtbWQtMyAuY291bnRkb3duRWxlbWVudCBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmNvdW50ZG93bkVsZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jb3VudGRvd25FbGVtZW50IGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb3VudGRvd25FbGVtZW50IGFiYnIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgfVxuICAuY291bnRkb3duRWxlbWVudCBiIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAuY291bnRkb3duRWxlbWVudCBiIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cbiAgLmNvdW50ZG93bkVsZW1lbnQgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC5jb3VudGRvd25FbGVtZW50IGFiYnIgc3BhbiB7XG4gICAgd2lkdGg6IDMzJTtcbiAgICBwYWRkaW5nOiAxLjUlIDA7XG4gIH1cbn1cblxuLnBhZ2VPcHRpb25zLFxuLmV4dGVuZGVkT3B0aW9ucyB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWdlT3B0aW9ucyBsaSxcbi5leHRlbmRlZE9wdGlvbnMgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbn1cblxuLnBhZ2VPcHRpb25zIGxpOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSxcbi5leHRlbmRlZE9wdGlvbnMgbGk6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDJlbTtcbiAgd2lkdGg6IDFlbTtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjOTk5O1xuICAtbXMtdHJhbnNmb3JtOiBza2V3WCgtMjJkZWcpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIyZGVnKTtcbiAgdHJhbnNmb3JtOiBza2V3WCgtMjJkZWcpO1xufVxuXG4ucGFnZU9wdGlvbnMgYSxcbi5leHRlbmRlZE9wdGlvbnMgYSB7XG4gIGNvbG9yOiAjNjY2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wYWdlT3B0aW9ucyBhID4gaW1nLFxuLmV4dGVuZGVkT3B0aW9ucyBhID4gaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZU9wdGlvbnMgYTpob3Zlcixcbi5leHRlbmRlZE9wdGlvbnMgYTpob3ZlciB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc24tc2hhcmUtaWNvbnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5zbi1zaGFyZS1pY29ucyBkaXYge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uc24tc2hhcmUtaWNvbnMgLnNuLXNoYXJlLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMTdweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTJweCk7XG59XG5cbi5zbi1zaGFyZS1pY29ucyAuc24tc2hhcmUtdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uc2hhcmluZ09wdGlvbnMge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwYWRkaW5nOiAyNXB4IDAgMTBweCAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2RkZDtcbn1cblxuI3BheVdhbGwge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmNjO1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmZjYzAwO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jcGF5V2FsbCBoMyB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jcGF5V2FsbCAubGF5b3V0Q29udGFpbmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4jcGF5V2FsbCA+IC5sYXlvdXRDb250YWluZXIgPiAuY29sdW1uIHtcbiAgcGFkZGluZzogLjA1cHggMDtcbn1cblxuI3BheVdhbGwgPiAubGF5b3V0Q29udGFpbmVyID4gLmNvbHVtbiA+IC5wYWdlRWwgPiAucGFnZUVsZW1lbnQge1xuICBtYXJnaW46IDE1cHg7XG59XG5cbiNwYXlXYWxsIC5sb2dpbiBoMyB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYWxlcnQtZ29sZC5wbmdcIikgbm8tcmVwZWF0IDAgNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUge1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICNmZmNjMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLnByaWNpbmcge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLnByaWNpbmcgLnBhZ2VFbGVtZW50IHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuI3BheVdhbGwgLnN1YnNjcmliZSAucHJpY2luZyBwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLnByaWNpbmcgLmNoYW5nZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuI3BheVdhbGwgLnN1YnNjcmliZSAucHJpY2luZyAubGVuZ3RoIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5wcmljaW5nIHAgYiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcGF5d2FsbC1wcmljaW5nLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDlweDtcbiAgbWFyZ2luOiA4cHggMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNwYXlXYWxsIC5idXR0b24tbGFyZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuI3BheVdhbGwgLnN1YnNjcmliZSAuYnV0dG9uLWxhcmdlIHtcbiAgYmFja2dyb3VuZDogI2ZmZGQzYTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZkZDNhIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjZmZkZDNhKSwgY29sb3Itc3RvcCgxMDAlLCAjZmZjYzAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdhKDI1NSwgMjIxLCA1OCkgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmRkM2EgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZkZDNhIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZkZDNhIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBjb2xvcjogYmxhY2s7XG4gIHRleHQtc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuXG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5idXR0b24tbGFyZ2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjM2YzZjNmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICM2NjY2NjYgMCUsICMzZjNmM2YgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM2NjY2NjYpLCBjb2xvci1zdG9wKDEwMCUsICMzZjNmM2YpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNjY2NjY2IDAlLCAjM2YzZjNmIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNjY2NjY2IDAlLCAjM2YzZjNmIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzY2NjY2NiAwJSwgIzNmM2YzZiAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzY2NjY2NiAwJSwgIzNmM2YzZiAxMDAlKTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4IGJsYWNrO1xufVxuXG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5idXR0b24tbGFyZ2U6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzRjNGM0YztcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMjYyNjI2IDAlLCAjNGM0YzRjIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjMjYyNjI2KSwgY29sb3Itc3RvcCgxMDAlLCAjNGM0YzRjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzI2MjYyNiAwJSwgIzRjNGM0YyAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzI2MjYyNiAwJSwgIzRjNGM0YyAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICMyNjI2MjYgMCUsICM0YzRjNGMgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMyNjI2MjYgMCUsICM0YzRjNGMgMTAwJSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCBibGFjaztcbn1cblxuLyouc3ViTmF2IGxpLnBheXdhbGxlZCBhOmJlZm9yZSxcbi5yZWxhdGVkU2VjdGlvbnMgbGkucGF5d2FsbGVkIGE6YmVmb3JlLFxuI3RvcE5hdiBhLnBheXdhbGxlZDpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCIuLi9pbWFnZXMvUkVQTEFDRS5naWZcIik7XG4gIG1hcmdpbjogLTFweCAycHggMCAtMTFweDtcbiAgZmxvYXQ6IGxlZnQ7XG59Ki9cbi5jb2xsZWN0b3JFbGVtZW50IGEucGF5d2FsbGVkOmJlZm9yZSxcbi5uZXdzQWdncmVnYXRvckVsZW1lbnQgYS5wYXl3YWxsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMzc1ZW07XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcGF5d2FsbC1pY29uLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuI3BheVdhbGwgLnN1YnNjcmliZSBhIHtcbiAgYmFja2dyb3VuZDogI2ZmY2MwMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZkZDNhIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjZmZkZDNhKSwgY29sb3Itc3RvcCgxMDAlLCAjZmZjYzAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZGQzYSAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZGQzYSAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmRkM2EgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmRkM2EgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1zaGFkb3c6IDBweCAxcHggMHB4IHJnYmEoMjIxLCAyMjEsIDIyMSwgMC41KTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lO1xuICAvKiBGaXJlZm94IDQgKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAtby10cmFuc2l0aW9uOiBub25lO1xuICAvKiBPcGVyYSAqL1xufVxuXG4vKiBMb2dnZWQgSW4gVmlldyAqL1xuI3BheVdhbGwubG9nZ2VkLWluIC5zdWJzY3JpYmUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4jcGF5V2FsbC5sb2dnZWQtaW4gLnN1YnNjcmliZSBhIHtcbiAgbWFyZ2luLXRvcDogMjFweDtcbn1cblxuI3BheVdhbGwubG9nZ2VkLWluIC5wcmljaW5nIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjRkMwO1xuICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG59XG5cbi5pY29uIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogMHB4IDAgMnB4IDIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGlua19pY29ucy5wbmdcIik7XG59XG5cbi5yc3NMaW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucnNzTGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbn1cblxuLmdyb3VwTGluayB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMzQ4cHg7XG59XG5cbi5nb1RvTGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmdvVG9MaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xufVxuXG4uZ29CYWNrTGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmdvQmFja0xpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1cHg7XG59XG5cbi5tb250aFZpZXdMaW5rLFxuLmljb25EYXlDYWwsXG4uYWxwaGFMaW5rLFxuLnNpdGVNYXBMaW5rIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmxpbmtMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC05MjhweDtcbn1cblxuLmRlbGV0ZUxpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwNDRweDtcbn1cblxuLmVkaXRMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMTYwcHg7XG59XG5cbi5wcmludExpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5wcmludExpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMmZcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1cHg7XG59XG5cbi5hdHRhY2hlZExpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEzOTJweDtcbn1cblxuLnJlbG9hZExpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5yZWxvYWRMaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xufVxuXG4uaUNhbExpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5pQ2FsTGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3M1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbn1cblxuLmV4Y2VsTGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmV4Y2VsTGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjM1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbn1cblxuLnRhZ0xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50YWdMaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xufVxuXG4uZW1haWxMaW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZW1haWxMaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAzXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xufVxuXG4ucmVhZCAuZW1haWxMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yMDg4cHg7XG59XG5cbi5uZXdMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yMjA0cHg7XG59XG5cbi50c3RBZG1pbkxpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTIzMjBweDtcbn1cblxuLmFkZExpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTI0MzZweDtcbn1cblxuLmxvY2tlZENoZWNrIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yNTUycHg7XG59XG5cbi5nZWFyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yNjY4cHg7XG4gIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5waG90byB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjc4NHB4O1xufVxuXG4uZGlic0xpbmsge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXBwX2ltYWdlcy9pY29uLWRpYnMtc21hbGwuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAycHggY2VudGVyO1xufVxuXG4ubWlycm9yTGluayB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI5MDBweDtcbn1cblxuLm15QWNjZXNzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9wZXJtaXNzaW9ucy5naWZcIik7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbn1cblxuLm9yZGVyTGluayB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZHJhZ0ljb24uZ2lmXCIpIDNweCAzcHggbm8tcmVwZWF0O1xufVxuXG4uZnVsbHNjcmVlbkxpbmsge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL2Z1bGxzY3JlZW5JY29uLnBuZ1wiKSAwIDFweCBuby1yZXBlYXQ7XG59XG5cbi5jb25uZWN0aW9uTGluayB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMwMTVweDtcbn1cblxuLnNhdmVMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzEyOHB4O1xufVxuXG4uY2hlY2tMaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzM2M3B4O1xufVxuXG4uZmJMaW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZmJMaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDlhXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xufVxuXG4udHdpdHRlckxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50d2l0dGVyTGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbn1cblxuLnBkZkxpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNjc5cHg7XG59XG5cbi50cmFuc2Zlckxpbmsge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNzk2cHg7XG59XG5cbi5zcG9uc29yRWxlbWVudCAuZ29Ub0xpbms6YmVmb3JlIHtcbiAgcGFkZGluZzogNXB4IDEwcHggNXB4IDBweDtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbn1cblxuLmNvbnRhY3RFbGVtZW50IC5pY29uLFxuLnNuLXNvY2lhbC1tZWRpYS1saXN0IC5zbi1zb2NpYWwtbWVkaWEtaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGhlaWdodDogMWVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBtYXJnaW46IC4xZW07XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxZW07XG59XG5cbi5jb250YWN0RWxlbWVudCAuaWNvbjpiZWZvcmUsXG4uc24tc29jaWFsLW1lZGlhLWxpc3QgLnNuLXNvY2lhbC1tZWRpYS1pY29uOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IC42ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY2ZW07XG4gIHdpZHRoOiAxLjY2ZW07XG4gIGxlZnQ6IDA7XG59XG5cbi5jb250YWN0RWxlbWVudCAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gIGZvbnQtc2l6ZTogMjdweDtcbn1cblxuLmNvbnRhY3RFbGVtZW50IC5pY29uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRBNjtcbn1cblxuLnNuLXNvY2lhbC1tZWRpYS1saXN0Om5vdCgubGlnaHQpOm5vdCguZGFyaykgLnNuLXNvY2lhbC1tZWRpYS1pY29uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbn1cblxuLnNuLXNvY2lhbC1tZWRpYS1saXN0LmRhcmsgLmljb24tZW1haWw6aG92ZXIsXG4uc24tc29jaWFsLW1lZGlhLWxpc3QuZGFyayAuaWNvbi1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbn1cblxuLmNvbGxlY3RvckVsZW1lbnQgLnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbGxlY3RvckVsZW1lbnQgLnRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMwXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBsZWZ0OiAtMjVweDtcbn1cblxuLmNvbnRlbnRUYWJzICsgLmNvbGxlY3RvclRyZWUuc2l0ZU1hcEVsZW1lbnQgYVtocmVmKj1cIi9waG90b19nYWxsZXJ5L1wiXSArIGFbaHJlZio9XCIvcGhvdG9fZ2FsbGVyeS9cIl06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxlZnQ6IC0yNXB4O1xufVxuXG5hW2hyZWYqPVwiL2RvY3VtZW50L1wiXSArIC5pbmZvIC50aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGVmdDogLTI1cHg7XG59XG5cbi8qIFBob3RvIEdhbGxlcnkgRWxlbWVudCAqL1xuLmdhbGxlcnlFbGVtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5LmZvcm1hdHRlZCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gIHBhZGRpbmc6IDBweDtcbiAgYmFja2dyb3VuZDogdXJsKC9nYWxsZXJ5X3NraW5zL3RuM2UvZ3JhZC5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeS5mb3JtYXR0ZWQgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmltYWdlX3RpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgcGFkZGluZzogMCA2JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmNyb3Age1xuICBwYWRkaW5nLXRvcDogNzUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLnNsaWRlLFxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAub3ZlcmxheSxcbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5saW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAub3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogNztcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmxpbmsge1xuICB6LWluZGV4OiA4O1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfbGluayB7XG4gIGJhY2tncm91bmQ6IHVybCgvZ2FsbGVyeV9za2lucy90bjNlL2dyYWQucG5nKSA3MCUgODAlIG5vLXJlcGVhdDtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2xpbmsgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLnNpbmdsZV9waG90byB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLnNpbmdsZV9waG90byBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDMlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLnNpbmdsZV9waG90byBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKC9nYWxsZXJ5X3NraW5zL3RuM2UvZ3JhZC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfbGluay5zaW5nbGVfcGhvdG8gYSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2xpbmsuc2luZ2xlX3Bob3RvIC5nYWxsZXJ5X3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDMlO1xuICB3aWR0aDogOTQlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDhweCA2JTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfbGluay5zaW5nbGVfcGhvdG8gLmdhbGxlcnlfdGl0bGUgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC1vLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfbGluay5nYWxsZXJ5X2J1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLmdhbGxlcnlfYnV0dG9uIGEge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDY1cHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLmdhbGxlcnlfYnV0dG9uIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoL2dhbGxlcnlfc2tpbnMvdG4zZS9ncmFkLnBuZykgbm8tcmVwZWF0IDcwJSA2MCU7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rLmdhbGxlcnlfYnV0dG9uIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNjVweDtcbiAgaGVpZ2h0OiA2NXB4O1xuICBjbGlwOiByZWN0KDAsIDY1cHgsIDY1cHgsIDApO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfbGluay5nYWxsZXJ5X2J1dHRvbiAuZ2FsbGVyeV90aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIHBhZGRpbmctbGVmdDogNzJweDtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2xpbmsuZ2FsbGVyeV9idXR0b24gLmdhbGxlcnlfdGl0bGUgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDY1cHg7XG4gIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmltYWdlX3RpdGxlLFxuLmdhbGxlcnlFbGVtZW50X2xpbmsgLmdhbGxlcnlfdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuaW1hZ2VfdGl0bGUgc3Bhbixcbi5nYWxsZXJ5RWxlbWVudF9saW5rIC5nYWxsZXJ5X3RpdGxlIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmdhbGxlcnlfaW5mbyxcbi5waG90b19nYWxsZXJ5X3ByZXZpZXcsXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5nYWxsZXJ5X2luZm86YWZ0ZXIsXG4ucGhvdG9fZ2FsbGVyeV9wcmV2aWV3OmFmdGVyLFxuI21lZGlhR2FsbGVyeS1kZXNjcmlwdGlvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogM3B4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDE2MmRlZywgI2FhYSAwcHgsIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgM3B4LCAjYWFhIDRweCk7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoLTcyZGVnLCAjYWFhIDBweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAzcHgsICNhYWEgNHB4KTtcbn1cblxuLmdhbGxlcnlfaW5mbyBoMyxcbi5nYWxsZXJ5X2luZm8gaDEsXG4uZ2FsbGVyeV9pbmZvIC50aXRsZSxcbi5waG90b19nYWxsZXJ5X3ByZXZpZXcgaDMsXG4ucGhvdG9fZ2FsbGVyeV9wcmV2aWV3IGgxLFxuLnBob3RvX2dhbGxlcnlfcHJldmlldyAudGl0bGUsXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uIGgzLFxuI21lZGlhR2FsbGVyeS1kZXNjcmlwdGlvbiBoMSxcbiNtZWRpYUdhbGxlcnktZGVzY3JpcHRpb24gLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDAgMCAuMWVtIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uZ2FsbGVyeV9pbmZvLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiBoMSxcbi5waG90b19nYWxsZXJ5X3ByZXZpZXcucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIGgxLFxuI21lZGlhR2FsbGVyeS1kZXNjcmlwdGlvbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gaDEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5X2luZm8gcCxcbi5nYWxsZXJ5X2luZm8gLmRlc2NyaXB0aW9uLFxuLnBob3RvX2dhbGxlcnlfcHJldmlldyBwLFxuLnBob3RvX2dhbGxlcnlfcHJldmlldyAuZGVzY3JpcHRpb24sXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uIHAsXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uIC5kZXNjcmlwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbjogMCAwIC41ZW0gMDtcbn1cblxuLmVkaXRfbW9kZSAuZ2FsbGVyeUVsZW1lbnRfbGluay5nYWxsZXJ5X2J1dHRvbiBpbWcge1xuICB0b3A6IDI1cHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5Lm1heGltaXplZCB7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeS5tYXhpbWl6ZWQgLmNyb3Age1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogNSU7XG4gIGxlZnQ6IDUlO1xuICByaWdodDogNSU7XG4gIGJvdHRvbTogMTIwcHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5Lm1heGltaXplZCAuaW1hZ2VfdGl0bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNjBweDtcbiAgbGVmdDogNSU7XG4gIHJpZ2h0OiA1JTtcbiAgaGVpZ2h0OiA2MHB4O1xuICB3aWR0aDogOTAlO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeS5tYXhpbWl6ZWQgLmltYWdlX3RpdGxlIHNwYW4ge1xuICBwYWRkaW5nLXRvcDogMThweDtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkubWF4aW1pemVkIC5uZXh0X2J0biB7XG4gIHJpZ2h0OiA1LjUlO1xuICBib3R0b206IDcwcHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5Lm1heGltaXplZCAucHJldl9idG4ge1xuICBsZWZ0OiA1LjUlO1xuICBib3R0b206IDcwcHg7XG59XG5cbiN0aGVNZWRpYUdhbGxlcnkuZ2FsbGVyeUVsZW1lbnRfbGluayAuZ2FsbGVyeV90aXRsZSwgI3RoZU1lZGlhR2FsbGVyeS5mb3JtYXR0ZWQgLmltYWdlX3RpdGxlLCAjdGhlTWVkaWFHYWxsZXJ5X2dhbGxlcnkgLnRuM2UtaW1hZ2UtdGl0bGUge1xuICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC1vLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4jdGhlTWVkaWFHYWxsZXJ5X2dhbGxlcnkudG4zZS1nYWxsZXJ5IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI3RoZU1lZGlhR2FsbGVyeV9nYWxsZXJ5IC50bjNlLXRleHQge1xuICBoZWlnaHQ6IDcwcHg7XG4gIG1pbi1oZWlnaHQ6IDcwcHg7XG59XG5cbiN0aGVNZWRpYUdhbGxlcnlfZ2FsbGVyeSAudG4zZS1pbWFnZS1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWVkaWFHYWxsZXJ5SGVhZGVyIHtcbiAgZm9udC1zaXplOiAwLjVlbTtcbn1cblxuLm1lZGlhR2FsbGVyeUhlYWRlciBoMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5cbi5tZWRpYUdhbGxlcnlIZWFkZXIgLmJ1dHRvbi1sYXJnZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuI3RhYl9zbGlkZXNob3dfY29udGVudCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNtZWRpYUdhbGxlcnlUaHVtYm5haWxzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuI3NsaWRlc2hvd0NvbnRhaW5lciAucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIHtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuI21lZGlhR2FsbGVyeVVwbG9hZGVyIHtcbiAgaGVpZ2h0OiAyMTBweDtcbn1cblxuI2dhbGxlcnlUaHVtYkJpbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGhvdG9HYWxsZXJ5VGh1bWIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDBweDtcbiAgbWFyZ2luOiA1cHg7XG59XG5cbi5waG90b0dhbGxlcnlUaHVtYkltYWdlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jZ2FsbGVyeVRodW1iQmluIC5waG90b0dhbGxlcnlUaHVtYkltYWdlIHtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuI2dhbGxlcnlUaHVtYkJpbiAucGhvdG9HYWxsZXJ5VGh1bWJJbWFnZSBpbWcge1xuICBtYXJnaW46IDAgMCAxMHB4O1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNvbG8ge1xuICBwYWRkaW5nOiAxNXB4IDAgMDtcbn1cblxuI21lZGlhR2FsbGVyeS1zb2xvIC5wYWdlRWxlbWVudEFkbWluIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuI21lZGlhR2FsbGVyeS1zb2xvIC5hc2lkZSB7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbiNtZWRpYUdhbGxlcnktc29sbyAuYXNpZGUgaDEge1xuICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNvbG8gLmFzaWRlIHAge1xuICBwYWRkaW5nOiAwIDAgMTVweDtcbn1cblxuLnRuM2UtZ2FsbGVyeSAudG4zZS10aHVtYnMge1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuY29udHJvbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbjogLTIwcHggMCAwIC03NXB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5jb250cm9scyBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuY29udHJvbHMgc3Bhbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5jb250cm9scyBzcGFuOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZGRkO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmNvbnRyb2xzIHNwYW4ucHBfYnRuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNGNcIjtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLmNvbnRyb2xzIHNwYW4ucHBfYnRuLnBhdXNlZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRiXCI7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5jb250cm9scyBzcGFuLnZnX2J0bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNlXCI7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5jb250cm9scyBzcGFuLmZzX2J0bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY1XCI7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5wcmV2X2J0bixcbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5uZXh0X2J0bixcbi50bjNlLW5leHQsXG4udG4zZS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDExO1xuICBvcGFjaXR5OiAwLjY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAucHJldl9idG46aG92ZXIsXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAubmV4dF9idG46aG92ZXIsXG4udG4zZS1uZXh0OmhvdmVyLFxuLnRuM2UtcHJldjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5wcmV2X2J0bjphZnRlcixcbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5uZXh0X2J0bjphZnRlcixcbi50bjNlLW5leHQ6YWZ0ZXIsXG4udG4zZS1wcmV2OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNkZGQ7XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5wcmV2X2J0biB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLnByZXZfYnRuOmFmdGVyIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb250ZW50OiBcIlxcZjA1M1wiO1xufVxuXG4udG4zZS1wcmV2IHtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4udG4zZS1wcmV2OmFmdGVyIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb250ZW50OiBcIlxcZjA1M1wiO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAubmV4dF9idG4ge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAubmV4dF9idG46YWZ0ZXIge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG59XG5cbi50bjNlLW5leHQge1xuICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4udG4zZS1uZXh0OmFmdGVyIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb250ZW50OiBcIlxcZjA1NFwiO1xufVxuXG4udG4zZS1nYWxsZXJ5IC50bjNlLWNvbnRyb2wtYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTYwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2UtZnVsbHNjcmVlbixcbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2UtcGxheSxcbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2Utc2hvdy1hbGJ1bXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XG59XG5cbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2UtZnVsbHNjcmVlbjpob3Zlcixcbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2UtcGxheTpob3Zlcixcbi50bjNlLWdhbGxlcnkgLnRuM2UtY29udHJvbC1iYXIgLnRuM2Utc2hvdy1hbGJ1bXM6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4udG4zZS1nYWxsZXJ5IC50bjNlLWNvbnRyb2wtYmFyIC50bjNlLWZ1bGxzY3JlZW46YWZ0ZXIsXG4udG4zZS1nYWxsZXJ5IC50bjNlLWNvbnRyb2wtYmFyIC50bjNlLXBsYXk6YWZ0ZXIsXG4udG4zZS1nYWxsZXJ5IC50bjNlLWNvbnRyb2wtYmFyIC50bjNlLXNob3ctYWxidW1zOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZGRkO1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRuM2UtZ2FsbGVyeSAudG4zZS1jb250cm9sLWJhciAudG4zZS1mdWxsc2NyZWVuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNjVcIjtcbn1cblxuLnRuM2UtZ2FsbGVyeSAudG4zZS1jb250cm9sLWJhciAudG4zZS1wbGF5OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNGJcIjtcbn1cblxuLnRuM2UtZ2FsbGVyeSAudG4zZS1jb250cm9sLWJhciAudG4zZS1wbGF5LnRuM2UtcGxheS1hY3RpdmU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA0Y1wiO1xufVxuXG4udG4zZS1nYWxsZXJ5IC50bjNlLWNvbnRyb2wtYmFyIC50bjNlLXNob3ctYWxidW1zOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cblxuLm1lZGlhR2FsbGVyeS1wYWdlRWxlbWVudFRvb2xiYXIge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG5ib2R5IC5tZWRpYUdhbGxlcnktZGFyayAubWVkaWFHYWxsZXJ5LXBhZ2VFbGVtZW50VG9vbGJhciBhIHtcbiAgY29sb3I6ICNlNWU1ZTU7XG59XG5cbmJvZHkgLm1lZGlhR2FsbGVyeS1kYXJrIC5tZWRpYUdhbGxlcnktcGFnZUVsZW1lbnRUb29sYmFyIGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuYm9keSAubWVkaWFHYWxsZXJ5LWRhcmsgLm1lZGlhR2FsbGVyeS1wYWdlRWxlbWVudFRvb2xiYXIgYTphY3RpdmUge1xuICBjb2xvcjogI2U1ZTVlNTtcbn1cblxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXMsIC5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZSwgLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS12aWV3QWxsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4jbWVkaWFHYWxsZXJ5LXRvb2xiYXIge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UxZTFlMTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNtZWRpYUdhbGxlcnktdG9vbGJhciAubGF5b3V0Q29udGFpbmVyIHtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xufVxuXG4jbWVkaWFHYWxsZXJ5LXRvb2xiYXIgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4yIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXRvb2xiYXIgLnRocmVlQ29sdW1uNTA1MCAuY29sdW1uMiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4jbWVkaWFHYWxsZXJ5LWNhcnRDb250cm9scyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI21lZGlhR2FsbGVyeS1jYXJ0Q29udHJvbHMgYSxcbiNtZWRpYUdhbGxlcnktY2FydENvbnRyb2xzIGJ1dHRvbixcbiNtZWRpYUdhbGxlcnktY2FydENvbnRyb2xzIGZvcm0sXG4jbWVkaWFHYWxsZXJ5LWNhcnRDb250cm9scyAjYnV0dG9uLW1lZGlhR2FsbGVyeS1idXlQaG90b3MsXG4jbWVkaWFHYWxsZXJ5LWNhcnRDb250cm9scyAuYnV0dG9uLW1lZGlhR2FsbGVyeS1idXlQaG90b3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbiNtZWRpYUdhbGxlcnktY2FydCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuI21lZGlhR2FsbGVyeS1jYXJ0IC5oZWFkZXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuI21lZGlhR2FsbGVyeS1jYXJ0IC5oZWFkZXIgaDEge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbiNtZWRpYUdhbGxlcnktY2FydCBmb3JtIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4jbWVkaWFHYWxsZXJ5LWNhcnRJbm5lckNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMTVweCAwIDA7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LWVtcHR5Q2FydCB7XG4gIG1hcmdpbjogMCAxMXB4O1xufVxuXG4jbWVkaWFHYWxsZXJ5LWNhcnRJdGVtcyB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDE1cHggMCAwO1xufVxuXG4ubWVkaWFHYWxsZXJ5LWNhcnRJdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZTVlNWU1O1xuICBtYXJnaW46IDVweCAxMHB4IDVweCAwO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZWRpYUdhbGxlcnktY2FydEl0ZW0gaW1nIHtcbiAgbWFyZ2luOiAwIDAgNXB4O1xufVxuXG4ubWVkaWFHYWxsZXJ5LWNhcnRJdGVtIHNtYWxsIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5wYWdlRWxlbWVudCAubWVkaWFHYWxsZXJ5LWNhcnRJdGVtIHAge1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgbWFyZ2luOiAwIDAgNXB4O1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAubGF5b3V0Q29udGFpbmVyIHtcbiAgcGFkZGluZzogNXB4IDVweCAwIDE1cHg7XG4gIG1hcmdpbjogMDtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLmxheW91dENvbnRhaW5lciAucGU1MCB7XG4gIHBhZGRpbmc6IDAgMiUgMCAwO1xuICB3aWR0aDogNDglO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAubGF5b3V0Q29udGFpbmVyIC5wZTEwMCB7XG4gIHBhZGRpbmc6IDAgMSUgMCAwO1xuICB3aWR0aDogOTglO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAuZm9vdGVyIC5sYXlvdXRDb250YWluZXIge1xuICBwYWRkaW5nOiAwIDAgMTVweCAxNXB4O1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAuZm9vdGVyIC5jb2x1bW4yIHAge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgbGFiZWwge1xuICBwYWRkaW5nOiA1cHggMDtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgbGFiZWwgc3BhbiB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLmlucHV0LXRleHQsXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAudmFsaWQsXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAuaGFzRXJyb3Ige1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA0ODBweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4xcyBlYXNlO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCBpbnB1dFt0eXBlPVwidGV4dFwiXTpob3ZlcixcbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsIC5pbnB1dC10ZXh0OmhvdmVyLFxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLnZhbGlkOmhvdmVyLFxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLmhhc0Vycm9yOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4ICNkZGQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XG59XG5cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLmlucHV0LXRleHQ6Zm9jdXMsXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAudmFsaWQ6Zm9jdXMsXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbCAuaGFzRXJyb3I6Zm9jdXMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggI2RkZDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNTRBNjtcbiAgb3V0bGluZTogMDtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgLmhhc0Vycm9yIHtcbiAgYmFja2dyb3VuZDogI2ZlZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2M5OTtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWwgI2VtYWlsX21lc3NhZ2Uge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbiNtZWRpYUdhbGxlcnktdGFiQ29udGVudHMgLmZvb3RlciB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi8qIFBsYXkvUGF1c2UgLSBnYWxsZXJ5ICovXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL3BsYXlQYXVzZS1tZWRpdW0tb3Blbi1ibHVlSG92ZXIucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBhdXNlZFwiXSAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI0cHg7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00OHB4O1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl0gLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0cHggMDtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcGxheVBhdXNlW2RhdGEtc3RhdGU9XCJwbGF5aW5nXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yNHB4IC0yNHB4O1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl06YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yNHB4IC00OHB4O1xufVxuXG4vKiBQbGF5L1BhdXNlIC0gcGFnZSBlbGVtZW50ICovXG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wbGF5UGF1c2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL3BsYXlQYXVzZS1zbWFsbC1vcGVuLWJsdWVIb3Zlci5wbmdcIik7XG59XG5cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7XG59XG5cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4O1xufVxuXG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl0gLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggMDtcbn1cblxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcGxheVBhdXNlW2RhdGEtc3RhdGU9XCJwbGF5aW5nXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4O1xufVxuXG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl06YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0zMnB4O1xufVxuXG4vKiBzbWFsbCAqL1xuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXMgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL2Fycm93TGVmdC1zbWFsbC1vcGVuLWJsdWVIb3Zlci5wbmdcIik7XG59XG5cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLW5leHQgLmJ1dHRvbi1pbWFnZS1yaWdodCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYnV0dG9ucy9hcnJvd1JpZ2h0LXNtYWxsLW9wZW4tYmx1ZUhvdmVyLnBuZ1wiKTtcbn1cblxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtdmlld0FsbCAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2J1dHRvbnMvdmlld1NsaWRlc2hvdy1zbWFsbC1vcGVuLnBuZ1wiKTtcbn1cblxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXM6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dDpob3ZlciAuYnV0dG9uLWltYWdlLXJpZ2h0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtdmlld0FsbDpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNnB4O1xufVxuXG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wcmV2aW91czphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dDphY3RpdmUgLmJ1dHRvbi1pbWFnZS1yaWdodCxcbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXZpZXdBbGw6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMycHg7XG59XG5cbi8qIG1lZGl1bSAqL1xuI2J1dHRvbi1tZWRpYUdhbGxlcnktdmlld0NhcnQge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcHJldmlvdXMgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL2Fycm93TGVmdC1tZWRpdW0tb3Blbi1ibHVlSG92ZXIucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1uZXh0IC5idXR0b24taW1hZ2UtcmlnaHQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2J1dHRvbnMvYXJyb3dSaWdodC1tZWRpdW0tb3Blbi1ibHVlSG92ZXIucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXNoYXJlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktc2hhcmUgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktc2hhcmUgLmJ1dHRvbi1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZSAuYnV0dG9uLWNvbnRlbnQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZSAuYnV0dG9uLWNvbnRlbnQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxlZnQ6IDBweDtcbiAgY29udGVudDogXCJcXGYwMDNcIjtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktYWRkVG9DYXJ0IC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYnV0dG9ucy9jYXJ0LW1lZGl1bS1jaXJjbGUtZ3JlZW4ucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1lbXB0eUNhcnQgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL1gtbWVkaXVtLWNpcmNsZS1yZWQucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1idXlQaG90b3Mtc2hlbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9idXR0b25zL2Fycm93UmlnaHQtbWVkaXVtLWNpcmNsZS1ncmVlbi5wbmdcIik7XG59XG5cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsRm9ybSAudGFiLWNsb3NlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWxGb3JtIC50YWItY2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbEZvcm0gLnRhYi1jbG9zZSAuYnV0dG9uLWltYWdlLWxlZnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbWVkaWFHYWxsZXJ5LXNoYXJlQnlFbWFpbEZvcm0gLnRhYi1jbG9zZSAuYnV0dG9uLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsRm9ybSAudGFiLWNsb3NlIC5idXR0b24tY29udGVudDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlsRm9ybSAudGFiLWNsb3NlIC5idXR0b24tY29udGVudDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGVmdDogMHB4O1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1yZXR1cm46aG92ZXIgLmJ1dHRvbi1pbWFnZSxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LXByZXZpb3VzOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LW5leHQ6aG92ZXIgLmJ1dHRvbi1pbWFnZS1yaWdodCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LXNoYXJlOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LWFkZFRvQ2FydDpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1lbXB0eUNhcnQ6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktYnV5UGhvdG9zLXNoZWxsOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbi50YWItY2xvc2U6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjRweDtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuOmFjdGl2ZSAuYnV0dG9uLWltYWdlLFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcHJldmlvdXM6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LW5leHQ6YWN0aXZlIC5idXR0b24taW1hZ2UtcmlnaHQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZTphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktYWRkVG9DYXJ0OmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1lbXB0eUNhcnQ6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LWJ1eVBob3Rvcy1zaGVsbDphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLnRhYi1jbG9zZTphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDhweDtcbn1cblxuLyogbGFyZ2UgKi9cbiNidXR0b24tbWVkaWFHYWxsZXJ5LWFkZFBob3RvcyAuYnV0dG9uLWltYWdlLWxlZnQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1kb25lQWRkaW5nIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcGhvdG9fZ2FsbGVyeS9hZGRfcGhvdG8ucG5nXCIpO1xufVxuXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1yZXR1cm4gLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMycHg7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXJldHVybjphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNjRweDtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogaW5pdGlhbDtcbn1cblxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuIC5idXR0b24taW1hZ2UtbGVmdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXJldHVybiAuYnV0dG9uLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXJldHVybiAuYnV0dG9uLWNvbnRlbnQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXJldHVybiAuYnV0dG9uLWNvbnRlbnQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBsZWZ0OiA1cHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG59XG5cbi5lZGl0X21vZGUgLmdhbGxlcnlFbGVtZW50X2xpbmsge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Ntc1RhYkZvb3Rlci5naWZcIikgcmVwZWF0LXggbGVmdCBib3R0b20gI0ZERTg3MiAhaW1wb3J0YW50O1xufVxuXG4uZ2FsbGVyeUVsZW1lbnQgLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiB7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudCAucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIGltZyB7XG4gIG1hcmdpbjogMCAwIDE1cHg7XG59XG5cbi5nYWxsZXJ5RWxlbWVudCAucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIHAge1xuICBwYWRkaW5nOiAxNXB4IDAgMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGhvdG9fZ2FsbGVyeV9wcmV2aWV3IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGhvdG9fZ2FsbGVyeV9wcmV2aWV3IC5idXR0b24tbWVkaXVtIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI21lZGlhR2FsbGVyeS10YWJzLCAjbWVkaWFHYWxsZXJ5LXN0YXR1cyB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuI21lZGlhR2FsbGVyeVVwbG9hZGVyTm90ZXMge1xuICBtYXJnaW46IDE1cHggMCAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudG4zZS1pbWFnZSB7XG4gICAgLyogaGVpZ2h0OjI4MHB4ICFpbXBvcnRhbnQ7ICovXG4gIH1cbiAgI3RoZU1lZGlhR2FsbGVyeV9nYWxsZXJ5IC50bjNlLWdhbGxlcnkge1xuICAgIGhlaWdodDogNDAwcHggIWltcG9ydGFudDtcbiAgfVxuICAjbWVkaWFHYWxsZXJ5LXRhYnMsICNtZWRpYUdhbGxlcnktc3RhdHVzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDQwcHggMCAyMHB4IDA7XG4gIH1cbn1cblxuLmdhbGxlcnlFbGVtZW50IGFbY2xhc3MqPVwiYnV0dG9uLVwiXSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbiNsYldyYXBwZXIuZ2FsbGVyeUxpZ2h0Ym94IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUlO1xuICBsZWZ0OiA1JTtcbiAgcmlnaHQ6IDUlO1xuICBib3R0b206IDUlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94ICNsaWdodGJveEJvZHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ2FsbGVyeUl0ZW1XcmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsICMzMzMzMzMgMCUsIGJsYWNrIDEwMCUpO1xuICBwYWRkaW5nOiAwIDMwMHB4IDAgMDtcbiAgYm94LXNoYWRvdzogMCAzcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmdhbGxlcnlMaWdodGJveC5wb3J0cmFpdCAuZ2FsbGVyeUl0ZW1XcmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmdhbGxlcnlJdGVtQ29udGVudCB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1Db250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAzMDBweDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5nYWxsZXJ5TGlnaHRib3guZnVsbHNjcmVlbiAuZ2FsbGVyeUl0ZW1Db250ZW50IHtcbiAgei1pbmRleDogNjtcbn1cblxuLmdhbGxlcnlJdGVtQ29udGVudCAudmlkZW9fYXNwZWN0X3JhdGlvIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmdhbGxlcnlMaWdodGJveC5mdWxsc2NyZWVuIC5nYWxsZXJ5SXRlbU5leHQsXG4uZ2FsbGVyeUxpZ2h0Ym94LmZ1bGxzY3JlZW4gLmdhbGxlcnlJdGVtUHJldiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nYWxsZXJ5SXRlbUxvYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW46IC01MHB4IDAgMCAtMjAwcHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbG9hZGVyMi5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtTG9hZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC01MHB4O1xuICB0b3A6IDI1JTtcbn1cblxuLmdhbGxlcnlMaWdodGJveC5wb3J0cmFpdCAuZ2FsbGVyeUl0ZW1Db250ZW50IHtcbiAgYm90dG9tOiA1MCU7XG4gIHJpZ2h0OiAwO1xufVxuXG4uZ2FsbGVyeUl0ZW1Db250ZW50IC5nYWxsZXJ5SXRlbSxcbi5nYWxsZXJ5SXRlbUNvbnRlbnQgLmdhbGxlcnlJdGVtLnBob3RvIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZ2FsbGVyeUl0ZW1TdW1tYXJ5IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMzhweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgei1pbmRleDogMztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbVN1bW1hcnkge1xuICBjb2xvcjogI0ZGRjtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgcmlnaHQ6IDMwMHB4O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0IC5nYWxsZXJ5SXRlbVN1bW1hcnkge1xuICByaWdodDogMDtcbn1cblxuLmdhbGxlcnlJdGVtV3JhcHBlci5ob3ZlciAuZ2FsbGVyeUl0ZW1TdW1tYXJ5IHtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAwO1xufVxuXG4uZ2FsbGVyeUl0ZW1XcmFwcGVyLmhvdmVyLmhvdmVyU2lkZWJhciAuZ2FsbGVyeUl0ZW1TdW1tYXJ5IHtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiAtMzhweDtcbn1cblxuLmdhbGxlcnlJdGVtU3VtbWFyeSBoMyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4O1xufVxuXG4uZ2FsbGVyeUl0ZW1XcmFwcGVyIC5nYWxsZXJ5SXRlbVN1bW1hcnkgaDMgYSB7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5nYWxsZXJ5SXRlbVN1bW1hcnkgLmNvdW50IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmdhbGxlcnlJdGVtTGlua3Mge1xuICBmbG9hdDogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtTGlua3Mge1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xufVxuXG4uZ2FsbGVyeUl0ZW1MaW5rcyA+IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmdhbGxlcnlJdGVtU2hhcmVNZW51IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMHB4O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5nYWxsZXJ5SXRlbVdyYXBwZXIgLmdhbGxlcnlJdGVtU2hhcmVNZW51IHtcbiAgcmlnaHQ6IDMxMHB4O1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG5cbi5nYWxsZXJ5SXRlbVdyYXBwZXIuaG92ZXIgLmdhbGxlcnlJdGVtU2hhcmVNZW51IHtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAzOHB4O1xufVxuXG4uZ2FsbGVyeUl0ZW1XcmFwcGVyLmhvdmVyLmhvdmVyU2lkZWJhciAuZ2FsbGVyeUl0ZW1TaGFyZU1lbnUge1xuICBvcGFjaXR5OiAwO1xuICB0b3A6IDA7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtU2hhcmVNZW51IHtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5nYWxsZXJ5SXRlbVNoYXJlTWVudSBoMyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nYWxsZXJ5SXRlbVNoYXJlTWVudSAuc2hhcmVfbGlua3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZ2FsbGVyeUl0ZW1TaGFyZU1lbnUgLnNoYXJlX2xpbmtzIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4jbGJfZ2FsbGVyeVBob3RvSW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5nYWxsZXJ5SXRlbVNpZGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBvdmVyZmxvdzogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDMwMHB4O1xuICB6LWluZGV4OiAzO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0IC5nYWxsZXJ5SXRlbVNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiA1MCU7XG4gIGhlaWdodDogNTAlO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5sYXlvdXRDb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCAxNXB4IDE1cHg7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3ggLmxheW91dENvbnRhaW5lciAuY29sdW1uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5sYXlvdXRDb250YWluZXIgLnBhZ2VFbGVtZW50IHtcbiAgbWFyZ2luOiAxNXB4IDE1cHggMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZWRpdF9tb2RlIC5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtVGV4dCB7XG4gIG1hcmdpbjogMCAwIDE1cHggLTE1cHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMTVweCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybCgvYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmPzEyODUwNzc5NTQpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0REQTMwMTtcbn1cblxuLmdhbGxlcnlJdGVtVGV4dCAuYnlsaW5lIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uZ2FsbGVyeUl0ZW1UZXh0IC5ieWxpbmUgLm5hbWUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZ2FsbGVyeUl0ZW1UZXh0IC5tZXRhIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5nYWxsZXJ5SXRlbVRleHQgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjFweDtcbn1cblxuLmdhbGxlcnlJdGVtVGV4dCB0ZXh0YXJlYS5kZXNjcmlwdGlvbiB7XG4gIHdpZHRoOiA5NCU7XG4gIGhlaWdodDogMTIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREEzMDE7XG4gIHBhZGRpbmc6IDMlO1xuICBtYXJnaW46IDAgLTFweDtcbn1cblxuLmdhbGxlcnlJdGVtU2lkZWJhciAuZm9ybUJ1dHRvbnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5nYWxsZXJ5SXRlbVNpZGViYXIgLmZvcm1CdXR0b25zIC5idXR0b24tbWVkaXVtIHtcbiAgbWluLXdpZHRoOiAzMCU7XG59XG5cbi5nYWxsZXJ5SXRlbVNpZGViYXIgLmZvcm1CdXR0b25zIC5idXR0b24tbWVkaXVtOmRpc2FibGVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgbWFyZ2luOiAtMXB4O1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94ICNsaWdodGJveENsb3NlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdhbGxlcnlJdGVtV3JhcHBlciAjbGlnaHRib3hDbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDIxcHg7XG4gIGhlaWdodDogMjNweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcHggLTEwNDNweDtcbiAgei1pbmRleDogMztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgMCA3MCU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDAgNzAlO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCA3MCU7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgI2xpZ2h0Ym94Q2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3ggI2xpZ2h0Ym94Q2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG4uZWRpdF9tb2RlIC5nYWxsZXJ5TGlnaHRib3ggI2xpZ2h0Ym94Q2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFODcyO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbVByZXYsXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbU5leHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbVByZXYsXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbU5leHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjUlO1xuICBoZWlnaHQ6IDIwJTtcbiAgdG9wOiA0MCU7XG59XG5cbi5nYWxsZXJ5SXRlbU5leHQge1xuICByaWdodDogMDtcbn1cblxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1QcmV2IHNwYW4sXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbU5leHQgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNSU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNSU7XG4gIGJvcmRlci1yYWRpdXM6IDUlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3doaXRlX2Fycm93cy5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggMTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtUHJldiBzcGFuIHtcbiAgbGVmdDogMjBweDtcbn1cblxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1OZXh0IHNwYW4ge1xuICByaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0cHggMTBweDtcbn1cblxuLmdhbGxlcnlJdGVtQ29udGVudDpob3ZlciAuZ2FsbGVyeUl0ZW1QcmV2IHNwYW4sXG4uZ2FsbGVyeUl0ZW1Db250ZW50OmhvdmVyIC5nYWxsZXJ5SXRlbU5leHQgc3BhbiB7XG4gIG9wYWNpdHk6IC4zO1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5nYWxsZXJ5SXRlbVByZXY6aG92ZXIgc3Bhbixcbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtTmV4dDpob3ZlciBzcGFuIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cblxuLmdhbGxlcnlJdGVtVGV4dCBmb3JtIC5wcm9jZXNzaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXBwX2ltYWdlcy9sb2FkZXJCYXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xufVxuXG4vKi8gR0FMTEVSWSBJVEVNIFNIT1cgLyovXG4uZ2FsbGVyeUl0ZW1FbGVtZW50IHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgIzMzMzMzMyAwJSwgYmxhY2sgMTAwJSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5sYXlvdXRDb250YWluZXIgLmdhbGxlcnlJdGVtRWxlbWVudCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5nYWxsZXJ5SXRlbUVsZW1lbnQgLmdhbGxlcnlJdGVtLnBob3RvIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogNTAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5nYWxsZXJ5TGlnaHRib3ggLmNvbW1lbnRUaHJlYWRFbGVtZW50IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbiNsaWdodGJveCAuZ2FsbGVyeUxpZ2h0Ym94IC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgPiBoMyB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uZ2FsbGVyeUxpZ2h0Ym94IC5wYWdlRWxlbWVudEFkbWluIHtcbiAgbWFyZ2luOiAwIDE1cHggMTVweCAwO1xufVxuXG4vKi8gQURNSU4gVEhVTUJTIC8qL1xuI2dhbGxlcnlMaXN0LFxuLmdhbGxlcnlJdGVtTGlzdCB7XG4gIHBhZGRpbmc6IDIlO1xufVxuXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uICsgI2dhbGxlcnlMaXN0LFxuI21lZGlhR2FsbGVyeS1kZXNjcmlwdGlvbiArIC5nYWxsZXJ5SXRlbUxpc3Qge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLmdhbGxlcnlUaHVtYkFkbWluIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW46IDIlIC45JTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDI3LjUlO1xufVxuXG4uZ2FsbGVyeVRodW1iRGF0ZSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbWFyZ2luOiAtMiUgOCUgMDtcbn1cblxuLmdhbGxlcnlUaHVtYkFkbWluIC5hY3Rpb25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxMHB4IDAgNiU7XG59XG5cbi5nYWxsZXJ5VGh1bWJBZG1pbiAuYWN0aW9ucyBhOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmdhbGxlcnlUaHVtYkFkbWluIC5hY3Rpb25zIGE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmdhbGxlcnlUaHVtYkFkbWluIC5nYWxsZXJ5VGh1bWIsXG4uZ2FsbGVyeVRodW1iQWRtaW4gLmdhbGxlcnlJdGVtVGh1bWIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiA2JSA4JTtcbn1cblxuLyovIFRIVU1CUyAvKi9cbi5nYWxsZXJ5VGh1bWIsXG4uZ2FsbGVyeUl0ZW1UaHVtYiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luOiAxLjglO1xuICB3aWR0aDogMjklO1xuICBiYWNrZ3JvdW5kOiAjREREO1xufVxuXG4uZ2FsbGVyeVRodW1iIGEsXG4uZ2FsbGVyeUl0ZW1UaHVtYiBhLFxuLmdhbGxlcnlUaHVtYiBhOmhvdmVyLFxuLmdhbGxlcnlJdGVtVGh1bWIgYTpob3ZlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgcGFkZGluZzogN3B4O1xuICBjb2xvcjogIzExMTtcbn1cblxuLmdhbGxlcnlUaHVtYiAuaW1hZ2UsXG4uZ2FsbGVyeUl0ZW1UaHVtYiAuaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAzMyUgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNEREQ7XG59XG5cbi5nYWxsZXJ5VGh1bWIgaW1nLFxuLmdhbGxlcnlJdGVtVGh1bWIgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IC00MCUgMCAtMzglO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmdhbGxlcnlJdGVtVGh1bWIgKyBkaXYge1xuICBmb250LXNpemU6IC44NzVlbTtcbn1cblxuLyovIEdBTExFUlkgVEhVTUJTIE9OTFkgLyovXG4uZ2FsbGVyeVRodW1iIGEge1xuICBtYXJnaW46IC0xcHggLTJweCAxcHg7XG59XG5cbi5nYWxsZXJ5VGh1bWIgLm5hbWUge1xuICBwYWRkaW5nOiAwIDVweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZ2FsbGVyeVRodW1iIC5kYXRlIHtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmdhbGxlcnlUaHVtYiAuY291bnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogN3B4O1xuICByaWdodDogN3B4O1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyovIEdBTExFUlkgSVRFTVMgVEhVTUJTIE9OTFkgLyovXG4uZ2FsbGVyeUl0ZW1UaHVtYiB7XG4gIHdpZHRoOiAyMi41JTtcbiAgbWFyZ2luOiAuOSU7XG59XG5cbi5nYWxsZXJ5SXRlbUxpc3QgLmdhbGxlcnlUaHVtYkFkbWluIHtcbiAgd2lkdGg6IDE5JTtcbn1cblxuLyovIFNJREUgQkFSIC8qL1xuI2dhbGxlcnlTaWRlYmFyIHtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGJhY2tncm91bmQ6ICNFRUU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkge1xuICBwYWRkaW5nOiAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIC0xMHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgLTEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAuc3VtbWFyeSAuYnV0dG9uLW1lZGl1bSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgdWwge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMTVweCAwIC0xNHB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgbGkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFRUU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgbGk6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuI2dhbGxlcnlTaWRlYmFyIC5zdW1tYXJ5IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAuc3VtbWFyeSBsaSBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAuNzVlbTtcbn1cblxuI2dhbGxlcnlTaWRlYmFyIC5zdW1tYXJ5IGxpIHNwYW4ge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgaDMge1xuICBtYXJnaW46IDI1cHggMTVweCAxNXB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRjtcbn1cblxuI2dhbGxlcnlTaWRlYmFyIC5tZXRhIGxpIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggNDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREREO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ljb25zL21ldGFEYXRhSWNvbnMucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgbGkuZGF0ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNnB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgbGkudXNlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggLTk0cHg7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAubWV0YSBsaS5sb2NhdGlvbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggLTE5NHB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgbGkuZmlsZV9zaXplIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAtMjk0cHg7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAubWV0YSBsaS5nYWxsZXJ5IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAtMzk0cHg7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAuc2hhcmVfbGlua3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDEwcHggMTVweCAxNXB4O1xuICBwYWRkaW5nOiAwIDAgNXB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnNoYXJlX2xpbmtzIGxpIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW46IDEwcHggNXB4O1xufVxuXG4jZ2FsbGVyeVNpZGViYXIgLnNoYXJlX2xpbmtzIGEge1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMnB4IDVweCAycHggMjVweDtcbn1cblxuI2xpZ2h0Ym94ICNnYWxsZXJ5U2lkZWJhciAuZmJfZWRnZV9jb21tZW50X3dpZGdldC5mYl9pZnJhbWVfd2lkZ2V0IHtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICByaWdodDogMDtcbn1cblxuYm9keSAudG4zZS1nYWxsZXJ5IHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udG4zZS1wcmV2LCAudG4zZS1uZXh0IHtcbiAgYm90dG9tOiA1MCU7XG59XG5cbi50bjNlLXRleHQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDUlO1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYm9keSAudG4zZS10aHVtYnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnRuM2UtdGh1bWIgPiBkaXYge1xuICBtYXJnaW46IDJweCAwIDAgMnB4O1xufVxuXG4udG4zZS10aHVtYiBpbWcge1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9oaWVyYXJjaHlMaW5lcy5naWZcIik7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogOTUlO1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgMCAwIDVweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaGllcmFyY2h5QXR0YWNoLmdpZlwiKSBuby1yZXBlYXQgMCAxMnB4O1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5IGxpIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDY1cHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgbGkuc2VsZWN0ZWQgPiBkaXYgaDMgYSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGQ0NEMjI7XG4gIGJhY2tncm91bmQ6ICNGRUVDOEY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAycHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSAubm9kZVRpdGxlIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5IC5zdWJ0bGUgLm5vZGVUaXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLnN1YnRsZSAubm9kZVRpdGxlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLnBlcm1pc3Npb25zIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLnBlcm1pc3Npb25zIHNwYW4gLmVuYWJsZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogaGFuZDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBsaSBkaXYge1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgLm5vZGVBc3NldCB7XG4gIHBhZGRpbmc6IDAgNXB4IDRweCAxMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBzcGFuIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSAubGFzdExpIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9oaWVyYXJjaHlBdHRhY2hMYXN0LmdpZlwiKSBuby1yZXBlYXQgMCAxMnB4O1xufVxuXG4uY21zQWNjZXNzIC5wcml2YXRlIHtcbiAgY29sb3I6ICNDQzAwMDA7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZGlzYWJsZWRQcml2YXRlUHVibGljSWNvbi5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IC0xMTZweDtcbn1cblxuLmNtc0FjY2VzcyAuZGlzYWJsZWQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Rpc2FibGVkUHJpdmF0ZVB1YmxpY0ljb24ucG5nXCIpIG5vLXJlcGVhdCByaWdodCAwO1xufVxuXG4uY21zQWNjZXNzIC5wdWJsaWMge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2Rpc2FibGVkUHJpdmF0ZVB1YmxpY0ljb24ucG5nXCIpIG5vLXJlcGVhdCByaWdodCAtMjMycHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLmRpc2FibGVkLCAudW5saW1pdGVkSGllcmFyY2h5IC5kaXNhYmxlZCBhIHtcbiAgY29sb3I6ICM3Nzc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNtc0FjY2VzcyAucGVybWlzc2lvbnMgLmRpc2FibGVkIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnBlcm1pc3Npb25zSGVhZGVyIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTQwJTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMTBweCAwIDVweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogQ29sbGVjdG9yIFRyZWUgKi9cbi5jb2xsZWN0b3JUcmVlIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsZWN0b3JUcmVlIC5pdGVtIC5pbmZvIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uY29sbGVjdG9yVHJlZSBoNCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4uY29sbGVjdG9yVHJlZSBsaSBoNCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29sbGVjdG9yVHJlZSBhIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIG9uIHdoaXRlICovXG4udW5saW1pdGVkSGllcmFyY2h5V2hpdGUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUxpbmVzV2hpdGUuZ2lmXCIpO1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5V2hpdGUgbGkgZGl2IHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeVdoaXRlIC5sYXN0TGkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaExhc3RXaGl0ZS5naWZcIik7XG59XG5cbi8qIENNUyB0d2Vha3MgKi9cbi5yYXBpZENvbnRlbnRHZW5lcmFsIC5lZGl0UGVybWlzc2lvbnMgbGkgZGl2IHtcbiAgYmFja2dyb3VuZDogI2ZlZjdkMDtcbn1cblxuLnJhcGlkQ29udGVudEdlbmVyYWwgLmVkaXRQZXJtaXNzaW9ucyAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9oaWVyYXJjaHlMaW5lc0NNUy5naWZcIik7XG59XG5cbi5yYXBpZENvbnRlbnRHZW5lcmFsIC5lZGl0UGVybWlzc2lvbnMgLnVubGltaXRlZEhpZXJhcmNoeSBsaSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaGllcmFyY2h5QXR0YWNoQ01TLmdpZlwiKTtcbn1cblxuLnJhcGlkQ29udGVudEdlbmVyYWwgLmVkaXRQZXJtaXNzaW9ucyAudW5saW1pdGVkSGllcmFyY2h5IC5sYXN0TGkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaExhc3RDTVMuZ2lmXCIpO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNGQ0NEMjI7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGhlaWdodDogMzAwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IGgzIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4jbGlnaHRib3ggLnVubGltaXRlZEhpZXJhcmNoeSBsaSBkaXYge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmZWY3ZDA7XG59XG5cbiNsaWdodGJveCAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgYmFja2dyb3VuZDogI2ZlZjdkMCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUxpbmVzQ01TLmdpZlwiKTtcbn1cblxuI2xpZ2h0Ym94IC51bmxpbWl0ZWRIaWVyYXJjaHkgLmxhc3RMaSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvaGllcmFyY2h5QXR0YWNoTGFzdENNUy5naWZcIik7XG59XG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgZGl2IHtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgYmFja2dyb3VuZDogI0ZGRiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUxpbmVzV2hpdGUuZ2lmXCIpO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IC5sYXN0TGkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaExhc3RXaGl0ZS5naWZcIik7XG59XG5cbi5wZXJtaXNzaW9uc0hlbHAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Blcm1pc3Npb25zSGVscC5wbmdcIik7XG4gIHRleHQtaW5kZW50OiA0M3B4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qIENvbnRlbnQgVGFiYmVkIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29udGVudFRhYnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDA1NEE2ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250ZW50VGFiczphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uY29udGVudFRhYnM6YmVmb3JlLCAuY29udGVudFRhYnM6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5jb250ZW50VGFicyBsaSB7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGVhc2UtaW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb250ZW50VGFicyBsaSBzcGFuIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb250ZW50VGFicyBsaSBzcGFuIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAuOWVtO1xuICBmb250OiA0MDAgMTNweC8xLjUgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4IHdoaXRlO1xuICBib3JkZXItbGVmdDogc29saWQgMXB4IHdoaXRlO1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCB3aGl0ZTtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5jb250ZW50VGFicyBsaSBzcGFuIGEgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmNvbnRlbnRUYWJzIGxpLnNlbGVjdGVkIHNwYW4gYSB7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjMDA1NEE2O1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICMwMDU0QTY7XG4gIGJvcmRlci1yaWdodDogc29saWQgMXB4ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogLjllbTtcbiAgZm9udDogYm9sZCAxM3B4LzEuNSBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwMDU0QTY7XG59XG5cbi5jb250ZW50VGFicyBsaS5zZWxlY3RlZCBzcGFuIGE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3R0b206IC0xcHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmNvbnRlbnRUYWJzLnJhcGlkVGFic0NvbnN0cnVjdGlvbiBhLnRhYkxpbmsge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAucm9zdGVyUGxheWVyU3RhdEVsZW1lbnQgLmNvbnRlbnRUYWJzIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uZGF0YVRhYmxlIC5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5kYXRhVGFibGUgLmRpc2FibGVkOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIExvYWRpbmcgVGFiIEFuaW1hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNjb250ZW50VGFic0xvYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDI1cHg7XG59XG5cbi8qIFJhcGlkIFRhYnMgQ29uc3RydWN0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkVGFic0NvbnN0cnVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNGRERENDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjRERBMzAxO1xuICBwYWRkaW5nOiAwIDAgMXB4O1xufVxuXG4ucmFwaWRUYWJzQ29uc3RydWN0aW9uIGxpIHtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggI0REQTMwMTtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnJhcGlkVGFic0NvbnN0cnVjdGlvbiBsaSBhIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucmFwaWRUYWJzQ29uc3RydWN0aW9uIGxpIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5yYXBpZFRhYnNDb25zdHJ1Y3Rpb24gbGkgc3BhbiBhIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4ucmFwaWRUYWJzQ29uc3RydWN0aW9uIC5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNGREU4NzI7XG59XG5cbi5zbi1zaXRlLWxvZ28ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qICBTaGFyZWQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI21vbnRoVmlld0NhbGVuZGFyIC52ZXZlbnQgLm5vRW50cnksXG4jbW9udGhfbGlzdCAudmV2ZW50IC5ub0VudHJ5LFxuI2RheVZpZXdDYWxlbmRhciAudmV2ZW50IC5ub0VudHJ5LFxuI2V2ZW50X3Nob3cgLnZldmVudCAubm9FbnRyeSB7XG4gIG1hcmdpbi10b3A6IGluaXRpYWw7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBib3JkZXItdG9wOiBpbml0aWFsO1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLmNhcHRpb24sXG4jbW9udGhfbmF2aWdhdGlvbiBoMixcbiNkYXlWaWV3Q2FsZW5kYXIgaDIge1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzMzMztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAjbW9udGhWaWV3Q2FsZW5kYXIgLmNhcHRpb24sXG4gICNtb250aF9uYXZpZ2F0aW9uIGgyLFxuICAjZGF5Vmlld0NhbGVuZGFyIGgyIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbn1cblxuI21vbnRoVmlld0NhbGVuZGFyIC5jYXB0aW9uIGEsXG4jbW9udGhfbmF2aWdhdGlvbiBoMiBhLFxuI2RheVZpZXdDYWxlbmRhciBoMiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLmNhcHRpb24gYTphZnRlcixcbiNtb250aF9uYXZpZ2F0aW9uIGgyIGE6YWZ0ZXIsXG4jZGF5Vmlld0NhbGVuZGFyIGgyIGE6YWZ0ZXIge1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxLjVyZW0vMSBGb250QXdlc29tZTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgY29sb3I6ICMwMDU0QTY7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciAuY2FwdGlvbiBhOmZpcnN0LWNoaWxkOmFmdGVyLFxuI21vbnRoX25hdmlnYXRpb24gaDIgYTpmaXJzdC1jaGlsZDphZnRlcixcbiNkYXlWaWV3Q2FsZW5kYXIgaDIgYTpmaXJzdC1jaGlsZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG4gIG1hcmdpbi1yaWdodDogMXZ3O1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLmNhcHRpb24gYTpsYXN0LWNoaWxkOmFmdGVyLFxuI21vbnRoX25hdmlnYXRpb24gaDIgYTpsYXN0LWNoaWxkOmFmdGVyLFxuI2RheVZpZXdDYWxlbmRhciBoMiBhOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICBtYXJnaW4tbGVmdDogMXZ3O1xufVxuXG4jbW9udGhfbmF2aWdhdGlvbiBoMixcbiNkYXlWaWV3Q2FsZW5kYXIgaDIge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4vKiAgTW9udGggVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNtb250aFZpZXdDYWxlbmRhciB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciB0aCxcbiNtb250aFZpZXdDYWxlbmRhciB0ZCB7XG4gIGJvcmRlcjogc29saWQgMnB4ICNmZmY7XG4gIHBhZGRpbmc6IDRweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRBNjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICNtb250aFZpZXdDYWxlbmRhciB0aCB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG4gICNtb250aFZpZXdDYWxlbmRhciB0aDpmaXJzdC1sZXR0ZXIge1xuICAgIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICNtb250aFZpZXdDYWxlbmRhciB0aCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgdGQge1xuICBoZWlnaHQ6IDc1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgI21vbnRoVmlld0NhbGVuZGFyIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuI21vbnRoVmlld0NhbGVuZGFyIHVsLFxuI21vbnRoVmlld0NhbGVuZGFyIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLnZldmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciAuc3VtbWFyeSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbTogLjI1ZW07XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciAuZGVzY3JpcHRpb24sXG4jbW9udGhWaWV3Q2FsZW5kYXIgLnR5cGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLnRhZ3Mge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciAudG9kYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICMwMDU0QTY7XG59XG5cbiNtb250aFZpZXdDYWxlbmRhciAuZGF0ZUxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI21vbnRoVmlld0NhbGVuZGFyIC5kYXRlTGluayxcbiNtb250aFZpZXdDYWxlbmRhciAub3RoZXJNb250aCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLm90aGVyTW9udGgge1xuICBjb2xvcjogI2RkZDtcbn1cblxuLyogIERheSBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2RheVZpZXdDYWxlbmRhckV2ZW50cyAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSxcbiNkYXlWaWV3Q2FsZW5kYXJFdmVudHMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRldGFpbHMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi8qICBNb250aCBMaXN0IFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbW9udGhfbGlzdCAudmV2ZW50IC5sb2NhdGlvbixcbiNldmVudF9zaG93IC52ZXZlbnQgLmxvY2F0aW9uIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbiNtb250aF9saXN0IC5zaG93TW9yZUV2ZW50cyxcbiNldmVudF9zaG93IC5zaG93TW9yZUV2ZW50cyB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICBwYWRkaW5nOiA1cHggNXB4IDVweCA0MHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKiAgRXZlbnQgU2hvd1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNldmVudF9zaG93ICsgLmV2ZW50VGFncyB7XG4gIG1hcmdpbi10b3A6IC0yNXB4O1xufVxuXG4jZXZlbnRfc2hvdyB+IC5ldmVudFRhZ3Mge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogOTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjBweCkge1xuICAjZXZlbnRfc2hvdyB+IC5ldmVudFRhZ3Mge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4jZXZlbnRfc2hvdyB+IC5ldmVudENvbnRlbnROb2RlIHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjZGRkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbn1cblxuI2V2ZW50X3Nob3cgfiAuZXZlbnRDb250ZW50Tm9kZSB+IC5ldmVudFRhZ3Mge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjZGRkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbn1cblxuLyogIERpYiBJdGVtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmRpYkl0ZW0gLmxvY2F0aW9uLFxuLmRpYkl0ZW0gLnRhZ3MsXG4uZGliSXRlbSAudHlwZSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5kaWJJdGVtIC50aW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5kaWJJdGVtIC52ZXZlbnQgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi8qICBpQ2FsIEV2ZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pY2FsX2ljb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMC41ZW0gMCAwIDAuM2VtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTRweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAjbW9udGhWaWV3Q2FsZW5kYXIgLmljYWxfaWNvbiB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwIC4zZW0gMCAwO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuLmljc19maWxlX2Rvd25sb2FkLFxuLmFnZ3JlZ2F0b3JFbGVtZW50IGEgLmljc19maWxlX2Rvd25sb2FkIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qICBTaG93IE1vcmUgTGlua1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaG93TW9yZUV2ZW50cyBzbWFsbCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyogRGliIEFnZ3JlZ2F0b3IgKi9cbi5hZ2dyZWdhdG9yRWxlbWVudC5kaWJBZ2dyZWdhdG9yRWxlbWVudCAudmV2ZW50IC5kYXRlSW1hZ2UsXG4uYWdncmVnYXRvckVsZW1lbnQuZGliQWdncmVnYXRvckVsZW1lbnQgLnZldmVudCAuZGF0ZUltYWdlIGltZyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmRpYkFnZ3JlZ2F0b3JFbGVtZW50IC52ZXZlbnQge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2RkZDtcbiAgcGFkZGluZzogMjZweCAwcHg7XG59XG5cbi5kaWJBZ2dyZWdhdG9yRWxlbWVudCAudmV2ZW50OmZpcnN0LW9mLXR5cGUge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uZGliQWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSB7XG4gIHdpZHRoOiA3NXB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5kaWJBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSxcbi5kaWJBZ2dyZWdhdG9yRWxlbWVudCAuZGV0YWlscyB7XG4gIHBhZGRpbmctbGVmdDogODVweDtcbn1cblxuLmRpYkFnZ3JlZ2F0b3JFbGVtZW50IC5kZXRhaWxzIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmRpYkFnZ3JlZ2F0b3JFbGVtZW50IC5kYXRlIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uZGliQWdncmVnYXRvckVsZW1lbnQgLnRpbWUge1xuICBmb250LXNpemU6IC43NWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmRpYkFnZ3JlZ2F0b3JFbGVtZW50IC5jcmVkaXRzIHtcbiAgY29sb3I6ICM5OTk7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xufVxuXG4uZGliQWdncmVnYXRvckVsZW1lbnQgLmNyZWRpdHMgc3BhbiB7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuXG4vKiBEaWIgU2Vzc2lvbiAqL1xuLmRpYlNlc3Npb24ge1xuICBwYWRkaW5nOiAxZW07XG4gIGJhY2tncm91bmQ6ICNFRkVGRUY7XG4gIG1hcmdpbjogLjVlbSAwIDFlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kaWJTZXNzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHVybChcIi9hcHBfaW1hZ2VzL2ljb24tZGlicy1oZXJvLWxpZ2h0LnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBwYWRkaW5nOiAxZW07XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5kaWJTZXNzaW9uIGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIG1hcmdpbjogMCAwIDAgMi41cmVtO1xufVxuXG4uZGliU2Vzc2lvbiA+IHVsIHtcbiAgbWFyZ2luOiAwIDAgMCAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5kaWJTZXNzaW9uIC5jcmVkaXRTdGF0dXMge1xuICBmb250LXNpemU6IC43NWVtO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmRpYlNlc3Npb24gLmNyZWRpdFN0YXR1cyBzdHJvbmcge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmRpYlNlc3Npb24gLmRlc2NyaXB0aW9uIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5kaWJTZXNzaW9uIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uZGliU2Vzc2lvbiBsaSBwIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jdGFiX2RpYl9pdGVtc191c2VyX2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogLjc1ZW07XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKiBEaWIgVGFibGUgKi9cbiNkaWJfaXRlbXNfdGFibGUge1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG59XG5cbiNkaWJfaXRlbXNfdGFibGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jZGliX2l0ZW1zX3RhYmxlIC5hamF4X3NvcnQgPiBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZGliX2l0ZW1zX3RhYmxlIHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnVzZXJfbW9kZSAjZGliX2l0ZW1zX3RhYmxlIC5hamF4X3NvcnQ6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udXNlcl9tb2RlICNkaWJfaXRlbXNfdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udXNlcl9tb2RlICNkaWJfaXRlbXNfdGFibGUgdGQ6Zmlyc3QtY2hpbGQgc3Ryb25nIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTgwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uZWRpdF9tb2RlICNkaWJfaXRlbXNfdGFibGUgLmFqYXhfc29ydDpudGgtY2hpbGQoMikge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZWRpdF9tb2RlICNkaWJfaXRlbXNfdGFibGUgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmVkaXRfbW9kZSAjZGliX2l0ZW1zX3RhYmxlIHRkOm50aC1jaGlsZCgyKSBzdHJvbmcge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxODBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbiNkaWJfaXRlbXNfZGl2IC5hY3Rpb25MaW5rcyB7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAxZW0gMDtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4jZGliX2l0ZW1zX2RpdiAuYWN0aW9uTGlua3MgYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4jZGliX2l0ZW1zX2RpdiAuYWN0aW9uTGlua3Mgc3BhbiB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4jZGliX2l0ZW1zX2RpdiAuYWN0aW9uTGlua3MgLmxpbmtTZXQxIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbiNkaWJfaXRlbXNfZGl2IC5hY3Rpb25MaW5rcyAubGlua1NldDIgLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuI2RpYl9pdGVtc19kaXYgZm9ybSNkaWJfaXRlbV9mb3JtIHtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKiBEaWIgSXRlbSAqL1xuLmRpYkl0ZW0gLnZldmVudCB7XG4gIHdpZHRoOiA2MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZGliSXRlbSAudmV2ZW50IHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmRpYkl0ZW0gLnN1bW1hcnkge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogMS4yNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kaWJJdGVtIC5zdW1tYXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHVybChcIi9hcHBfaW1hZ2VzL2ljb24tZGlicy1oZXJvLWxpZ2h0LnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBwYWRkaW5nOiAuNzVlbTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IC0xLjVlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZGliSXRlbSAuZGV0YWlscyB7XG4gIHdpZHRoOiAzMCU7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYmFja2dyb3VuZDogI0VGRUZFRjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uZGliSXRlbSAuZGV0YWlscyBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2NjYztcbn1cblxuLmRpYkl0ZW0gLmRldGFpbHMgbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogRGlicyBDYWxlbmRhciBNb2RzICovXG4jdGFiX2RpYl9pdGVtX21vbnRoX2NvbnRlbnQgI21vbnRoVmlld0NhbGVuZGFyIC50b2RheSB7XG4gIGJhY2tncm91bmQ6ICNFRUU7XG59XG5cbiN0YWJfZGliX2l0ZW1fbW9udGhfY29udGVudCAjbW9udGhWaWV3Q2FsZW5kYXIgLnRvZGF5IGEge1xuICBjb2xvcjogIzAwNTRBNjtcbn1cblxuLyogRGliIExheW91dCBNb2RzICovXG4jZGlic1Rvb2wgI3BhZ2VDb250ZW50Q29udGFpbmVyICNkaXNwbGF5Qm9keUNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoPCU9IGFzc2V0X3BhdGhfZm9yKFwiL2FwcF9pbWFnZXMvZGlic19oZWFkZXIuanBnXCIpICU+KSByZXBlYXQteCB0b3AgY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG59XG5cbiNkaWJzVG9vbCAjcGFuZWxPbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZGlic1Rvb2wgI3NpdGVDb250YWluZXIyICNwYW5lbFR3byB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jZGlic1Rvb2wgI3NpdGVDb250YWluZXIyICNkaXNwbGF5Qm9keUhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIERpYiBJdGVtIEZpbHRlciAqL1xuLmRpYnNGaWx0ZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLmRpYnNGaWx0ZXI6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kaWJzRmlsdGVyIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5kaWJzRmlsdGVyIGlucHV0IHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLmRpYnNGaWx0ZXIgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiAwIDNweCAwIDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uZGlic0ZpbHRlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIG1hcmdpbi1ib3R0b206IC00cHg7XG4gIHBhZGRpbmc6IDNweCA1cHg7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMXMgZWFzZTtcbn1cblxuLmRpYnNGaWx0ZXIgaW5wdXRbdHlwZT1cInRleHRcIl06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICM2NjY7XG59XG5cbi5kaWJzRmlsdGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA1NEE2O1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZGlic0ZpbHRlciBzZWxlY3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIG1heC13aWR0aDogMTMwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kaWJzRmlsdGVyIHNtYWxsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uZGlic0ZpbHRlciAuZmlsdGVyLWNvbHVtbiB7XG4gIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiAwIDIwcHggN3B4IDA7XG59XG5cbi5kaWJzRmlsdGVyIC5maWx0ZXItY29sdW1uOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmRpYnNGaWx0ZXIgLmZpbHRlci1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmRpYnNGaWx0ZXIgLmZpbHRlci1kYXRlcyBsYWJlbCB7XG4gIG1pbi13aWR0aDogM2VtO1xufVxuXG4uZGlic0ZpbHRlciAjY3JlZGl0cyB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBtYXgtd2lkdGg6IDRlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg4MHB4KSB7XG4gIC5kaWJzRmlsdGVyIC5maWx0ZXItY29sdW1uIHtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDMzLjMlO1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAzMy4zJTtcbiAgICBmbGV4LWJhc2lzOiAzMy4zJTtcbiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMDtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gIH1cbiAgLmRpYnNGaWx0ZXIgLmZpbHRlci1idXR0b24ge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5kaWJzRmlsdGVyIC5maWx0ZXItY29sdW1uIHtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDUwJTtcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogNTAlO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgfVxufVxuXG4vKiBQcm9maWxlIFRva2Vuc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRva2VucyBhbmQgTWluaVRva2VucyAqL1xuLnByb2ZpbGVUb2tlbiwgLnByb2ZpbGVNaW5pVG9rZW4ge1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAucHJvZmlsZVRva2VuIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLnByb2ZpbGVUb2tlbiBpbWcsIC5wcm9maWxlTWluaVRva2VuIGltZywgI3Byb2ZpbGVBdmF0YXJEaXNwbGF5IGltZyB7XG4gIF9tYXJnaW4tYm90dG9tOiAtMnB4O1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbWFnZSwgLnByb2ZpbGVNaW5pVG9rZW4gLmltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDEwcHggMCA1cHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNEREQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnByb2ZpbGVUb2tlbiAuaW1hZ2UgaW1nLCAucHJvZmlsZU1pbmlUb2tlbiAuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogLTElO1xuICBsZWZ0OiAtMSU7XG4gIHdpZHRoOiAxMDMlO1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIHtcbiAgaGVpZ2h0OiA3MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uc3ViUGFuZWxBIC5wcm9maWxlVG9rZW4gLmluZm8gLnByb2ZpbGVOYW1lIHtcbiAgd2lkdGg6IDIwMHB4O1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5wcm9maWxlVG9rZW4gLmluZm8gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmluZm8gLnByb2ZpbGVOYW1lLCAuaW5mbyAucHJvZmlsZU5hbWUgYSB7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5wcm9maWxlTWluaVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyAucHJvZmlsZU5hbWUgYSB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSAudHlwZSwgLm1pbmlQZXJzb25hIC50eXBlIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmluZm8gLnByb2ZpbGVOYW1lIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnByb2ZpbGVUb2tlbiAuaW5mbyAubmV0d29ya0xhYmVsLCAucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyAubmV0d29ya0xhYmVsIHtcbiAgY29sb3I6ICNDQ0M7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5uZXR3b3JrTGFiZWwgYSB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyAubmV0d29ya0JhZGdlcyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA1cHggNXB4IDAgMDtcbn1cblxuLmluZm8gLm5ldHdvcmtCYWRnZXMgaW1nIHtcbiAgcGFkZGluZzogMXB4O1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xufVxuXG4ucHJvZmlsZVRva2VuIC50b2tlbkFjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Byb2ZpbGVfdG9rZW5fYWN0aW9ucy5qcGdcIikgbm8tcmVwZWF0IHRvcCByaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW4gLmluZm8gLnRva2VuQWN0aW9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMXB4IDVweDtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW4gLnRva2VuQWN0aW9ucyBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIHBhZGRpbmctbGVmdDogMjJweDtcbn1cblxuLnByb2ZpbGVUb2tlbiAudG9rZW5IaWVyYXJjaHkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Byb2ZpbGVfdG9rZW5faGllcmFyY2h5LmpwZ1wiKSBuby1yZXBlYXQgNDAwcHggMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnByb2ZpbGVUb2tlbiAuYWN0aW9ucyB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogM3B4IDNweCAwIDA7XG4gIGNvbG9yOiAjQ0NDO1xufVxuXG4ucHJvZmlsZVRva2VuIC5hY3Rpb25zIGEge1xuICBjb2xvcjogI0NDQztcbn1cblxuLnByb2ZpbGVUb2tlbiAuYWN0aW9ucyBhOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLnByb2ZpbGVUb2tlbiAuYWN0aW9ucyB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4ucHJvZmlsZVRva2VuQWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJvZmlsZVRva2VuQWN0aW9uIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tdG9wOiAyNXB4O1xufVxuXG4jbmV3X2Z1bGxfbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogNjZweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyAudG9rZW5BY3Rpb25zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgfVxufVxuXG4vKiBPd25lciAqL1xuLnByb2ZpbGVNaW5pVG9rZW4gLm93bmVyIC5wcm9maWxlTmFtZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE3cHg7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21pbmlfdG9rZW5faGllcmFyY2h5LmpwZ1wiKSBuby1yZXBlYXQgdG9wIHJpZ2h0O1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAub3duZXIgLmltYWdlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAub3duZXIgaW1nIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiA1cHggN3B4IDVweCA1cHg7XG59XG5cbi5wcm9maWxlTWluaVRva2VuIC5vd25lciAucHJvZmlsZU5hbWUge1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAub3duZXIgLnByb2ZpbGVOYW1lIGEge1xuICBjb2xvcjogI0NDQztcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4vKiBNYXN0ZXIgVG9rZW4gKi9cbi5tYXN0ZXJQcm9maWxlIC5tYXN0ZXJQcm9maWxlVG9rZW4ge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qIFN1YiBUb2tlbnMgKi9cbi5zdWJQcm9maWxlVG9rZW4ge1xuICBiYWNrZ3JvdW5kOiAjYjJiMmIyIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcHJvZmlsZV90b2tlbl9iYWNrX3N1Yi5qcGdcIikgcmVwZWF0LXg7XG4gIGJvcmRlcjogc29saWQgMnB4ICNCQUJBQkE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmltYWdlIGltZywgLnByb2ZpbGVUb2tlbiAuaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC50b2tlbkFjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Byb2ZpbGVfdG9rZW5fYWN0aW9uc19zdWIuanBnXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmluZm8gLnByb2ZpbGVOYW1lLCAuc3ViUHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSBhIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5hY3Rpb25zIHtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5hY3Rpb25zIGEge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuYWN0aW9ucyBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmluZm8gLm5ldHdvcmtMYWJlbCB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5pbmZvIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW5mbyAubmV0d29ya0JhZGdlcyB7XG4gIG1hcmdpbjogM3B4IDAgMDtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW5mbyAubmV0d29ya0JhZGdlcyBpbWcge1xuICBib3JkZXItY29sb3I6ICM2NjY7XG59XG5cbi50cmFuc2Zlck9wdGlvbnMge1xuICBtYXJnaW46IC0ycHggMCAycHg7XG4gIHBhZGRpbmc6IDJweCAwIDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xufVxuXG4vKiBtaW5pUGVyc29uYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5taW5pUGVyc29uYSB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNDQ0M7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgYmFja2dyb3VuZDogI0RERCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3VzZXIvc3VidGxlX2dyYWRpZW50XzEucG5nXCIpIHJlcGVhdC14IHRvcCBsZWZ0O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLm1pbmlQZXJzb25hLnNlbGVjdGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xufVxuXG4ubWluaVBlcnNvbmFGb3JtIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC00cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xufVxuXG4ubWluaVBlcnNvbmFGb3JtIC5mb3JtRWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi5taW5pUGVyc29uYS5zZWxlY3RlZCArIC5taW5pUGVyc29uYUZvcm0ge1xuICBib3JkZXItY29sb3I6ICM5OTk7XG59XG5cbi5taW5pUGVyc29uYSBpbnB1dCB7XG4gIG1hcmdpbjogOHB4IDEwcHggMCA4cHg7XG4gIF9tYXJnaW46IDVweCAxMHB4IDAgOHB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuLm1pbmlQZXJzb25hIC50b2dnbGVfbWVtYmVyc2hpcCB7XG4gIG1hcmdpbjogNXB4IDVweCAwIDA7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLm1pbmlQZXJzb25hIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xufVxuXG4ubWluaVBlcnNvbmEgLnByb2ZpbGVQaWMge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLm1pbmlQZXJzb25hIGltZyB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5taW5pUGVyc29uYSAubmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4ubWluaVBlcnNvbmEgLm5hbWUgYSB7XG4gIGNvbG9yOiAjOTAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5taW5pUGVyc29uYSAubmFtZSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmMDA7XG59XG5cbi5taW5pUGVyc29uYS5wZW5kaW5nIHtcbiAgYmFja2dyb3VuZDogI0VGRUZFRjtcbiAgYm9yZGVyLWNvbG9yOiAjQ0NDO1xufVxuXG4ubWluaVBlcnNvbmEub3duZXIgLm5hbWUge1xuICBsaW5lLWhlaWdodDogMTEwJTtcbn1cblxuLm1pbmlQZXJzb25hLnBlbmRpbmcgLm5hbWUge1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4ubWluaVBlcnNvbmEgZW0ge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbn1cblxuLm1pbmlQZXJzb25hIC5yZXF1aXJlZCBlbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmYwMDAwO1xufVxuXG4ubWluaVBlcnNvbmEgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5taW5pUGVyc29uYSAubmFtZSBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5yZXN1bHRzVGFibGUgLm1pbmlQZXJzb25hIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmRhdGFUYWJsZSAubWluaVBlcnNvbmEge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjRkZGO1xufVxuXG4uZGF0YVRhYmxlIC5taW5pUGVyc29uYSB0ZCB7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm9yZGVyOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uZGF0YVRhYmxlIC5taW5pUGVyc29uYSAubW9yZUluZm8ge1xuICB3aWR0aDogNTAlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZzogM3B4IDVweCAzcHggMnB4O1xufVxuXG4vKiBOZXcgQ29tbXVuaWNhdGlvbiBFbWFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5uZXdDb21tdW5pY2F0aW9uRW1haWwge1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG5cbi8qIE1lbWJlciBEaXJlY3RvcnkgVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucHJvZmlsZVRva2VuIC5hZG1pbk9wdGlvbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiA4cHg7XG59XG5cbi5wcm9maWxlVG9rZW4gLmFkbWluT3B0aW9ucyBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0ycHg7XG59XG5cbi5wcm9maWxlVG9rZW4gLmFkbWluT3B0aW9ucyAuYXNzdW1lX3VzZXIge1xuICBtYXJnaW4tbGVmdDogOHB4O1xufVxuXG4vKiBNZW1iZXIgU3RhdHVzICovXG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTJweDtcbn1cblxuLnByb2ZpbGVQaWNrZXIgLnN0YXR1cyBhLmhlbHAgaW1nIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjOTk5IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdXNlci9idXR0b25fYmcucG5nXCIpIGxlZnQgY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICBwYWRkaW5nOiA3cHggNnB4IDJweDtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDRweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cbi5wcm9maWxlUGlja2VyIC5oZWxwIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgcGFkZGluZzogN3B4IDdweCA2cHggNXB4O1xuICBtYXJnaW46IC03cHggLTZweCAtN3B4IDFweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDlweCA5cHggMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDlweCA5cHggMDtcbiAgYm9yZGVyLXJhZGl1czogMCA5cHggOXB4IDA7XG59XG5cbi5wcm9maWxlUGlja2VyIC5zdGF0dXMuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5MDtcbn1cblxuLnByb2ZpbGVQaWNrZXIgLnN0YXR1cy5ibGFja2xpc3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MDA7XG59XG5cbi5wcm9maWxlUGlja2VyIC5zdGF0dXMuYWN0aXZlLWluY29tcGxldGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjk2O1xufVxuXG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzLmFwcHJvdmFsLW5lZWRlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NzA7XG59XG5cbi5wcm9maWxlUGlja2VyIC5zdGF0dXMucHJvY2Vzc2luZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcHJvY2Vzc2luZ19iZy5naWZcIik7XG59XG5cbi8qIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnaW5hdGlvbkVsZW1lbnQsIC5kaXJlY3RvcnlTZWFyY2hFbGVtZW50LCAuZmlsdGVyRWxlbWVudCB7XG4gIGJhY2tncm91bmQ6ICNDQ0MgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9wYWdlT3B0aW9uc0JvZHkuanBnXCIpIHJlcGVhdC14O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNDQ0NDQ0M7XG59XG5cbi5wYWdpbmF0aW9uRWxlbWVudCwgLmZpbHRlckVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4O1xufVxuXG4uZmlsdGVyRWxlbWVudCB7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xufVxuXG4ucGFnaW5hdGlvbkVsZW1lbnQgaDQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ucGFnaW5hdGlvbk5hdiB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLnBhZ2luYXRpb25OYXYgLmN1cnJlbnQsIC5wYWdpbmF0aW9uTmF2IGVtIHtcbiAgcGFkZGluZzogMCAzcHggMXB4IDNweDtcbn1cblxuLnBhZ2luYXRpb25OYXYgLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2luYXRpb25FbGVtZW50IC5yZXN1bHRzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4vKiBUb29sIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi50b29sX3BhZ2luYXRpb24ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjREREO1xuICBsaW5lLWhlaWdodDogMTFweDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogIzk5OTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50b29sX3BhZ2luYXRpb24gYSxcbi50b29sX3BhZ2luYXRpb24gc3Bhbixcbi50b29sX3BhZ2luYXRpb24gZW0ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzk5OTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHdpZHRoOiAyMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4udG9vbF9wYWdpbmF0aW9uIGE6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogI0VFRTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgNTElLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCg1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSksIGNvbG9yLXN0b3AoNTElLCByZ2JhKDAsIDAsIDAsIDAuMSkpLCBjb2xvci1zdG9wKDEwMCUsIHRyYW5zcGFyZW50KSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjEpIDUxJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSA1MCUsIHJnYmEoMCwgMCwgMCwgMC4xKSA1MSUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjEpIDUxJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSA1MCUsIHJnYmEoMCwgMCwgMCwgMC4xKSA1MSUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICBib3JkZXItY29sb3I6ICM5OTk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4udG9vbF9wYWdpbmF0aW9uIGVtIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC4xKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSksIGNvbG9yLXN0b3AoMTAwJSwgdHJhbnNwYXJlbnQpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuMSkgMCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuMSkgMCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjEpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjEpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgYm9yZGVyLWNvbG9yOiAjQkJCO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cblxuLnRvb2xfcGFnaW5hdGlvbiAucHJldmlvdXNfcGFnZSxcbi50b29sX3BhZ2luYXRpb24gLm5leHRfcGFnZSB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLyogUHVsbGRvd24gTWVudSBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucHVsbGRvd25TZWxlY3RNZW51IHtcbiAgcGFkZGluZzogMTVweCAxMHB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnB1bGxkb3duU2VsZWN0TWVudSB7XG4gIHBhZGRpbmc6IDVweCAwcHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5wdWxsZG93blNlbGVjdE1lbnUgc3BhbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ucHVsbGRvd25TZWxlY3RNZW51IHNwYW4gc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLyogTm9kZSBQaWNrZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubm9kZVBpY2tlclNsaWRlQm94IHtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogNDgwcHg7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjRUVFO1xuICBwYWRkaW5nOiAxZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1ib3R0b206IDFlbSBzb2xpZCAjRUVFO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0FBQTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMWVtIHNvbGlkICNFRUU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQUFBO1xuICBiYWNrZ3JvdW5kOiAjRUVFO1xufVxuXG4ubm9kZVBpY2tlclNpdGVCb3gge1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5LFxuLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogYXV0bztcbn1cblxuI2xpZ2h0Ym94IC5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSB1bCxcbi5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAuNzVlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQUFBO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IGxpLFxuLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgMCAwIDVweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgbGksXG4ubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgbGkge1xuICBtYXJnaW4tbGVmdDogMmVtO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IGxpIGRpdixcbi5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSBsaSBkaXYge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgaW5wdXRbdHlwZT1jaGVja2JveF0sXG4ubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBtYXJnaW46IDAgLjVlbSAwIDA7XG59XG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgLmxhc3RMaSxcbi5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSAubGFzdExpIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuI2xpZ2h0Ym94IC5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSAubGFzdExpID4gdWwsXG4ubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHkgLmxhc3RMaSA+IHVsIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLm5vZGVQaWNrZXIge1xuICBwYWRkaW5nOiAxMHB4IDEwcHggMCAyNXB4O1xufVxuXG4ubm9kZVBpY2tlciB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xufVxuXG4ubm9kZVBpY2tlciBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM2NjY7XG4gIGNsZWFyOiBib3RoO1xuICBfaGVpZ2h0OiAxOHB4O1xuICAvKiBJRSA2IGhhY2sgKi9cbn1cblxuLmFjY2Vzc1RyZWUgbGkge1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGQ0NEMjI7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4ubm9kZVBpY2tlciBhOmxpbmssIC5ub2RlUGlja2VyIGE6dmlzaXRlZCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubm9kZVBpY2tlciBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5ub2RlUGlja2VyIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMCAzcHg7XG59XG5cbi5ub2RlUGlja2VyIC5zZWxlY3RMaW5rIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4jbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMHB4IDFlbSAtMWVtIDFlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYiBhLFxuI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIgYSB7XG4gIGNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICBmb250LXNpemU6IC42MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogLjVlbSAuOGVtO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiAuMnMgMHMgZWFzZS1pbi1vdXQ7XG59XG5cbi5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIgYS51cEFycm93OmFmdGVyLFxuI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIgYS51cEFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNzdcIjtcbn1cblxuLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYiBhLmRvd25BcnJvdzphZnRlcixcbiNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFiIGEuZG93bkFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNzhcIjtcbn1cblxuLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYiBhOmFmdGVyLFxuI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIgYTphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udGF3ZXNvbWUnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IC41ZW07XG59XG5cbi5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIgYTpob3ZlcixcbiNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFiIGE6aG92ZXIge1xuICBjb2xvcjogI0RERDtcbn1cblxuI21haW5fY2FsZW5kYXJfZm9ybSAjdGFiU2hvd19tYWluIHtcbiAgbWFyZ2luOiAwIDFlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogYXV0bztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbiNtYWluX2NhbGVuZGFyX2Zvcm0gLm5vZGVQaWNrZXJDb250YWluZXIge1xuICBtYXJnaW46IDE1cHggMDtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5ub2RlUGlja2VyQ29udGFpbmVyOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmNvbC1tZC0zIC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4gIC5jb2wtbWQtMyAjbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYiwgLmNvbC1tZC00IC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4gIC5jb2wtbWQtNCAjbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYiwgLnBlMjUgLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYixcbiAgLnBlMjUgI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIsIC5wZTMzIC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4gIC5wZTMzICNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFiIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICBtYXJnaW46IC0uNzVlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwcHggMWVtIDFlbSAxZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICB9XG4gIC5jb2wtbWQtMyAubm9kZVBpY2tlckNvbnRhaW5lciAudGFiI3RhYkhpZGVfbWFpbixcbiAgLmNvbC1tZC0zICNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFiI3RhYkhpZGVfbWFpbiwgLmNvbC1tZC00IC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIjdGFiSGlkZV9tYWluLFxuICAuY29sLW1kLTQgI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIjdGFiSGlkZV9tYWluLCAucGUyNSAubm9kZVBpY2tlckNvbnRhaW5lciAudGFiI3RhYkhpZGVfbWFpbixcbiAgLnBlMjUgI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIjdGFiSGlkZV9tYWluLCAucGUzMyAubm9kZVBpY2tlckNvbnRhaW5lciAudGFiI3RhYkhpZGVfbWFpbixcbiAgLnBlMzMgI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWIjdGFiSGlkZV9tYWluIHtcbiAgICBtYXJnaW46IDBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM4MHB4KSB7XG4gIC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4gICNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFiIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICBtYXJnaW46IC0uNzVlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwcHggMWVtIDFlbSAxZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICB9XG4gIC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIjdGFiSGlkZV9tYWluLFxuICAjbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYiN0YWJIaWRlX21haW4ge1xuICAgIG1hcmdpbjogMHB4O1xuICB9XG4gICNtYWluX2NhbGVuZGFyX2Zvcm0gLnRhYiN0YWJIaWRlX21haW4ge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi8qIE5vZGUgUGlja2VyIEZvcm0gQ29udHJvbHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubG9hZGluZyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDRweCAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTZweDtcbn1cblxuLm5vZGVQaWNrZXItZm9ybUNvbnRyb2xzIHtcbiAgbWFyZ2luOiAtMS44NWVtIDAgMCAwO1xufVxuXG4ubm9kZVBpY2tlci1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICBmb250LXNpemU6IDAuNjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IC41ZW0gLjhlbTtcbiAgbWFyZ2luOiAwIC41ZW0gLjQ1ZW0gMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI0ZGRjtcbiAgdHJhbnNpdGlvbjogLjJzIDBzIGVhc2UtaW4tb3V0O1xufVxuXG4ubm9kZVBpY2tlci1idXR0b246aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjREREO1xufVxuXG4jZm9ybV92YWx1ZXNfbWF0Y2hfb3B0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IC00cHggMCAwIDA7XG59XG5cbi8qIFNpbmdsZSBTZWxlY3QgUGlja2VyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFweCAxMHB4O1xufVxuXG4uc2luZ2xlU2VsZWN0Qm9keUhlYWRlciBhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG59XG5cbi5zaW5nbGVTZWxlY3RCb2R5SGVhZGVyIHNwYW4ge1xuICB0ZXh0LWluZGVudDogLTIwMDBweDtcbn1cblxuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXIgLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5wcmV2aW91c1NpbmdsZVNlbGVjdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNSU7XG59XG5cbi5zaW5nbGVTZWxlY3RCb2R5SGVhZGVyICNkaXNwbGF5Qm9keUhlYWRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA4OS41JTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI0ZGRjtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggI0ZGRjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwcHggLTJweDtcbn1cblxuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXIgI2Rpc3BsYXlCb2R5SGVhZGVyIGEge1xuICBwYWRkaW5nOiA1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5leHRTaW5nbGVTZWxlY3Qge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1JTtcbn1cblxuLm5wU2luZ2xlU2VsZWN0IHtcbiAgei1pbmRleDogMjAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE2OHB4O1xufVxuXG4ucGFnZVB1c2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbiNzaXRlQ29udGFpbmVyMyAubnBTaW5nbGVTZWxlY3Qge1xuICB3aWR0aDogNTkycHg7XG59XG5cbiNzaXRlQ29udGFpbmVyMiAubnBTaW5nbGVTZWxlY3Qge1xuICB3aWR0aDogNzYycHg7XG59XG5cbiNzaXRlQ29udGFpbmVyMyAucGFnZUVsZW1lbnRBZG1pbiAubnBTaW5nbGVTZWxlY3QsICNzaXRlQ29udGFpbmVyMiAucGFnZUVsZW1lbnRBZG1pbiAubnBTaW5nbGVTZWxlY3Qge1xuICB3aWR0aDogYXV0bztcbn1cblxuLm5wU2luZ2xlU2VsZWN0IC5ub2RlUGlja2VyU2xpZGVCb3gge1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM2NjY7XG59XG5cbi8qIFNlbGVjdGVkIE5vZGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlbGVjdGVkTm9kZXMge1xuICBtaW4taGVpZ2h0OiA2ZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VFRTtcbn1cblxuLnNlbGVjdGVkTm9kZXMgaDMge1xuICBmb250LXNpemU6IC43NWVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjMzMzO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwYWRkaW5nOiAuNWVtIDA7XG59XG5cbi5zZWxlY3RlZE5vZGVDaG9pY2VzX21haW4sIC5zZWxlY3RlZE5vZGVDaG9pY2VzX2xiIHtcbiAgbWFyZ2luOiAxZW0gMCAzZW0gMDtcbn1cblxuLnBhZ2VFbGVtZW50QWRtaW4gLnNlbGVjdGVkTm9kZXMge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4jZm9jdXNDb250YWluZXIgI3NlbGVjdGVkTm9kZUNob2ljZXMge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbmJvZHkgLnNlbGVjdGVkTm9kZXMgcCxcbiNsaWdodGJveEJvZHkgLnNlbGVjdGVkTm9kZXMgcCB7XG4gIGNvbG9yOiAjNjY2O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5ub2RlUGlja2VyLXByZXNlbGVjdGVkVGFncyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50YWcge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAuNWVtIC44ZW07XG4gIG1hcmdpbjogMCAuNWVtIC41ZW0gMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0cmFuc2l0aW9uOiAuMnMgMHMgZWFzZS1pbi1vdXQ7XG59XG5cbi50YWc6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4vKiBUYWdzICYgVGFnIEdyb3Vwc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmRsLnRhZ0dyb3VwIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjZjJmMmYyO1xuICBsaW5lLWhlaWdodDogMS43NWVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuZGwudGFnR3JvdXAgZHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMnB4IDVweCAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDE1cHg7XG59XG5cbmRsLnRhZ0dyb3VwIGRkIHtcbiAgbWFyZ2luOiAwIDAgMCAyMHB4O1xufVxuXG4jbGlnaHRib3hCb2R5IGRsLnRhZ0dyb3VwIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjZmRlNjg2O1xufVxuXG4jbGlnaHRib3hCb2R5IGRsLnRhZ0dyb3VwIC50YWcge1xuICBiYWNrZ3JvdW5kOiAjZmNmMGFiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2ZjZjBhYiwgI2ZkZTY4Nik7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZGU2ODY7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuI2xpZ2h0Ym94Qm9keSAubGlzdEl0ZW0ge1xuICBtYXJnaW46IDMwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG59XG5cbiNsaWdodGJveEJvZHkgLmxpc3RJdGVtIGgyIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG59XG5cbi8qIENyb3NzLVNpdGUgTm9kZSBQaWNrZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubm9kZVBpY2tlci1zaXRlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjOTk5O1xuICBtYXJnaW46IDEwcHggMCAwO1xuICBwYWRkaW5nOiAwIDAgMTBweDtcbn1cblxuLm5vZGVQaWNrZXItc2l0ZTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uc2VsZWN0ZWROb2RlcyAubm9kZVBpY2tlci1zaXRlLW5hbWUge1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luOiAwIDAgNXB4O1xufVxuXG4uc2VsZWN0ZWROb2RlcyAubm9kZVBpY2tlci1zaXRlLW5hbWUgYSB7XG4gIGNvbG9yOiAjMzMzO1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLnNlbGVjdGVkTm9kZXMgLm5vZGVQaWNrZXItc2l0ZS1uYW1lIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDRweCAwIDA7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7XG59XG5cbi5ub2RlUGlja2VyLWNyb3NzU2l0ZSB7XG4gIGJhY2tncm91bmQ6ICNlNWU1ZTU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4vKiBMb2JhciBzdHlsZXMgKi9cbi5sb2Jhci1jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDQ5ODtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiAjMTM3NTliO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgbGluZWFyLCBvcGFjaXR5IDEwMG1zIGxpbmVhciwgdmlzaWJpbGl0eSAxMDBtcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBsaW5lYXIsIG9wYWNpdHkgMTAwbXMgbGluZWFyLCB2aXNpYmlsaXR5IDEwMG1zIGxpbmVhcjtcbn1cblxuLmxvYmFyLWNvbnRhaW5lci5sb2Jhci1leGl0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNSUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5wYWdlLW1hbmFnZXItdmlzaWJsZSAubG9iYXItY29udGFpbmVyIHtcbiAgbGVmdDogNjBweDtcbn1cblxuLmxvYmFyLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21hcmtldGluZy9lbWJsZW0tbG9iYXIucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdDtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDEwcHg7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBwYWRkaW5nOiAuNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubG9iYXItY29udGVudCBwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDIuMTVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udDogNDAwIDE0cHgvMTAwJSAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLmxvYmFyLWNvbnRlbnQgcCBhLFxuLmxvYmFyLWNvbnRlbnQgcCBhOmxpbmssXG4ubG9iYXItY29udGVudCBwIGE6aG92ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBoZWlnaHQ6IDIzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gIHBhZGRpbmc6IDAgN3B4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xufVxuXG4ubG9iYXItbGluayxcbi5sb2Jhci1saW5rOmxpbmssXG4ubG9iYXItbGluazp2aXNpdGVkIHtcbiAgYmFja2dyb3VuZDogIzEzYWEzNztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5sb2Jhci1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNjY2M7XG4gIGJhY2tncm91bmQ6ICMwZTg1MmI7XG59XG5cbi5sb2Jhci1jbG9zZSxcbi5wYXltZW50LWxvYmFyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDhweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzZweDtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21hcmtldGluZy9pY29uLWNsb3NlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbn1cblxuLyogUGF5bWVudCBTdGF0dXMgTG9iYXIgc3R5bGVzICovXG4ucGF5bWVudC1sb2JhciAubG9iYXItY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbWFya2V0aW5nL2VtYmxlbS1sb2Jhci5wbmdcIikgbm8tcmVwZWF0IDE2cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG59XG5cbi5wYXltZW50LWludm9pY2VzLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4ucGF5bWVudC1pbnZvaWNlcy1idXR0b246aG92ZXIge1xuICBjb2xvcjogI2NjYztcbn1cblxuLmxvYmFyLWdyZWVuIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxM2FhMzc7XG59XG5cbi5sb2Jhci15ZWxsb3cge1xuICBjb2xvcjogIzIyMjcyYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2Q0MTtcbiAgYm9yZGVyLWNvbG9yOiAjOGY3ODM0O1xufVxuXG4ubG9iYXItcmVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYTFjMWI7XG4gIGJvcmRlci1jb2xvcjogIzc2MWIyNTtcbn1cblxuLmxvYmFyLWdyZWVuIC5wYXltZW50LWludm9pY2VzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTYwMWY7XG59XG5cbi5sb2Jhci15ZWxsb3cgLnBheW1lbnQtaW52b2ljZXMtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg2NzAyYjtcbn1cblxuLmxvYmFyLXJlZCAucGF5bWVudC1pbnZvaWNlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQxNzE4O1xufVxuXG4vKiAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG5UaXRsZSA6IExpZ2h0Ym94IENTU1xuQXV0aG9yIDogS2V2aW4gSGFsZVxuVVJMIDogaHR0cDovL3BhcnRpY2xldHJlZS5jb20vZmVhdHVyZXMvbGlnaHRib3gtZ29uZS13aWxkL1xuQ3JlYXRlZCA6IEphbnVhcnkgMTMsIDIwMDZcbk1vZGlmaWVkIDogSmFudWFyeSAxOCwgMjAwOCAoVFNUIFZlcnNpb24pXG5cbi0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtICovXG4vKlxuI2xpZ2h0Ym94e1xuICBkaXNwbGF5Om5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOjUwJTtcbiAgbGVmdDo1MCU7XG4gIHotaW5kZXg6OTk5OTtcbiAgd2lkdGg6NzAwcHg7XG4gIG1hcmdpbjotMjIwcHggMCAwIC0zNTBweDtcbiAgdGV4dC1hbGlnbjpsZWZ0O1xufVxuKi9cbiNsaWdodGJveCB7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNsYkxvYWRNZXNzYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jbGlnaHRib3hbaWRdIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4jb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiA5OTk4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4jb3ZlcmxheVtpZF0ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbiNvdmVybGF5LmxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiAjMDAwIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbG9hZGVyMi5naWZcIikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jb3ZlcmxheS5sb2FkaW5nIHAge1xuICBwYWRkaW5nOiA0NSUgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jbGlnaHRib3guZG9uZSAjbGJMb2FkTWVzc2FnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNsaWdodGJveC5kb25lICNsYkNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI2xpZ2h0Ym94LmxvYWRpbmcgI2xiQ29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNsaWdodGJveC5sb2FkaW5nICNsYkxvYWRNZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qICBOR0lOIExpZ2h0Ym94IENTU1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNsaWdodGJveEhlYWRlciB7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG59XG5cbiNsaWdodGJveEhlYWRlciBoMSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogOTAlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xiVG9wTGVmdC5naWZcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbiNsaWdodGJveEhlYWRlciBhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICNEREEzMDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9sYlRvcFJpZ2h0LmdpZlwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4jbGlnaHRib3hIZWFkZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jbGlnaHRib3hQcmV2aWV3IHtcbiAgbWF4LWhlaWdodDogMTI1cHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRDc7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRERBMzAxO1xuICBwYWRkaW5nOiAxMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLmVsZW1lbnRNZW51T3B0aW9uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI2xpZ2h0Ym94Qm9keSB7XG4gIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmVmN2QwO1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5zdWJtaXRMaWdodGJveCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmY2NkMjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWVjOGY7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG59XG5cbi5zdWJtaXRMaWdodGJveCAuZW1iZWRkZWRfbGluayB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBtYXJnaW4tdG9wOiAuM2VtO1xufVxuXG4ubGJIaWdobGlnaHQge1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmVlYzhmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmNGJjO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbiNsaWdodGJveEJvZHkgLmVsZW1lbnRNZW51T3B0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmY2NkMjI7XG59XG5cbiNsaWdodGJveCAjd2FpdGluZ190ZXh0LCAjbGlnaHRib3ggLndhaXRpbmdfdGV4dCB7XG4gIGNvbG9yOiAjRERBMzAxO1xufVxuXG4jbGlnaHRib3ggLmhlbHBlckxpZ2h0Ym94ICN3YWl0aW5nX3RleHQge1xuICBjb2xvcjogIzY2Njtcbn1cblxuI2xpZ2h0Ym94U3VibWl0IC5wcmV2aW91cyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jbGlnaHRib3hTdWJtaXQgLm5leHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNsaWdodGJveEZvb3RlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxNHB4O1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9sYkJvdHRvbVJpZ2h0LmdpZlwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4jbGlnaHRib3hGb290ZXIgI2xpZ2h0Ym94RmVlZGJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA5NSU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xiQm90dG9tTGVmdC5naWZcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBsZWZ0O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94Qm9keSAuZm9ybUVsZW1lbnQge1xuICBiYWNrZ3JvdW5kOiAjZTBlMGUwO1xufVxuXG4vKiAgUmVjdXJyaW5nIEV2ZW50cyBEaXNwbGF5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2h1bWFuX3JlYWRhYmxlX3JlY3VyX3N0cmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZWVjOGY7XG4gIHBhZGRpbmc6IDVweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmY2NkMjI7XG4gIGNvbG9yOiAjMzMzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDg0JTtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG59XG5cbi8qICBGZWVkIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZlZWRMaW5rIHtcbiAgd2lkdGg6IDk5JTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW46IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiAgVXNlciBNb2RlIE1vZGlmaWNhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94SGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM5OTk7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hIZWFkZXIgaDEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xiVG9wTGVmdFVzZXJNb2RlLmdpZlwiKTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEhlYWRlciBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9sYlRvcFJpZ2h0VXNlck1vZGUuZ2lmXCIpO1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICM5OTk7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hCb2R5IC5lbGVtZW50TWVudU9wdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjOTk5O1xufVxuXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94Rm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICM5OTk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGJCb3R0b21SaWdodFVzZXJNb2RlLmdpZlwiKTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEZvb3RlciAjbGlnaHRib3hGZWVkYmFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGJCb3R0b21MZWZ0VXNlck1vZGUuZ2lmXCIpO1xufVxuXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94Qm9keSB7XG4gIGJhY2tncm91bmQ6ICNFRkVGRUY7XG59XG5cbi5oZWxwZXJMaWdodGJveCAuc3VibWl0TGlnaHRib3gge1xuICBib3JkZXI6IHNvbGlkIDFweCAjOTk5O1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xufVxuXG4ubGlnaHRib3hIZWxwIHtcbiAgY29sb3I6ICM3Nzc7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwYWRkaW5nLXRvcDogM3B4O1xufVxuXG4uc2l0ZUxpZ2h0Ym94QmFubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDVweDtcbn1cblxuLyogIEVkaXQgU3VydmV5IEVudHJ5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2xpZ2h0Ym94Qm9keSAuZm9ybUVsZW1lbnQge1xuICBtYXJnaW46IDVweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVFQzhGO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4jbGlnaHRib3hCb2R5ICNwcm9maWxlc190YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRUVDOEY7XG59XG5cbiNsaWdodGJveEJvZHkgI3Byb2ZpbGVzX3RhYmxlIHRkLCAjbGlnaHRib3hCb2R5ICNwcm9maWxlc190YWJsZSB0aCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNGRUY3RDA7XG59XG5cbi8qIFVzZXIgU2VhcmNoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Byb2ZpbGVzX3RhYmxlIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbiNsaWdodGJveEJvZHkgLnVzZXJfc2VhcmNoLCAjbGlnaHRib3hCb2R5IC5zcGlubmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4jbGlnaHRib3hCb2R5ICNwcm9maWxlc190YWJsZSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI2xpZ2h0Ym94Qm9keSAucGVyc29uYVNlbGVjdCB7XG4gIG1hcmdpbjogMjBweCAyMHB4IDA7XG59XG5cbi8qIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBiYXNpY3MgKi9cbi5idXR0b24tYWRkLCAuYnV0dG9uLWFkZDpob3ZlciB7XG4gIGNvbG9yOiAjMzkzO1xufVxuXG4uYnV0dG9uLXJlbW92ZSwgLmJ1dHRvbi1yZW1vdmU6aG92ZXIge1xuICBjb2xvcjogIzkwMDtcbn1cblxuLmJ1dHRvbi1hZGQsIC5idXR0b24tcmVtb3ZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmJlODtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZkZWE4ODtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMCAzcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ1dHRvbi1hZGQgaW1nLCAuYnV0dG9uLXJlbW92ZSBpbWcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3VpQWRkUmVtb3ZlLnBuZ1wiKSA5cHggMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDlweDtcbiAgd2lkdGg6IDlweDtcbn1cblxuLmJ1dHRvbi1hZGQgc3BhbiwgLmJ1dHRvbi1yZW1vdmUgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLyogc3BlY2lmaWNzICovXG4uYnV0dG9uLWFkZCBpbWcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5idXR0b24tcmVtb3ZlIHtcbiAgbWFyZ2luOiAwIDAgMCA1cHg7XG59XG5cbi8qIGxpbmsgc3RhdGVzICovXG4uYnV0dG9uLWFkZDpob3Zlcixcbi5idXR0b24tcmVtb3ZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmJ1dHRvbi1hZGQ6aG92ZXIgaW1nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOXB4O1xufVxuXG4uYnV0dG9uLWFkZDphY3RpdmUgaW1nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMThweDtcbn1cblxuLmJ1dHRvbi1yZW1vdmU6aG92ZXIgaW1nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOXB4IC05cHg7XG59XG5cbi5idXR0b24tcmVtb3ZlOmFjdGl2ZSBpbWcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5cHggLTE4cHg7XG59XG5cbi8qIExpc3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Njcm9sbF9jb250ZW50IHVsLnBhZCB7XG4gIG1hcmdpbjogMWVtIDEuNWVtO1xufVxuXG4vKiBDaGVja2JveGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZjRm9ybSAuY2hlY2tib3hlcyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZmNGb3JtIC5jaGVja2JveGVzIHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjZmVlYzhmO1xufVxuXG4uZmNGb3JtIC5jaGVja2JveGVzIHRoIHtcbiAgY29sb3I6ICM3ZjdiNjg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiA1cHggMTBweCA1cHggMDtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5mY0Zvcm0gLmNoZWNrYm94ZXMgdGQge1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi5mY0Zvcm0gLmNoZWNrYm94ZXMgYiB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi8qIFNsaWRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGJTbGlkZXItaW5wdXQge1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAzNXB4O1xufVxuXG4ubGJTbGlkZXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3NsaWRlckNvbnRyb2xzLnBuZ1wiKTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogNXB4O1xuICBtYXJnaW46IDVweCAxMHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDM1MHB4O1xufVxuXG4ubGJTbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zbGlkZXJDb250cm9scy5wbmdcIikgMCAtNXB4O1xuICBjdXJzb3I6IG1vdmU7XG4gIGhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC04cHg7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG4ubGJTbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTVweDtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuXG4ubGJTbGlkZXItaGFuZGxlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC01cHg7XG4gIGN1cnNvcjogbW92ZTtcbn1cblxuLyogU2xpZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNwYWdlTm9kZS1jb2x1bW5zIHtcbiAgLypsaW5lLWhlaWdodDoxOHB4OyovXG4gIG1hcmdpbjogNHB4IDAgMDtcbn1cblxuI3BhZ2VOb2RlLWNvbHVtbnMgaW1nLFxuI3BhZ2VOb2RlLWNvbHVtbnMgaW5wdXQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDRweCAwIDA7XG59XG5cbiNsaWdodGJveEJvZHkgI3BhZ2VOb2RlLWNvbHVtbnMgcCB7XG4gIG1hcmdpbjogMCAwIDhweDtcbn1cblxuLyogVGFiYmVkIEVsZW1lbnQgRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYjpmaXJzdC1jaGlsZCAuYnV0dG9uLW1vdmUtdXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWI6bGFzdC1jaGlsZCAuYnV0dG9uLW1vdmUtZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtdXAsIC50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtZG93biB7XG4gIGJhY2tncm91bmQ6ICNmZmZiZTg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZGVhODg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwIDNweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjNUY2NTY2O1xufVxuXG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwOmhvdmVyLCAudGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLWRvd246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwOmFjdGl2ZSwgLnRhYkVsZW1lbnRGb3JtIC5sYXlvdXRfdGFiIC5idXR0b24tbW92ZS1kb3duOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmU5OGM7XG59XG5cbi50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtdXAgaW1nLCAudGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLWRvd24gaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4O1xuICB0b3A6IDJweDtcbn1cblxuLnRhYkVsZW1lbnRGb3JtIC5sYXlvdXRfdGFiIC5idXR0b24tbW92ZS11cCBzcGFuLCAudGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLWRvd24gc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMnB4O1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjOTk5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZDogI0RERDtcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hIZWFkZXIgaDEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDg1JTtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hIZWFkZXIgYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICM5OTk7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hCb2R5IGg0IHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzk5OTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNEREQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94Rm9vdGVyICNsaWdodGJveEZlZWRiYWNrIHtcbiAgYmFja2dyb3VuZDogI0RERDtcbn1cblxuLmhlbHBlckxpZ2h0Ym94IC5mZWVkTGluayB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnBhZ2VFbGVtZW50LnN0cmVhbWluZ1ZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5wYWdlRWxlbWVudC5zdHJlYW1pbmdWaWRlbyBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI3N1cnZleV9zdGVwcyAudmV2ZW50IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI3N1cnZleV9zdGVwcyAuZGF0ZUltYWdlIHtcbiAgd2lkdGg6IDc1cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jc3VydmV5X3N0ZXBzIC5kYXRlSW1hZ2UgLm1vbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NEE2O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI3N1cnZleV9zdGVwcyAuZGF0ZUltYWdlIC5kYXRlIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuI3N1cnZleV9zdGVwcyAuc3VtbWFyeSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuI3N1cnZleV9zdGVwcyAuc3RhdHVzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiNzdXJ2ZXlfc3RlcHMgLmRldGFpbHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4jc3VydmV5X3N0ZXBzIC5kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuI3N1cnZleV9zdGVwcyAuc3VydmV5QnV0dG9uV3JhcCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNlY3VyZUNoZWNrb3V0TWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuYm9keSNzdXJ2ZXlfc3RlcHMge1xuICBwYWRkaW5nOiAwO1xufVxuXG5odG1sIGJvZHkge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbn1cblxuaHRtbCBib2R5Lm5vVXNlckJhciB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG5odG1sLmhhcy1tb2JpbGUtbmF2IGJvZHkge1xuICBwYWRkaW5nLXRvcDogNDRweDtcbn1cblxuaHRtbC5oYXMtbW9iaWxlLW5hdiAjYWNjb3VudE5hdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogLTQ0cHg7XG59XG5cbmh0bWwucGFnZS1tYW5hZ2VyLXZpc2libGUgYm9keSB7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbn1cblxuaHRtbC5wYWdlLW1hbmFnZXItdmlzaWJsZSAjdG9wTmF2IHtcbiAgbWFyZ2luLWxlZnQ6IDYwcHg7XG59XG5cbmh0bWwubmF2LWZpeGVkIC5zaXRlLWJhY2tncm91bmQge1xuICBtYXJnaW4tdG9wOiAtNTcuOTlweDtcbiAgYm90dG9tOiAtNTcuOTlweDtcbn1cblxuaHRtbDpub3QoLmNvbGxhcHNlZC1tb2JpbGUtbmF2KSAuc2l0ZS1iYWNrZ3JvdW5kIHtcbiAgdHJhbnNpdGlvbjogbWFyZ2luLXRvcCAwLjJzIGxpbmVhciwgYm90dG9tIDAuMnMgbGluZWFyO1xufVxuXG5odG1sOm5vdCguY29sbGFwc2VkLW1vYmlsZS1uYXYpOm5vdCguaGFzLXN1Yi1uYXYpIC5zaXRlLWJhY2tncm91bmQge1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbn1cblxuaHRtbDpub3QoLmNvbGxhcHNlZC1tb2JpbGUtbmF2KTpub3QoLmhhcy1zdWItbmF2KS5uYXYtZml4ZWQgLnNpdGUtYmFja2dyb3VuZCB7XG4gIG1hcmdpbi10b3A6IC05Mi45OXB4O1xufVxuXG5odG1sLmNvbGxhcHNlZC1tb2JpbGUtbmF2IC5zaXRlLWJhY2tncm91bmQge1xuICBtYXJnaW4tdG9wOiAtMTQwcHg7XG59XG5cbiNzaXRlQ29udGFpbmVyLCAjc2l0ZUNvbnRhaW5lciAjc2l0ZUNvbnRhaW5lci5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxNDBweCAtIDQ2cHggLSA0MHB4KTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICNzaXRlQ29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgfVxufVxuXG4jc2l0ZUNvbnRhaW5lciAjZGlzcGxheUJvZHlIZWFkZXI6bm90KC5kaXNwbGF5Qm9keUhlYWRlci1pbWFnZSkge1xuICBwYWRkaW5nOiAxNXB4O1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI3NpdGVDb250YWluZXIgI3lpZWxkQ29udGVudC5yb3cge1xuICBtYXJnaW46IGF1dG87XG59XG5cbiNzaXRlQ29udGFpbmVyICNwYW5lbE9uZSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNzaXRlQ29udGFpbmVyIC55aWVsZFBhZ2VDb250ZW50IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNpdGUtYmFubmVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtYmFubmVyLXdyYXBwZXIgLnNpdGUtYmFubmVyLXRleHQtd3JhcHBlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2l0ZS1iYW5uZXItd3JhcHBlciAuc2l0ZS1iYW5uZXItdGV4dC13cmFwcGVyIGgyLCAuc2l0ZS1iYW5uZXItd3JhcHBlciAuc2l0ZS1iYW5uZXItdGV4dC13cmFwcGVyIGgzIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnNpdGUtYmFubmVyLXdyYXBwZXIgLnNpdGUtYmFubmVyLXRleHQtd3JhcHBlciBoMSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjk5cHgpIHtcbiAgLnNpdGUtYmFubmVyLXdyYXBwZXIgLnNpdGUtYmFubmVyLXRleHQtd3JhcHBlciB7XG4gICAgZm9udC1zaXplOiA0LjV2dztcbiAgfVxuICAuc2l0ZS1iYW5uZXItd3JhcHBlciAuc2l0ZS1iYW5uZXItdGV4dC13cmFwcGVyIGgxIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gIC5zaXRlLWJhbm5lci13cmFwcGVyIC5zaXRlLWJhbm5lci10ZXh0LXdyYXBwZXIgaDIsIC5zaXRlLWJhbm5lci13cmFwcGVyIC5zaXRlLWJhbm5lci10ZXh0LXdyYXBwZXIgaDMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gIC5zaXRlLWJhbm5lci13cmFwcGVyIC5zaXRlLWJhbm5lci10ZXh0LXdyYXBwZXIge1xuICAgIGZvbnQtc2l6ZTogMy42dnc7XG4gIH1cbn1cblxuaHRtbC5oYXMtbW9iaWxlLW5hdiAudGhlbWUtc2VhcmNoLXdyYXBwZXIsXG5odG1sLmhhcy1tb2JpbGUtbmF2IC50aGVtZS1tYWluLW5hdixcbmh0bWwuaGFzLW1vYmlsZS1uYXYgLnRoZW1lLXN1Yi1uYXYsXG5odG1sLmhhcy1tb2JpbGUtbmF2ICNzbi1zaXRlLWxvZ28sXG5odG1sLmhhcy1tb2JpbGUtbmF2ICN0b3BOYXZQbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiN0b3BOYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1pbi13aWR0aDogMjUwcHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHotaW5kZXg6IDQwMDtcbn1cblxuLmNvbGxhcHNlZC1tb2JpbGUtbmF2ICN0b3BOYXYge1xuICB0b3A6IDQ0cHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC1iYXIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogLTI2cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcbiAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgaGVpZ2h0OiAyNnB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtYm94IH4gLnRoZW1lLXNlYXJjaC1ib3gge1xuICBtYXJnaW4tbGVmdDogOHB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtc3VibWl0LFxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhciAudGhlbWUtc2VhcmNoLWNsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMjZweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBsaW5lYXI7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC1iYXIgLnRoZW1lLXNlYXJjaC1pbnB1dCxcbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC1iYXIgLnRoZW1lLXNlYXJjaC1jbGVhciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhciAudGhlbWUtc2VhcmNoLWlucHV0IHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgcGFkZGluZzogMCAyNHB4IDAgOHB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtaW5wdXQ6Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC1iYXIgLnRoZW1lLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBiYWNrZ3JvdW5kOiAjMDAzYTczO1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtc3VibWl0OmZvY3VzLCAjdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1zZWFyY2gtc3VibWl0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwMjA0MDtcbn1cblxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhciAudGhlbWUtc2VhcmNoLWNsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogLTI3cHg7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xuICB3aWR0aDogMjZweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhciAudGhlbWUtc2VhcmNoLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyVXCI7XG4gIGNvbG9yOiAjOWNhOGFmO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIC5wYXl3YWxsX2ltYWdlLFxuI3RvcE5hdiAudGhlbWUtbmF2LWRyb3Bkb3duIC5wYXl3YWxsX2ltYWdlIHtcbiAgaGVpZ2h0OiAuNzVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMWVtO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24ge1xuICAvKiBMZXZlbCBPbmUgKi9cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtLFxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duID4gLnRoZW1lLW5hdi10aXRsZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LXRpdGxlIGEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgMTAuNXB4IDAgMTVweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LXRpdGxlIGE6YWZ0ZXIge1xuICBjb250ZW50OiAnXFxmMTA1JztcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5oYXNDaGlsZCA+IC50aGVtZS1uYXYtbGluazphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhciwgdG9wIDAuMnMgbGluZWFyO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0uZHJvcGRvd24tb3BlbiA+IC50aGVtZS1uYXYtbGluazphZnRlciB7XG4gIGNvbG9yOiAjMERCMTRDO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0gPiAudGhlbWUtbmF2LWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0gPiAudGhlbWUtbmF2LWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biAudGhlbWUtbmF2LW1vcmUgPiBhOmFmdGVyIHtcbiAgY29udGVudDogXCIrXCI7XG4gIG1hcmdpbi1sZWZ0OiAuM2VtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtLjFlbTtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIC50aGVtZS1uYXYtbGluayB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgei1pbmRleDogMjAwO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXIsIG1hcmdpbi10b3AgMC4ycyBsaW5lYXI7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd24ubG9hZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIkxvYWRpbmcuLi5cIjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIG9wYWNpdHk6IDAuNTtcbiAgcGFkZGluZzogMCAxMnB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDM1cHg7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5oYXNDaGlsZCA+IC50aGVtZS1uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0uaGFzQ2hpbGQgPiAudGhlbWUtbmF2LWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgd2lkdGg6IDE4cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjQTBBOUIxO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGxpbmVhcjtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5kcm9wZG93bi1vcGVuID4gLnRoZW1lLW5hdi1saW5rOmJlZm9yZSB7XG4gIGNvbG9yOiAjMERCMTRDO1xuICB3aWR0aDogMTQuNHB4O1xuICBvcGFjaXR5OiAxO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtID4gLnRoZW1lLW5hdi1saW5rIHtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbSA+IC50aGVtZS1uYXYtbGluazpub3QoeCk6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNFMUU4RUQ7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0uc2VsZWN0ZWQgPiAudGhlbWUtbmF2LWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5kaXNhYmxlZCA+IC50aGVtZS1uYXYtbGluayB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtLmRpc2FibGVkID4gLnRoZW1lLW5hdi1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNDQ0M7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd25bZGF0YS1uYXYtbGV2ZWw9XCIyXCJdIHtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd246bm90KFtkYXRhLW5hdi1sZXZlbD1cIjJcIl0pIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duLmRyb3Bkb3duLWFsaWduLXJpZ2h0Om5vdChbZGF0YS1uYXYtbGV2ZWw9XCIyXCJdKSB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duLmRyb3Bkb3duLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbn1cblxuI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIH4gLnRoZW1lLW5hdi1kcm9wZG93bi5kcm9wZG93bi1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB+IC50aGVtZS1uYXYtZHJvcGRvd24uZHJvcGRvd24tb3BlbltkYXRhLW5hdi1sZXZlbD1cIjJcIl0ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gfiAudGhlbWUtbmF2LWRyb3Bkb3duLmRyb3Bkb3duLW9wZW46bm90KFtkYXRhLW5hdi1sZXZlbD1cIjJcIl0pIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC13cmFwcGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMUU4RUQ7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NEE2O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3RvcE5hdiAuc2l0ZS10YWdsaW5lLXRleHQge1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mbGV4OiAxIDEgMTAwJTtcbiAgLW1zLWZsZXg6IDEgMSAxMDAlO1xuICBmbGV4OiAxIDEgMTAwJTtcbn1cblxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhciB7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXNlYXJjaC1iYXIgPiAqIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtYmFyIC50aGVtZS1wYWdlLXNlYXJjaCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtZmxleDogMCAwIGF1dG87XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2IC50aGVtZS1uYXYge1xuICBsaW5lLWhlaWdodDogMTAwcHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2IC50aGVtZS1uYXYgPiAudGhlbWUtbmF2LWl0ZW0gPiAudGhlbWUtbmF2LWxpbmsge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2IC50aGVtZS1uYXYgPiAudGhlbWUtbmF2LWl0ZW0gPiAudGhlbWUtbmF2LWxpbms6bm90KHgpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2IC50aGVtZS1uYXYgPiAudGhlbWUtbmF2LWl0ZW0uZGlzYWJsZWQgPiAudGhlbWUtbmF2LWxpbmsge1xuICBjb2xvcjogIzk5OTtcbn1cblxuI3RvcE5hdiAudGhlbWUtbWFpbi1uYXYgLnRoZW1lLW5hdiA+IC50aGVtZS1uYXYtaXRlbS5kaXNhYmxlZDpob3ZlciA+IC50aGVtZS1uYXYtbGluayB7XG4gIGNvbG9yOiAjQ0NDO1xufVxuXG4jdG9wTmF2IC50aGVtZS1tYWluLW5hdiAudGhlbWUtbmF2ID4gLnRoZW1lLW5hdi1pdGVtLnNlbGVjdGVkID4gLnRoZW1lLW5hdi1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXN1Yi1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTFFOEVEO1xufVxuXG4jdG9wTmF2IC50aGVtZS1zdWItbmF2IC50aGVtZS1uYXYge1xuICBsaW5lLWhlaWdodDogNDBweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtc3ViLW5hdiAudGhlbWUtbmF2ID4gLnRoZW1lLW5hdi1pdGVtLmRpc2FibGVkID4gLnRoZW1lLW5hdi1saW5rIHtcbiAgY29sb3I6ICNBQUE7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXN1Yi1uYXYgLnRoZW1lLW5hdiA+IC50aGVtZS1uYXYtaXRlbS5kaXNhYmxlZDpob3ZlciA+IC50aGVtZS1uYXYtbGluayB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4jdG9wTmF2IC50aGVtZS1zdWItbmF2IC50aGVtZS1uYXYgPiAudGhlbWUtbmF2LWl0ZW0gPiAudGhlbWUtbmF2LWxpbmsge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cblxuI3RvcE5hdiAudGhlbWUtc3ViLW5hdiAudGhlbWUtbmF2ID4gLnRoZW1lLW5hdi1pdGVtID4gLnRoZW1lLW5hdi1saW5rOm5vdCh4KTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXN1Yi1uYXYgLnRoZW1lLW5hdiA+IC50aGVtZS1uYXYtaXRlbS5zZWxlY3RlZCA+IC50aGVtZS1uYXYtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRUU7XG59XG5cbiN0b3BOYXYgLnRoZW1lLXN1Yi1uYXY6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jdG9wTmF2IC50aGVtZS1zZWFyY2gtd3JhcHBlcixcbiN0b3BOYXYgLnRoZW1lLW1haW4tbmF2LFxuI3RvcE5hdiAudGhlbWUtc3ViLW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI3RvcE5hdiAudGhlbWUtc2VhcmNoLWJhcixcbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gIHRyYW5zaXRpb246IG1heC13aWR0aCAwLjJzIGxpbmVhciwgbGVmdCAwLjJzIGxpbmVhciwgaGVpZ2h0IDAuMnMgbGluZWFyLCBsaW5lLWhlaWdodCAwLjJzIGxpbmVhcjtcbn1cblxuI3RvcE5hdi5oYXMtc2l0ZS1sb2dvIC50aGVtZS1zZWFyY2gtYmFyLFxuI3RvcE5hdi5oYXMtc2l0ZS1sb2dvIC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24ge1xuICBtYXgtd2lkdGg6IDgxN3B4O1xuICBsZWZ0OiA5MS41cHg7XG59XG5cbiN0b3BOYXYuaGFzLXNpdGUtbG9nbyAudGhlbWUtc3ViLW5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIHtcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gIGxlZnQ6IDA7XG59XG5cbiNob21lICN0b3BOYXYuaGFzLXNpdGUtbG9nbyAudGhlbWUtc3ViLW5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIHtcbiAgbWF4LXdpZHRoOiAxMTQ1cHg7XG4gIGxlZnQ6IDA7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkIHtcbiAgdG9wOiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkIC50aGVtZS1zZWFyY2gtYmFyIHtcbiAgbGluZS1oZWlnaHQ6IDAuMDFweDtcbiAgaGVpZ2h0OiAwLjAxcHg7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkIC50aGVtZS1tYWluLW5hdiAudGhlbWUtbmF2IHtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkIC50aGVtZS1tYWluLW5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtLmhhc0NoaWxkID4gLnRoZW1lLW5hdi1saW5rOmJlZm9yZSB7XG4gIGhlaWdodDogOHB4O1xufVxuXG4jdG9wTmF2Lm5hdi1maXhlZCAudGhlbWUtc3ViLW5hdiAudGhlbWUtbmF2IHtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkLmhhcy1zaXRlLWxvZ28gLnRoZW1lLXNlYXJjaC1iYXIsXG4jdG9wTmF2Lm5hdi1maXhlZC5oYXMtc2l0ZS1sb2dvIC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24ge1xuICBsZWZ0OiAtOC40OXB4O1xufVxuXG4jdG9wTmF2UGxhY2Vob2xkZXIge1xuICBib3JkZXItYm90dG9tOiA0MHB4IHNvbGlkICNmZmY7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIGhlaWdodDogMTQwcHg7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjJzIGxpbmVhcjtcbn1cblxuI3RvcE5hdlBsYWNlaG9sZGVyLnBhZ2UtaGFzLWJhbm5lciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiN0b3BOYXYubmF2LWZpeGVkICsgI3RvcE5hdlBsYWNlaG9sZGVyIHtcbiAgaGVpZ2h0OiA4Mi4wMXB4O1xufVxuXG5odG1sIHtcbiAgdHJhbnNpdGlvbjogcGFkZGluZy1ib3R0b20gMC4ycyBsaW5lYXI7XG59XG5cbmh0bWwuaGFzLW1haW4tbmF2Om5vdCguaGFzLXN1Yi1uYXYpICNzaXRlSGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG59XG5cbmh0bWwuaGFzLW1haW4tbmF2Om5vdCguaGFzLXN1Yi1uYXYpICN0b3BOYXYubmF2LWZpeGVkIH4gI3NpdGVIZWFkZXIge1xuICBtYXJnaW4tdG9wOiAtMzVweDtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyIHtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mbGV4OiAxIDEgMTAwJTtcbiAgLW1zLWZsZXg6IDEgMSAxMDAlO1xuICBmbGV4OiAxIDEgMTAwJTtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyOm5vdCguY29tcGFjdC1zdHlsZSkgLnRoZW1lLW5ldHdvcmstYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi50aGVtZS1uZXR3b3JrLWJhcjpub3QoLmNvbXBhY3Qtc3R5bGUpIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlcyB7XG4gIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyOm5vdCguY29tcGFjdC1zdHlsZSkgLnRoZW1lLW5ldHdvcmstYmFyLXNpdGUge1xuICBwYWRkaW5nOiA1cHggM3B4O1xuICBjb2xvcjogI0ZGRjtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGhlbWUtbmV0d29yay1iYXI6bm90KC5jb21wYWN0LXN0eWxlKSAudGhlbWUtbmV0d29yay1iYXItc2l0ZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyOm5vdCguY29tcGFjdC1zdHlsZSkgLnRoZW1lLW5ldHdvcmstYmFyLXNpdGUtbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBib3JkZXI6IDA7XG59XG5cbi50aGVtZS1uZXR3b3JrLWJhcjpub3QoLmNvbXBhY3Qtc3R5bGUpIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLWxvZ28gKyAudGhlbWUtbmV0d29yay1iYXItc2l0ZS1uYW1lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRoZW1lLW5ldHdvcmstYmFyOm5vdCguY29tcGFjdC1zdHlsZSkgLnRoZW1lLW5ldHdvcmstYmFyLXNpdGUtbmFtZSB7XG4gIHBhZGRpbmc6IDAgNHB4O1xufVxuXG4udGhlbWUtbmV0d29yay1iYXIuY29tcGFjdC1zdHlsZSAudGhlbWUtbmV0d29yay1iYXItdGl0bGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBiYWNrZ3JvdW5kOiAjMDAzYTczO1xuICBwYWRkaW5nOiAycHggNXB4O1xufVxuXG4udGhlbWUtbmV0d29yay1iYXIuY29tcGFjdC1zdHlsZSAudGhlbWUtbmV0d29yay1iYXItdGl0bGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAyMDQwO1xufVxuXG4udGhlbWUtbmV0d29yay1iYXIuY29tcGFjdC1zdHlsZSAudGhlbWUtbmV0d29yay1iYXItdGl0bGU6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG59XG5cbi5OR0lOX3RpcC50aGVtZS1uZXR3b3JrLWJhci1kcm9wZG93biB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzM7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uTkdJTl90aXAudGhlbWUtbmV0d29yay1iYXItZHJvcGRvd24gLmNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5OR0lOX3RpcC50aGVtZS1uZXR3b3JrLWJhci1kcm9wZG93biAuY2xvc2VfdGlwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLk5HSU5fdGlwLnRoZW1lLW5ldHdvcmstYmFyLWRyb3Bkb3duIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLk5HSU5fdGlwLnRoZW1lLW5ldHdvcmstYmFyLWRyb3Bkb3duIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlcyAudGhlbWUtbmV0d29yay1iYXItc2l0ZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogNHB4IDhweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLk5HSU5fdGlwLnRoZW1lLW5ldHdvcmstYmFyLWRyb3Bkb3duIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlcyAudGhlbWUtbmV0d29yay1iYXItc2l0ZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xufVxuXG4uTkdJTl90aXAudGhlbWUtbmV0d29yay1iYXItZHJvcGRvd24gLnRoZW1lLW5ldHdvcmstYmFyLXNpdGVzIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xufVxuXG4uTkdJTl90aXAudGhlbWUtbmV0d29yay1iYXItZHJvcGRvd24gLnRoZW1lLW5ldHdvcmstYmFyLXNpdGVzIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLWxvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbmV0d29ya05hdk1lbnVUaXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4jbmV0d29ya05hdk1lbnVUaXRsZSwgI25ldHdvcmtOYXZNZW51VGl0bGUgLnRoZW1lLW5hdi1iYWNrIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3Mztcbn1cblxuI25ldHdvcmtOYXZNZW51VGl0bGUgLnRoZW1lLW5hdi10aXRsZS10ZXh0IHtcbiAgcGFkZGluZy1yaWdodDogNDRweDtcbn1cblxuI25ldHdvcmtOYXZNZW51U2l0ZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogLTEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMTtcbiAgdHJhbnNpdGlvbjogbGVmdCAyMDBtcyBlYXNlLWluLW91dDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4jbmV0d29ya05hdk1lbnVTaXRlcyA+ICoge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI25ldHdvcmtOYXZNZW51U2l0ZXMsICNuZXR3b3JrTmF2TWVudVNpdGVzIC50aGVtZS1uYXYtdGl0bGUge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTczO1xufVxuXG4ubmV0d29yay1uYXYtZXhwYW5kZWQgI25ldHdvcmtOYXZNZW51U2l0ZXMge1xuICBsZWZ0OiAwO1xufVxuXG4jc24tc2l0ZS1sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01MDBweDtcbiAgd2lkdGg6IDE4M3B4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwYWRkaW5nOiA4cHg7XG4gIHotaW5kZXg6IDEwMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbn1cblxuI2hvbWUgI3NuLXNpdGUtbG9nbyB7XG4gIG1hcmdpbi1sZWZ0OiAtNTcwcHg7XG59XG5cbi5uYXYtZml4ZWQgI3NuLXNpdGUtbG9nbyB7XG4gIHdpZHRoOiA4My4wMXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG59XG5cbiNzbi1zaXRlLWxvZ28gLnNuLXNpdGUtbG9nby13cmFwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNzbi1zaXRlLWxvZ28gLnNuLXNpdGUtbG9nby1iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLyogUGFnZSBFbGVtZW50IERlZmF1bHRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2VFbGVtZW50QWRtaW4ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnBhZ2VFbGVtZW50IC5pbnB1dEZvcm0gaDMge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZUVsZW1lbnQgdGQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ockVsZW1lbnQge1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTYyZGVnLCAjREREIDBweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAzcHgsICNEREQgNHB4KTtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgtNzJkZWcsICNEREQgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI0RERCA0cHgpO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmxlZnRUZXh0SW1hZ2Uge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiA1cHggMTVweCAxMHB4IDA7XG59XG5cbi5yaWdodFRleHRJbWFnZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA1cHggMCAxMHB4IDEwcHg7XG59XG5cbi50ZXh0SW1hZ2VTbWFsbCB7XG4gIHdpZHRoOiAxNTBweDtcbn1cblxuLnRleHRJbWFnZU1lZGl1bSB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLnRleHRJbWFnZUxhcmdlIHtcbiAgd2lkdGg6IDI1MHB4O1xufVxuXG5ib2R5IC5jdXRsaW5lIHtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogTWlycm9yIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5taXJyb3JCdXR0b24ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLm1pcnJvckJ1dHRvbiBhIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9taXJyb3JfY29udGVudF9idXR0b24ucG5nXCIpIG5vLXJlcGVhdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjFweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdpZHRoOiA3N3B4O1xufVxuXG4vKiBQYWdlIEVsZW1lbnQgTWFyZ2luc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdlRWxlbWVudCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnZUVsZW1lbnQgLnBhZ2VFbGVtZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnQge1xuICBtYXJnaW46IDAgMCAxNXB4O1xufVxuXG4jcGFuZWxUd28gLm1pcnJvck9yaWdpbkxpbmssXG4jcGFuZWxUd28gLm1pcnJvckJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDNweDtcbn1cblxuLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnRBZG1pbiB7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIC5jb2x1bW4xIC5wYWdlRWxlbWVudEFkbWluIC5wYWdlRWxlbWVudCxcbi5sYXlvdXRDb250YWluZXIgLmNvbHVtbjEgLnBhZ2VFbGVtZW50QWRtaW4gLmhyRWxlbWVudCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uaHJFbGVtZW50IHtcbiAgbWFyZ2luOiAxNXB4IDE1cHg7XG59XG5cbi8qIFBhZ2UgRWxlbWVudCBUeXBvZ3JhcGh5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJvYXJkTWVtYmVyRWxlbWVudCBoMyxcbi5waG90b0dhbGxlcnlFbGVtZW50IGgzLFxuLmRpcmVjdG9yeVNlYXJjaEVsZW1lbnQgaDMsXG4uZG9jdW1lbnRFbGVtZW50IGgzIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xufVxuXG4ubWFya2Rvd25FbGVtZW50IGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbn1cblxuLmxpbmtFbGVtZW50IGg0LFxuLnBhZ2luYXRpb25FbGVtZW50IGg0LFxuLnBhZ2luYXRpb25OYXYsXG4uc2VhcmNoUmVzdWx0c0VsZW1lbnQgaDMge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucm9zdGVyRWxlbWVudCBoNCB7XG4gIG1hcmdpbjogNnB4IDA7XG59XG5cbi5ib2FyZE1lbWJlckVsZW1lbnQgLnBvc2l0aW9uLFxuLnBhZ2luYXRpb25FbGVtZW50IC5yZXN1bHRzLFxuLnNlYXJjaEJsb2NrIGxhYmVsLFxuLmNhbFByZXZpZXdFdmVudCAudGltZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDExcHg7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4uYm9hcmRNZW1iZXJFbGVtZW50IC5wb3NpdGlvbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5nYWxsZXJ5RWxlbWVudCBwIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMTIwJTtcbn1cblxuLmxpbmtFbGVtZW50IC50ZXh0LFxuLmNvbnRhY3RGb3JtRWxlbWVudCAuY29udGFjdEVtYWlsLFxuLnNpZGVHcmFwaGljTGluayB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmhlbHBUZXh0IHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLm1hcmtkb3duRWxlbWVudCBwcmUge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm1hcmtkb3duRWxlbWVudCBwcmUge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLyogUGFnZSBFbGVtZW50IE1pcnJvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZWxlbWVudFByZXZpZXcge1xuICBiYWNrZ3JvdW5kOiAjM0M0MDQ2IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbWlycm9yX2JhY2tncm91bmQuanBnXCIpIG5vLXJlcGVhdDtcbiAgX2hlaWdodDogMTAwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICMzMzM7XG4gIHBhZGRpbmc6IDVweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNsaWdodGJveCAuZWxlbWVudFByZXZpZXcge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uZWxlbWVudFByZXZpZXdUaXRsZSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDJweCAwIDNweCAyNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuXG4uZWxlbWVudFByZXZpZXdJbWcge1xuICBtYXJnaW46IDAgMCA1cHggMjVweDtcbn1cblxuLm1pcnJvclNpdGVIZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzcHg7XG59XG5cbi5taXJyb3JPcmlnaW5MaW5rIHtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nOiAzcHggMCAzcHggMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jbGlnaHRib3ggLmVsZW1lbnRQcmV2aWV3IC5taXJyb3JPcmlnaW5MaW5rLFxuI3BhbmVsVHdvIC5lbGVtZW50UHJldmlldyAubWlycm9yT3JpZ2luTGluayxcbi5lbGVtZW50UHJldmlldyAubWlycm9yT3JpZ2luTGluazpob3ZlciB7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzY2NjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNHB4IDVweDtcbiAgcGFkZGluZzogN3B4IDAgM3B4IDI1cHg7XG59XG5cbi5taXJyb3JPcmlnaW4ge1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjOTk5O1xuICBwYWRkaW5nOiAzcHggMCAzcHggMjVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogM3B4IDBweDtcbn1cblxuLm1pcnJvck9wdGlvbiB7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG4vKiBNaXJyb3JlZCBQYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lbGVtZW50UHJldmlld1RpdGxlIGEsXG4uZWxlbWVudFByZXZpZXdUaXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5yYXBpZENvbnRlbnRNaXJyb3IgcCB7XG4gIG1hcmdpbjogMWVtIDA7XG59XG5cbi8qIERpc3BsYXkgQm9keSBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZGlzcGxheUJvZHlIZWFkZXItaW1hZ2Uge1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cblxuLyogRG9jdW1lbnQgUGFnZSBFbGVtZW50ICovXG4uZG9jdW1lbnRFbGVtZW50IGgzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDAgMCAxZW0gMDtcbiAgcGFkZGluZzogMTVweCAwIDAgNjBweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5kb2N1bWVudEVsZW1lbnQgaDMuaWNvblNpemVYUyB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICBtaW4taGVpZ2h0OiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDIycHg7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uZG9jdW1lbnRFbGVtZW50IGgzLmljb25TaXplUyB7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweCAyNHB4O1xuICBtaW4taGVpZ2h0OiAyNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uZG9jdW1lbnRFbGVtZW50IGgzLmljb25TaXplTSB7XG4gIGJhY2tncm91bmQtc2l6ZTogMzJweCAzMnB4O1xuICBtaW4taGVpZ2h0OiAzMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uZG9jdW1lbnRFbGVtZW50IGgzLmljb25TaXplTCB7XG4gIGJhY2tncm91bmQtc2l6ZTogNDhweCA0OHB4O1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uZG9jdW1lbnRFbGVtZW50IGgzLmljb25TaXplWEwge1xuICBiYWNrZ3JvdW5kLXNpemU6IDYwcHggNjBweDtcbiAgbWluLWhlaWdodDogNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA2OHB4O1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnBkZiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZG9jSWNvblBkZi5zdmdcIik7XG59XG5cbi53b3JkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uV29yZC5zdmdcIik7XG59XG5cbi5leGNlbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZG9jSWNvbkV4Y2VsLnN2Z1wiKTtcbn1cblxuLnBvd2VycG9pbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25QcHQuc3ZnXCIpO1xufVxuXG4uaWNvblRleHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25UZXh0LnN2Z1wiKTtcbn1cblxuLmltYWdlQm1wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uQm1wLnN2Z1wiKTtcbn1cblxuLmltYWdlRXBzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uRXBzLnN2Z1wiKTtcbn1cblxuLmltYWdlR2lmIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uR2lmLnN2Z1wiKTtcbn1cblxuLmltYWdlSnBnIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uSnBnLnN2Z1wiKTtcbn1cblxuLmltYWdlUG5nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uUG5nLnN2Z1wiKTtcbn1cblxuLmltYWdlVGlmIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uVGlmLnN2Z1wiKTtcbn1cblxuLnZpZGVvQXZpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uQXZpLnN2Z1wiKTtcbn1cblxuLnZpZGVvTW92IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uTW92LnN2Z1wiKTtcbn1cblxuLnZpZGVvTXBnIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uTXBnLnN2Z1wiKTtcbn1cblxuLmljb25Dc3Yge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25Dc3Yuc3ZnXCIpO1xufVxuXG4uYXVkaW9NcDMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25NcDMuc3ZnXCIpO1xufVxuXG4uYXVkaW9XYXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25XYXYuc3ZnXCIpO1xufVxuXG4uemlwIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9kb2NJY29uWmlwLnN2Z1wiKTtcbn1cblxuLmdlbmVyaWMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2RvY0ljb25HZW5lcmljLnN2Z1wiKTtcbn1cblxuLyogTGluayBQYWdlIEVsZW1lbnQgKi9cbi5saW5rRWxlbWVudCBoNCB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5saW5rRWxlbWVudCBoNCBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBEQjE0QztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnM7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG59XG5cbi5saW5rRWxlbWVudCBoNCBhOmhvdmVyIHtcbiAgb3BhY2l0eTogLjg7XG59XG5cbi5saW5rRWxlbWVudCAuZ29Ub0xpbms6YmVmb3JlLFxuLmxpbmtFbGVtZW50IC5lbWFpbExpbms6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxpbmtFbGVtZW50IC5nb1RvTGluazphZnRlcixcbi5saW5rRWxlbWVudCAuZW1haWxMaW5rOmFmdGVyIHtcbiAgY29sb3I6ICMwREIxNEM7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IC44ZW07XG4gIG1hcmdpbjogMCAwIDAgNnB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbn1cblxuLmxpbmtFbGVtZW50IC5nb1RvTGluazpob3ZlcjphZnRlcixcbi5saW5rRWxlbWVudCAuZW1haWxMaW5rOmhvdmVyOmFmdGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5saW5rRWxlbWVudCAuZW1haWxMaW5rOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwMDNcIjtcbn1cblxuLmxpbmtFbGVtZW50IC50ZXh0IHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbn1cblxuLmxpbmtFbGVtZW50LmFsdExpbmsgaDQgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyOiBzb2xpZCAycHggd2hpdGU7XG4gIHBhZGRpbmc6IDI4cHggMzBweDtcbn1cblxuLmxpbmtFbGVtZW50LmZpbmQgaDQgYTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDQxJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5hZG1pbiAubGlua0VsZW1lbnQgaDQge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDEwcHggMCA1cHggMDtcbn1cblxuLmFkbWluIC5saW5rRWxlbWVudCBoNDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uYWRtaW4gLmxpbmtFbGVtZW50IGg0IGEge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5hZG1pbiAubGlua0VsZW1lbnQgaDQgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYWRtaW4gLmxpbmtFbGVtZW50IC5nb1RvTGluazpiZWZvcmUsIC5hZG1pbiAubGlua0VsZW1lbnQgLmdvVG9MaW5rOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFkbWluIC5saW5rRWxlbWVudCAudGV4dCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgcGFkZGluZzogMCAwIDEwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLyogQWdncmVnYXRvciBFbGVtZW50cyAqL1xuLmFnZ3JlZ2F0b3JFbGVtZW50IGg2IHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiA0cHggMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG59XG5cbi5hZ2dyZWdhdG9yRWxlbWVudCAubmV3c0ltYWdlIGltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFnZ3JlZ2F0b3JFbGVtZW50IC5ib3hzY29yZSB7XG4gIG1hcmdpbjogM3B4IDA7XG59XG5cbi5hZ2dyZWdhdG9yRWxlbWVudCAuZ2FtZUFyZWEgLmRldGFpbHMsIC5hZ2dyZWdhdG9yRWxlbWVudCAuZ2FtZUFyZWEgLnZldmVudCAuc3VtbWFyeSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmFnZ3JlZ2F0b3JFbGVtZW50IC52ZXZlbnQgLnN0YXRUYWJsZSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbi5hZ2dyZWdhdG9yRWxlbWVudCAubmV3c0ltYWdlQ2FwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hZ2dyZWdhdG9yRWxlbWVudCAucGFpZCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcGFpZFN0YW1wLmdpZlwiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xufVxuXG4ubmV3c1ByZXZpZXdUaHVtYiB7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4ubmV3c1ByZXZpZXdUZXh0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2dhbWVOZXdzQWdncmVnYXRvciB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI2dhbWVOZXdzQWdncmVnYXRvciAudGVhc2VyLCAjZ2FtZU5ld3NBZ2dyZWdhdG9yIC5jb21tZW50c0FuZE1vcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjIgLm5ld3NJbWFnZSxcbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyAubmV3c0ltYWdlLFxuLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4xIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjMgLm5ld3NJbWFnZSxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSAubmV3c0ltYWdlLFxuLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4yIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjMgLm5ld3NJbWFnZSxcbi50d29Db2x1bW42NjMzIC5jb2x1bW4yIC5uZXdzSW1hZ2UsXG4udHdvQ29sdW1uMzM2NiAuY29sdW1uMSAubmV3c0ltYWdlLFxuLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4xIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIgLm5ld3NJbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMTBweCAwO1xufVxuXG4udHdvQ29sdW1uNTA1MCAubmV3c0ltYWdlIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4yIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4zIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4xIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4zIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4xIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4yIC5uZXdzSW1hZ2UgaW1nLFxuLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4zIC5uZXdzSW1hZ2UgaW1nLFxuLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjIgLm5ld3NJbWFnZSBpbWcsXG4udHdvQ29sdW1uMzM2NiAuY29sdW1uMSAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMSAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMiAubmV3c0ltYWdlIGltZyxcbi50d29Db2x1bW41MDUwIC5uZXdzSW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMiAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50d29Db2x1bW42NjMzIC5jb2x1bW4yIC5ldmVudFByZXZpZXcgLm5vdFRvZGF5LFxuLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLmV2ZW50UHJldmlldyAubm90VG9kYXksXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEgLmV2ZW50UHJldmlldyAubm90VG9kYXksXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIgLmV2ZW50UHJldmlldyAubm90VG9kYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ2FtZUFyZWEgLml0ZW0gc3Ryb25nIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubW9yZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucmVndWxhdGlvbnMge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5yZWd1bGF0aW9ucyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xufVxuXG4uaW5lbGlnaWJsZSB7XG4gIGNvbG9yOiAjY2MwMDAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmVsaWdpYmxlIHtcbiAgY29sb3I6ICMwMDk5MzM7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc3RhbmRpbmdzQWdnIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnN0YW5kaW5nc0FnZyBoNCB7XG4gIG1hcmdpbjogNXB4IDVweCAwO1xufVxuXG4uc3RhbmRpbmdzQWdnIC5zdGF0VGFibGUge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDVweDtcbn1cblxuLnN0YW5kaW5nc0FnZyAuc3RhdFRhYmxlIHRkLCAuc3RhbmRpbmdzQWdnIC5zdGF0VGFibGUgdGgge1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiA3JTtcbn1cblxuLnN0YW5kaW5nc0FnZyAuc3RhdFRhYmxlIC5zdGFuZGluZ3NUZWFtTmFtZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiA0MCU7XG59XG5cbi5zdGFuZGluZ3NBZ2cgLnZldmVudCB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLnN0YW5kaW5nc0FnZyAudmV2ZW50IC5zdGF0VGFibGUge1xuICBtYXJnaW46IDA7XG59XG5cbi5zdGFuZGluZ3NSZXN1bHRzTGlua3MgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4uZmFpbGVkIHtcbiAgYmFja2dyb3VuZDogcGluaztcbn1cblxuLmZhaWxlZCBhIHtcbiAgY29sb3I6IHJlZDtcbn1cblxuLyogTmV3cyBBZ2dyZWdhdG9yICovXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5pdGVtIHtcbiAgcGFkZGluZzogMjVweCAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNkZGQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5pdGVtOm50aC1vZi10eXBlKDEpIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5kYXRlQXV0aG9yIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5uZXdzQWdncmVnYXRvckVsZW1lbnQgLm5ld3NBdXRob3IsIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLm5ld3NEYXRlIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzVGV4dCwgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG59XG5cbi5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIgPiBhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIGxlZnQ6IDA7XG59XG5cbi5hZ2dIZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0Qztcbn1cblxuLmV4cGFuZGVkIC5uZXdzSXRlbUhlYWRlciA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAzcHggMTVweCA3cHggMHB4O1xufVxuXG4uZXhwYW5kZWQgLm5ld3NJdGVtSGVhZGVyID4gYSBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5leHBhbmRlZCAubmV3c0l0ZW1FbGVtZW50IGg0IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW46IC43NWVtIDA7XG59XG5cbi5leHBhbmRlZCAubmV3c0l0ZW1IZWFkZXIgaDIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cblxuLmV4cGFuZGVkIC5uZXdzVGV4dCB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbi5leHBhbmRlZCAubmV3c1RleHQgaDEsIC5leHBhbmRlZCAubmV3c1RleHQgaDIsIC5leHBhbmRlZCAubmV3c1RleHQgaDMsIC5leHBhbmRlZCAubmV3c1RleHQgaDQsIC5leHBhbmRlZCAubmV3c1RleHQgaDUsIC5leHBhbmRlZCAubmV3c1RleHQgaDYge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIC41ZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmV4cGFuZGVkIC5uZXdzVGV4dCB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxuLmNvbmRlbnNlZCBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5jb25kZW5zZWQgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogM3B4IDE1cHggN3B4IDBweDtcbn1cblxuLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkID4gYSBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb25kZW5zZWQgLnRlYXNlciB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzY2NjtcbiAgbWFyZ2luOiAuNzVlbSAwO1xufVxuXG4uY29uZGVuc2VkIC5kZXRhaWxzLCAuY29uZGVuc2VkID4gdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5jb25kZW5zZWQgLmRldGFpbHMgaDQsIC5jb25kZW5zZWQgPiB1bCBoNCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuXG4uY29uZGVuc2VkIC5kZXRhaWxzIHtcbiAgcGFkZGluZy1sZWZ0OiA5MHB4O1xufVxuXG4uY29tbWVudENvdW50IC5idXR0b24tY29tbWVudENvdW50IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29tbWVudENvdW50IC5idXR0b24tY29tbWVudENvdW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmNvbW1lbnRDb3VudCAuYnV0dG9uLWNvbW1lbnRDb3VudCAuYnV0dG9uLWltYWdlLXJpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbW1lbnRDb3VudCAuYnV0dG9uLWNvbW1lbnRDb3VudCAuYnV0dG9uLWNvbnRlbnQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdG9wOiAycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47XG59XG5cbi5jb21tZW50Q291bnQgLmJ1dHRvbi1jb21tZW50Q291bnQgLmJ1dHRvbi1jb250ZW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzBEQjE0Qztcbn1cblxuLmNvbW1lbnRDb3VudCAuYnV0dG9uLWNvbW1lbnRDb3VudCAuYnV0dG9uLWNvbnRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbnRlbnQ6IFwiXFxmMGU1XCI7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogLjI1ZW07XG59XG5cbi5jb21tZW50c0FuZE1vcmUge1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiA1cHggMCAwIDA7XG59XG5cbi5jb21tZW50c0FuZE1vcmUgLnJlYWRNb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IC41ZW07XG59XG5cbi5jb21tZW50c0FuZE1vcmUgLnJlYWRNb3JlIGEge1xuICBtYXJnaW46IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c1RleHQsIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAuY29tbWVudHNBbmRNb3JlLCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgfVxuICAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5pdGVtID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICB9XG4gIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA4MzBweCkge1xuICAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NUZXh0LCAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsIC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gIH1cbiAgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0gPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gIH1cbiAgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC00IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAuY29sLW1kLTQgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzVGV4dCwgLmNvbC1tZC00IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAuY29tbWVudHNBbmRNb3JlLCAuY29sLW1kLTQgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5jb2wtbWQtNCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICB9XG4gIC5jb2wtbWQtNCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5pdGVtID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICB9XG4gIC5jb2wtbWQtNCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5jb25kZW5zZWQgLmRldGFpbHMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c1RleHQsIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLmNvbW1lbnRzQW5kTW9yZSwgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgfVxuICAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgfVxuICAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkIC5kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzVGV4dCwgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG4gIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0gPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkIC5kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDkzMHB4KSB7XG4gIC5jb2wtbWQtNCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLmNvbC1tZC00IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c1RleHQsIC5jb2wtbWQtNCAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLmNvbW1lbnRzQW5kTW9yZSwgLmNvbC1tZC00IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuY29sLW1kLTQgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAuY29sLW1kLTQgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAuY29sLW1kLTQgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkIC5kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NUZXh0LCAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0gPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzVGV4dCwgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIsIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NUZXh0LCAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLmNvbW1lbnRzQW5kTW9yZSwgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlcixcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c1RleHQsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAuY29tbWVudHNBbmRNb3JlLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzVGV4dCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5jb21tZW50c0FuZE1vcmUsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogOTBweDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyID4gYSwgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIgPiBhLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyID4gYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTJweDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCA+IGEsIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCA+IGEsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCA+IGEsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiA3cHggMTVweCA3cHggMHB4O1xuICB9XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCAuZGV0YWlscywgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkIC5kZXRhaWxzLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5jb25kZW5zZWQgLmRldGFpbHMsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbmRlbnNlZCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NUZXh0LCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLmNvbW1lbnRzQW5kTW9yZSwgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciwgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c1RleHQsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAuY29tbWVudHNBbmRNb3JlLCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkID4gYSwgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuY29uZGVuc2VkIC5kZXRhaWxzLCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5jb25kZW5zZWQgLmRldGFpbHMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vKiBFdmVudCBBZ2dyZWdhdG9ycyAqL1xuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmFnZ0hlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAudmV2ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyNXB4IDA7XG59XG5cbi5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC52ZXZlbnQgfiAudmV2ZW50IHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjZGRkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbn1cblxuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnZldmVudC5vZGQsIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC52ZXZlbnQuZXZlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSxcbi5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kZXRhaWxzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiA5NXB4O1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnRpbWUsXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAubG9jYXRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAubG9jYXRpb24sIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5sb2NhdGlvbiA+IGEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAudGFncyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMTJweDtcbn1cblxuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRUVFO1xuICBwYWRkaW5nOiAuNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogODBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDQ1JSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDQ1JSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDUlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB3aWR0aDogLjc1ZW07XG4gIGhlaWdodDogLjc1ZW07XG59XG5cbi5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kYXRlSW1hZ2UgLm1vbnRoIHtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlIC5kYXRlIHtcbiAgZm9udC1zaXplOiAzZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZm9ybUVsZW1lbnQge1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbi5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5mb3JtRWxlbWVudCBbaWQkPVwiX3N0YXJ0X2RhdGVfZGF5XCJdLFxuLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmZvcm1FbGVtZW50IFtpZCQ9XCJfZW5kX2RhdGVfZGF5XCJdIHtcbiAgd2lkdGg6IDhlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNTBweCkge1xuICAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cbiAgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnN1bW1hcnksXG4gIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuICAuY29sLW1kLTQgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG4gIC5jb2wtbWQtNCAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlOmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICByaWdodDogaW5pdGlhbDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNDUlKSByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAuY29sLW1kLTQgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnN1bW1hcnksXG4gIC5jb2wtbWQtNCAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC0zIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kYXRlSW1hZ2Uge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgLmNvbC1tZC0zIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5zdW1tYXJ5LFxuICAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRldGFpbHMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlcixcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlcixcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlcixcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZTphZnRlciB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDQ1JSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnN1bW1hcnksXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kZXRhaWxzLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRldGFpbHMsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5zdW1tYXJ5LFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGV0YWlscyxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLnN1bW1hcnksXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDk1cHg7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRhdGVJbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlOmFmdGVyLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGF0ZUltYWdlOmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICByaWdodDogaW5pdGlhbDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNDUlKSByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuc3VtbWFyeSxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQgLmRldGFpbHMsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5zdW1tYXJ5LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5ldmVudFByZXZpZXcge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLmV2ZW50UHJldmlldyB0aCB7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMTVweCAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjRTFFOEVEO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBmb250OiA2MDAgMTJweC8xLjIgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5ldmVudFByZXZpZXcgdGggYSB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZXZlbnRQcmV2aWV3IHRkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4uZXZlbnRQcmV2aWV3IHRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS13ZWVrLXZpZXctZGF0ZSkgXCJcIjtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogN3B4IDEycHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRkZGO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmV2ZW50UHJldmlldyB0ZCxcbi5ldmVudFByZXZpZXcgdGgge1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xufVxuXG4uZXZlbnRQcmV2aWV3IHRkOmZpcnN0LWNoaWxkLFxuLmV2ZW50UHJldmlldyB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uZXZlbnRQcmV2aWV3IHRkOmxhc3QtY2hpbGQsXG4uZXZlbnRQcmV2aWV3IHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5ldmVudFByZXZpZXcgLmV2ZW50ICsgLmV2ZW50IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi5ldmVudFByZXZpZXcgLm5vZW50cnkge1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcbiAgLmV2ZW50UHJldmlldyB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGRkY7XG4gIH1cbiAgLmV2ZW50UHJldmlldyxcbiAgLmV2ZW50UHJldmlldyB0Ym9keSxcbiAgLmV2ZW50UHJldmlldyB0cixcbiAgLmV2ZW50UHJldmlldyB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmV2ZW50UHJldmlldyB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXZlbnRQcmV2aWV3IHRkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgd29yZC1icmVhazogd29yZC1icmVhaztcbiAgfVxuICAuZXZlbnRQcmV2aWV3IHRkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmV2ZW50UHJldmlldyAuZXZlbnQge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgLmV2ZW50UHJldmlldyAuZXZlbnQgKyAuZXZlbnQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuICAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNGRkY7XG4gIH1cbiAgLmNvbC1tZC02IC5ldmVudFByZXZpZXcsXG4gIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRib2R5LFxuICAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0cixcbiAgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgd29yZC1icmVhazogd29yZC1icmVhaztcbiAgfVxuICAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IC5ldmVudCB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICAuY29sLW1kLTYgLmV2ZW50UHJldmlldyAuZXZlbnQgKyAuZXZlbnQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC00IC5ldmVudFByZXZpZXcge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRkZGO1xuICB9XG4gIC5jb2wtbWQtNCAuZXZlbnRQcmV2aWV3LFxuICAuY29sLW1kLTQgLmV2ZW50UHJldmlldyB0Ym9keSxcbiAgLmNvbC1tZC00IC5ldmVudFByZXZpZXcgdHIsXG4gIC5jb2wtbWQtNCAuZXZlbnRQcmV2aWV3IHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29sLW1kLTQgLmV2ZW50UHJldmlldyB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29sLW1kLTQgLmV2ZW50UHJldmlldyB0ZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgIHdvcmQtYnJlYWs6IHdvcmQtYnJlYWs7XG4gIH1cbiAgLmNvbC1tZC00IC5ldmVudFByZXZpZXcgdGQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29sLW1kLTQgLmV2ZW50UHJldmlldyAuZXZlbnQge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgLmNvbC1tZC00IC5ldmVudFByZXZpZXcgLmV2ZW50ICsgLmV2ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI0ZGRjtcbiAgfVxuICAuY29sLW1kLTMgLmV2ZW50UHJldmlldyxcbiAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdGJvZHksXG4gIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRyLFxuICAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdGQge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICB3b3JkLWJyZWFrOiB3b3JkLWJyZWFrO1xuICB9XG4gIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgLmV2ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IC5ldmVudCArIC5ldmVudCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5ldmVudFByZXZpZXcsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0aGVhZCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGJvZHksXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGJvZHkge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRyLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRyIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZCxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0aCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0aCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRkLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRkIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IG5vbmU7XG4gICAgd29yZC1icmVhazogd29yZC1icmVhaztcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtNiAuZXZlbnRQcmV2aWV3IHRkOmJlZm9yZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTYgLmV2ZW50UHJldmlldyAuZXZlbnQsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgLmV2ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRkZGO1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGJvZHksXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdHIsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgIHdvcmQtYnJlYWs6IHdvcmQtYnJlYWs7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLmV2ZW50UHJldmlldyB0ZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgLmV2ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5ldmVudFByZXZpZXcgLmV2ZW50ICsgLmV2ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg5MXB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50UHJldmlldyxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRoZWFkLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0Ym9keSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0Ym9keSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB9XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdHIsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdHIge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRkLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRoLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRkLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRoIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdGQsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgdGQge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogbm9uZTtcbiAgICB3b3JkLWJyZWFrOiB3b3JkLWJyZWFrO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0ZDpmaXJzdC1jaGlsZCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0ZDpsYXN0LWNoaWxkLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuZXZlbnRQcmV2aWV3IHRkOmJlZm9yZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmV2ZW50UHJldmlldyB0ZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmV2ZW50UHJldmlldyAuZXZlbnQsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5ldmVudFByZXZpZXcgLmV2ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5wYWdlRWwgLmF1ZGlvRWxlbWVudCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG59XG5cbi8qIENvbGxlY3RvcnMgKi9cbi5jb2xsZWN0b3JFbGVtZW50IC50YWdzIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW46IDA7XG59XG5cbi5jb2xsZWN0b3JOZXdzIC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyNXB4IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xsZWN0b3JOZXdzIC5pdGVtOm50aC1vZi10eXBlKDEpIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uY29sbGVjdG9yTmV3cyAuaXRlbSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDNweCAxNXB4IDdweCAwcHg7XG59XG5cbi5jb2xsZWN0b3JOZXdzIC5pdGVtID4gYSBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb2xsZWN0b3JOZXdzIC5pdGVtID4gaDQge1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uY29sbGVjdG9yTmV3cyAuZGF0ZUF1dGhvciB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDA7XG59XG5cbi5jb2xsZWN0b3JOZXdzIC5uZXdzQXV0aG9yLCAuY29sbGVjdG9yTmV3cyAubmV3c0RhdGUge1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuXG4uY29sbGVjdG9yTmV3cyAudGVhc2VyIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luOiAuNzVlbSAwO1xufVxuXG4uY29sbGVjdG9yTmV3cyAudGFncyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY29sbGVjdG9yTmV3cyAuY2xlYXJBbGwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLmRhdGVBdXRob3IsIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLnRlYXNlciwgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAudGFncyB7XG4gIHBhZGRpbmctbGVmdDogOTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzBweCkge1xuICAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gYSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC5kYXRlQXV0aG9yLCAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50ZWFzZXIsIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLnRhZ3Mge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtNCAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gYSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC00IC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCwgLmNvbC1tZC00IC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLmRhdGVBdXRob3IsIC5jb2wtbWQtNCAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50ZWFzZXIsIC5jb2wtbWQtNCAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50YWdzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSA+IGEge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG4gIC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC5kYXRlQXV0aG9yLCAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAudGVhc2VyLCAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAudGFncyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgPiBhLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gYSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxheW91dC01MC0yNS0yNSAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC5kYXRlQXV0aG9yLCAubGF5b3V0LTUwLTI1LTI1IC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50ZWFzZXIsIC5sYXlvdXQtNTAtMjUtMjUgLmNvbC1tZC0zIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLnRhZ3MsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbC1tZC0zIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgPiBoNCxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAuZGF0ZUF1dGhvcixcbiAgLmxheW91dC0yNS0yNS01MCAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAudGVhc2VyLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50YWdzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSA+IGEsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgPiBhIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlID4gaDQsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLmRhdGVBdXRob3IsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLnRlYXNlciwgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSAudGFncywgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgLmNvbGxlY3Rvck5ld3MgLmFydGljbGVIYXNJbWFnZSA+IGg0LCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC5kYXRlQXV0aG9yLCAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiAuY29sbGVjdG9yTmV3cyAuYXJ0aWNsZUhhc0ltYWdlIC50ZWFzZXIsIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IC5jb2xsZWN0b3JOZXdzIC5hcnRpY2xlSGFzSW1hZ2UgLnRhZ3Mge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uY29sbGVjdG9yRG9jdW1lbnRzIC5pdGVtLFxuLmNvbGxlY3RvclBob3RvcyAuaXRlbSB7XG4gIHBhZGRpbmc6IDI1cHggMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjZGRkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbn1cblxuLmNvbGxlY3RvckRvY3VtZW50cyAuaXRlbTpudGgtb2YtdHlwZSgxKSxcbi5jb2xsZWN0b3JQaG90b3MgLml0ZW06bnRoLW9mLXR5cGUoMSkge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jb2xsZWN0b3JEb2N1bWVudHMgLml0ZW0gLmluZm8sXG4uY29sbGVjdG9yUGhvdG9zIC5pdGVtIC5pbmZvIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMjVweDtcbn1cblxuLmNvbGxlY3RvckRvY3VtZW50cyAuaXRlbSA+IGEgaW1nLFxuLmNvbGxlY3RvclBob3RvcyAuaXRlbSA+IGEgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbGxlY3RvckRvY3VtZW50cyBpbWcsXG4uY29sbGVjdG9yUGhvdG9zIGltZyB7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb2xsZWN0b3JEb2N1bWVudHMgaDQsXG4uY29sbGVjdG9yUGhvdG9zIGg0IHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xufVxuXG4uY29sbGVjdG9yRG9jdW1lbnRzIGxpIGg0IGEsXG4uY29sbGVjdG9yUGhvdG9zIGxpIGg0IGEge1xuICBmb250LXNpemU6IC43NWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jb2xsZWN0b3JEb2N1bWVudHMgLmRhdGVBdXRob3IsXG4uY29sbGVjdG9yUGhvdG9zIC5kYXRlQXV0aG9yIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIG1hcmdpbi1ib3R0b206IC4yNWVtO1xufVxuXG4vKiBGZWVkIFJlYWRlciAqL1xuLmZlZWRlciA+IGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA5cHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDJweCAwICNmZmYsIDdweCAwICMwREIxNEM7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuXG4uZmVlZGVyID4gZGl2Om50aC1vZi10eXBlKDEpID4gZGl2IHtcbiAgcGFkZGluZzogMjVweCAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNkZGQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uZmVlZGVyID4gZGl2Om50aC1vZi10eXBlKDEpID4gZGl2Om50aC1vZi10eXBlKDEpIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uZmVlZGVyID4gZGl2Om50aC1vZi10eXBlKDEpID4gZGl2ID4gdWwgbGk6bGFzdC1jaGlsZCA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mZWVkZXIgLmV2ZW4gPiB1bCwgLmZlZWRlciAub2RkID4gdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5mZWVkZXIgLmV2ZW4gPiB1bCB1bCwgLmZlZWRlciAub2RkID4gdWwgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gIHBhZGRpbmctbGVmdDogLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uZmVlZGVyIC5ldmVuID4gdWwgb2wsIC5mZWVkZXIgLm9kZCA+IHVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uZmVlZGVyIC5ldmVuID4gdWwgdWwgbGksIC5mZWVkZXIgLmV2ZW4gPiB1bCBvbCBsaSwgLmZlZWRlciAub2RkID4gdWwgdWwgbGksIC5mZWVkZXIgLm9kZCA+IHVsIG9sIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLmZlZWRlciBibG9ja3F1b3RlIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IGluaXRpYWw7XG4gIHdpZHRoOiBpbml0aWFsO1xuICBwYWRkaW5nOiAwIDFlbTtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjRUVFO1xuICBtYXJnaW46IDFlbTtcbn1cblxuLmZlZWRlciBibG9ja3F1b3RlOmJlZm9yZSwgLmZlZWRlciBibG9ja3F1b3RlOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZlZWRlciBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5mZWVkZXIgdGFibGUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb250YWN0RWxlbWVudCBpbWcge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXgtd2lkdGg6IDUwcHg7XG4gIG1heC1oZWlnaHQ6IDEwMHB4O1xufVxuXG4uY29udGFjdEVsZW1lbnQgaW1nICsgZGl2IHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcbn1cblxuLmNvbnRhY3RFbGVtZW50IGltZyArIGRpdiBoMyB7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cbi5jb250YWN0RWxlbWVudCBoMyB7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmNvbnRhY3RFbGVtZW50IHAge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5jb250YWN0RWxlbWVudCBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDlweDtcbn1cblxuLmNvbnRhY3RFbGVtZW50IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb250YWN0RWxlbWVudCAudGl0bGUge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jb250YWN0LWVsZW1lbnQtZmlyc3QtbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb250YWN0LWVsZW1lbnQtbGFzdC1uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAuc3BvbnNvckVsZW1lbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLnNwb25zb3JFbGVtZW50IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnNwb25zb3JFbGVtZW50IC5kZXNjcmlwdGlvbiA+IGgzIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5zcG9uc29yRWxlbWVudCAuZGVzY3JpcHRpb24gLmdvVG9MaW5rIHtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgcGFkZGluZzogNXB4IDEwcHggNXB4IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAtNDYwcHg7XG4gIG1hcmdpbjogLjVlbSAwO1xufVxuXG4uc3BvbnNvckVsZW1lbnQgLmltYWdlTGluayB7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogNXB4IDEwcHggMTBweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNwb25zb3JFbGVtZW50IC5pbWFnZUxpbmsgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zcG9uc29yRWxlbWVudC5oYXNJbWFnZSAuZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDExMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuY29sLW1kLTMgLnNwb25zb3JFbGVtZW50Lmhhc0ltYWdlIC5pbWFnZUxpbmsge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG4gIC5jb2wtbWQtMyAuc3BvbnNvckVsZW1lbnQuaGFzSW1hZ2UgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLmNvbC1tZC00IC5zcG9uc29yRWxlbWVudC5oYXNJbWFnZSAuaW1hZ2VMaW5rIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAuY29sLW1kLTQgLnNwb25zb3JFbGVtZW50Lmhhc0ltYWdlIC5kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM1MHB4KSB7XG4gIC5zcG9uc29yRWxlbWVudC5oYXNJbWFnZSAuaW1hZ2VMaW5rIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAuc3BvbnNvckVsZW1lbnQuaGFzSW1hZ2UgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIFBvbGwgRWxlbWVudCBTdHlsZXMgKi9cbi5wb2xsRWxlbWVudCBoMyBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA5cHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDJweCAwICNmZmYsIDdweCAwICMwREIxNEM7XG59XG5cbi5wb2xsRWxlbWVudCB1bCBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogOHB4IDhweCA4cHggMTBweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucG9sbEVsZW1lbnQgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nOiAxNXB4IDhweCA4cHggMTBweDtcbn1cblxuLnBvbGxFbGVtZW50IHVsIGxpOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgcGFkZGluZzogOHB4IDhweCAxNXB4IDEwcHg7XG59XG5cbi5wb2xsRWxlbWVudCBsYWJlbCxcbi5wb2xsRWxlbWVudCBoNSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5wb2xsRWxlbWVudCBoNSB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucG9sbEVsZW1lbnQgbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5wb2xsRWxlbWVudCB1bCBsaS5wb2xsVG90YWwge1xuICBwYWRkaW5nOiAxNXB4IDhweCA4cHggMTBweDtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZGQ7XG59XG5cbi5wb2xsRWxlbWVudCB1bCBsaS5wb2xsVG90YWwgaDUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucG9sbEVsZW1lbnQgdWwgbGkudm90ZUJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbn1cblxuLnBvbGxFbGVtZW50IHVsIGxpLnZvdGVCdXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTExcHggMCAwIDE4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbG9yOiAjMERCMTRDO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbjtcbn1cblxuLnBvbGxFbGVtZW50IHVsIGxpLnZvdGVCdXR0b246aG92ZXI6YWZ0ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnBvbGxFbGVtZW50IHVsIGxpLnZvdGVCdXR0b24gaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzAwMjA0MDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1pbmRlbnQ6IC0yMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xufVxuXG4ucG9sbEVsZW1lbnQgdWwgbGkudm90ZUJ1dHRvbiBpbnB1dFt0eXBlPSdzdWJtaXQnXTpmb2N1cywgLnBvbGxFbGVtZW50IHVsIGxpLnZvdGVCdXR0b24gaW5wdXRbdHlwZT0nc3VibWl0J106aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAyMDQwO1xuICBvdXRsaW5lOiAwO1xufVxuXG4uYmFyQmFja2dyb3VuZCBwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLmNvbnRlbnRUYWJzICsgLmNvbGxlY3RvclRyZWUuc2l0ZU1hcEVsZW1lbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2ZmZjtcbn1cblxuLmNvbnRlbnRUYWJzICsgLmNvbGxlY3RvclRyZWUuc2l0ZU1hcEVsZW1lbnQgYVtocmVmKj1cIi9kb2N1bWVudC9cIl0gKyAuaW5mbyBhLnRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY29udGVudFRhYnMgKyAuY29sbGVjdG9yVHJlZS5zaXRlTWFwRWxlbWVudCBhW2hyZWYqPVwiL2RvY3VtZW50L1wiXSArIC5pbmZvIGEudGl0bGU6YmVmb3JlIHtcbiAgdG9wOiAtLjJlbTtcbiAgbGVmdDogLTIwcHg7XG59XG5cbi5jb250ZW50VGFicyArIC5jb2xsZWN0b3JUcmVlLnNpdGVNYXBFbGVtZW50IGFbaHJlZio9XCIvcGhvdG9fZ2FsbGVyeS9cIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb250ZW50VGFicyArIC5jb2xsZWN0b3JUcmVlLnNpdGVNYXBFbGVtZW50IGFbaHJlZio9XCIvcGhvdG9fZ2FsbGVyeS9cIl06YmVmb3JlIHtcbiAgdG9wOiAtLjJlbTtcbiAgbGVmdDogLTIwcHg7XG59XG5cbi5zaXRlTWFwRWxlbWVudCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5zaXRlTWFwRWxlbWVudCBoMywgLnNpdGVNYXBFbGVtZW50IGg0IHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5zaXRlTWFwRWxlbWVudCAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5zaXRlTWFwRWxlbWVudCAudW5saW1pdGVkSGllcmFyY2h5IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNpdGVNYXBFbGVtZW50IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgZGl2IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnNpdGVNYXBFbGVtZW50IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLnNpdGVNYXBFbGVtZW50IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgbGk6YmVmb3JlLCAuc2l0ZU1hcEVsZW1lbnQgLnVubGltaXRlZEhpZXJhcmNoeSBsaSBsaTpub3QoLmxhc3RMaSk6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0NDO1xufVxuXG4uc2l0ZU1hcEVsZW1lbnQgLnVubGltaXRlZEhpZXJhcmNoeSBsaSBsaTpiZWZvcmUge1xuICBoZWlnaHQ6IDFlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0M7XG59XG5cbi5zaXRlTWFwRWxlbWVudCAudW5saW1pdGVkSGllcmFyY2h5IC5sYXN0TGkge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4vKiBOZXdzIFNsaWRlc2hvdyBTdHlsZXMgKi9cbi5kcmFnIC5uZXdzU2xpZGVTaG93IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1hcnRpY2xlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5uZXdzU2xpZGVTaG93LWFydGljbGUuY3VycmVudCB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5uZXdzU2xpZGVTaG93LWFydGljbGUgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1oZWFkbGluZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAuMjVyZW07XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIGgxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGNhbGMoOTYlIC0gN3B4KTtcbiAgbWFyZ2luOiAwIDAgMnB4IDdweDtcbiAgcGFkZGluZzogMjBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgaDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtN3B4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwREIxNEM7XG59XG5cbi5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIGgxOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIGgxIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC1vLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIGgxIGEge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbiAgLmNvbC1tZC0zIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIGgxIGEge1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgfVxufVxuXG4ubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA5NiU7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBtYXJnaW46IDAgMCAycHggMDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgcCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNDJweCk7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICB0ZXh0LWluZGVudDogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC1vLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBwIHNwYW46ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBwIGEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE0MHB4O1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG59XG5cbi5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNkZGQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5jb2wtbWQtMyAubmV3c1NsaWRlU2hvdy10aHVtYm5haWxzIHtcbiAgZm9udC1zaXplOiAuNWVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gIC5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMge1xuICAgIGZvbnQtc2l6ZTogLjVlbTtcbiAgfVxufVxuXG4ubmV3c1NsaWRlU2hvdy10aHVtYm5haWxzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubmV3c1NsaWRlU2hvdy10aHVtYm5haWxzIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4O1xufVxuXG4uY29sLW1kLTMgLm5ld3NTbGlkZVNob3ctdGh1bWJuYWlscyBhIHtcbiAgcGFkZGluZzogNnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gIC5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMgYSB7XG4gICAgcGFkZGluZzogNnB4O1xuICB9XG59XG5cbi5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMgYTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAuNzVlbTtcbiAgaGVpZ2h0OiAuNzVlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRBNjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMgYTpob3ZlcjpiZWZvcmUsIC5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMgYS5jdXJyZW50OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwREIxNEM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjM3NSwgMS4zNzUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMzc1LCAxLjM3NSk7XG59XG5cbi5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5uZXdzU2xpZGVTaG93LXByZXYucGlsbC1zbWFsbC1sZWZ0LFxuLm5ld3NTbGlkZVNob3ctbmV4dC5waWxsLXNtYWxsLXJpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNkZGQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4ubmV3c1NsaWRlU2hvdy1wcmV2LnBpbGwtc21hbGwtbGVmdDpob3Zlcixcbi5uZXdzU2xpZGVTaG93LW5leHQucGlsbC1zbWFsbC1yaWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMERCMTRDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1wcmV2LnBpbGwtc21hbGwtbGVmdDpob3ZlcjpiZWZvcmUsXG4ubmV3c1NsaWRlU2hvdy1uZXh0LnBpbGwtc21hbGwtcmlnaHQ6aG92ZXI6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMzc1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjM3NSk7XG59XG5cbi5uZXdzU2xpZGVTaG93LXByZXYucGlsbC1zbWFsbC1sZWZ0OmJlZm9yZSxcbi5uZXdzU2xpZGVTaG93LW5leHQucGlsbC1zbWFsbC1yaWdodDpiZWZvcmUge1xuICBsaW5lLWhlaWdodDogMi41O1xuICBjb250ZW50OiAnXFxmMDYwJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LWZhbWlseTogJ2ZvbnRhd2Vzb21lJztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0LCBjb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQsIGNvbG9yIC4xcyBlYXNlLWluLW91dDtcbn1cblxuLm5ld3NTbGlkZVNob3ctcHJldi5waWxsLXNtYWxsLWxlZnQge1xuICBsZWZ0OiAwO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1uZXh0LnBpbGwtc21hbGwtcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLm5ld3NTbGlkZVNob3ctbmV4dC5waWxsLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNjEnO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5ld3NTbGlkZVNob3ctZW1wdHkgPiBwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1tb3JlLmJ1dHRvbi1zbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0QTY7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWluZGVudDogLTIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbjtcbn1cblxuLm5ld3NTbGlkZVNob3ctbW9yZS5idXR0b24tc21hbGw6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gIGNvbG9yOiAjMERCMTRDO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbjtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1tb3JlLmJ1dHRvbi1zbWFsbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDJkNWE7XG4gIGJvcmRlcjogMDtcbn1cblxuLm5ld3NTbGlkZVNob3ctbW9yZS5idXR0b24tc21hbGw6aG92ZXI6YWZ0ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5ld3NTbGlkZVNob3ctc3RvcCxcbi5uZXdzU2xpZGVTaG93LXBsYXkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5hc3BlY3RfcmF0aW9fb3JpZ2luYWwsXG4uYXNwZWN0X3JhdGlvXzFfMSxcbi5hc3BlY3RfcmF0aW9fNF8zLFxuLmFzcGVjdF9yYXRpb18xNl85LFxuLmFzcGVjdF9yYXRpb18yXzEsXG4uYXNwZWN0X3JhdGlvXzNfMSxcbi5hc3BlY3RfcmF0aW9fNF8xLFxuLmFzcGVjdF9yYXRpb184XzUge1xuICBoZWlnaHQ6IGluaXRpYWwgIWltcG9ydGFudDtcbn1cblxuLmFzcGVjdF9yYXRpb19vcmlnaW5hbDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5hc3BlY3RfcmF0aW9fb3JpZ2luYWw6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYXNwZWN0X3JhdGlvXzFfMTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uYXNwZWN0X3JhdGlvXzFfMTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hc3BlY3RfcmF0aW9fNF8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cblxuLmFzcGVjdF9yYXRpb180XzM6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYXNwZWN0X3JhdGlvXzE2Xzk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4uYXNwZWN0X3JhdGlvXzE2Xzk6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYXNwZWN0X3JhdGlvXzJfMTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiA1MCU7XG59XG5cbi5hc3BlY3RfcmF0aW9fMl8xOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFzcGVjdF9yYXRpb18zXzE6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWJvdHRvbTogMzMuMzMzMzMlO1xufVxuXG4uYXNwZWN0X3JhdGlvXzNfMTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hc3BlY3RfcmF0aW9fNF8xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDI1JTtcbn1cblxuLmFzcGVjdF9yYXRpb180XzE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYXNwZWN0X3JhdGlvXzhfNTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiA2Mi41JTtcbn1cblxuLmFzcGVjdF9yYXRpb184XzU6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2N3B4KSB7XG4gIC5jb2wtbWQtMyAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBoMSBhLFxuICAuY29sLW1kLTQgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgaDEgYSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5jb2wtbWQtMyAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBwLFxuICAuY29sLW1kLTQgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29sLW1kLTMgLmFzcGVjdF9yYXRpb180XzEgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUsXG4gIC5jb2wtbWQtMyAuYXNwZWN0X3JhdGlvXzNfMSAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSxcbiAgLmNvbC1tZC0zIC5hc3BlY3RfcmF0aW9fMl8xIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lLFxuICAuY29sLW1kLTQgLmFzcGVjdF9yYXRpb180XzEgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUsXG4gIC5jb2wtbWQtNCAuYXNwZWN0X3JhdGlvXzNfMSAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSxcbiAgLmNvbC1tZC00IC5hc3BlY3RfcmF0aW9fMl8xIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lLFxuICAuY29sLW1kLTYgLmFzcGVjdF9yYXRpb180XzEgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUsXG4gIC5jb2wtbWQtNiAuYXNwZWN0X3JhdGlvXzNfMSAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSxcbiAgLmNvbC1tZC02IC5hc3BlY3RfcmF0aW9fMl8xIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lLFxuICAuY29sLW1kLTggLmFzcGVjdF9yYXRpb180XzEgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUsXG4gIC5jb2wtbWQtOCAuYXNwZWN0X3JhdGlvXzNfMSAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSxcbiAgLmNvbC1tZC04IC5hc3BlY3RfcmF0aW9fMl8xIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcbiAgLmFzcGVjdF9yYXRpb180XzEgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUsXG4gIC5hc3BlY3RfcmF0aW9fM18xIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lLFxuICAuYXNwZWN0X3JhdGlvXzJfMSAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJlbTtcbiAgfVxuICAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSBoMSBhIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbiAgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUgcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM1MHB4KSB7XG4gIC5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyogV2VhdGhlciBFbGVtZW50IFN0eWxlcyAqL1xuLndlYXRoZXJFbGVtZW50IHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICM2NjY7XG4gIGJvcmRlci10b3AtY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci13aWR0aDogM3B4IDAgM3B4IDA7XG4gIGJvcmRlci1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgtNzJkZWcsICNBQUEgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI0FBQSA0cHgpIDMgMztcbiAgYm9yZGVyLWltYWdlOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTYyZGVnLCAjQUFBIDBweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAzcHgsICNBQUEgNHB4KSAzIDM7XG59XG5cbi53ZWF0aGVyRWxlbWVudC53ZWF0aGVyLW5vRm9yZWNhc3QgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ud2VhdGhlckVsZW1lbnQud2VhdGhlci1ub0ZvcmVjYXN0IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci01ZGF5Rm9yZWNhc3QgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBoZWlnaHQ6IDM0cHg7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci01ZGF5Rm9yZWNhc3QgbGkgLmNsZWFyZml4IHtcbiAgd2lkdGg6IGluaXRpYWw7XG4gIGZsb2F0OiByaWdodDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci01ZGF5Rm9yZWNhc3QgbGkgYiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogNDJweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci01ZGF5Rm9yZWNhc3QgbGkgaW1nIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAzMHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCAud2VhdGhlci1oaWdoLCAud2VhdGhlckVsZW1lbnQgLndlYXRoZXItNWRheUZvcmVjYXN0IC53ZWF0aGVyLWxvdyB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDU1JTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1pY29uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwIDAgLTVweDtcbiAgd2lkdGg6IDMzJTtcbiAgbWF4LXdpZHRoOiAxODBweDtcbn1cblxuLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWljb24gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogLjc7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci10ZW1wZXJhdHVyZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA1MnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzY2NjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMDtcbn1cblxuLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWRlc2NyaXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1yYW5nZSB7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ud2VhdGhlckVsZW1lbnQgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItbG9jYXRpb24ge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi53ZWF0aGVyRWxlbWVudCAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyBwLndlYXRoZXItcmFuZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2VhdGhlckVsZW1lbnQgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgcC53ZWF0aGVyLWxvY2F0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4ud2VhdGhlci01ZGF5Rm9yZWNhc3Qge1xuICBib3JkZXI6IDA7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogNDUlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjZGRkO1xufVxuXG4ud2VhdGhlci01ZGF5Rm9yZWNhc3QgdWwge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53ZWF0aGVyLTVkYXlGb3JlY2FzdCAud2VhdGhlci1oaWdoIHtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLndlYXRoZXItNWRheUZvcmVjYXN0IC53ZWF0aGVyLWxvdyB7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyxcbiAgLmNvbC1tZC00IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zLFxuICAuY29sLW1kLTYgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG4gIC5jb2wtbWQtMyAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci10ZW1wZXJhdHVyZSxcbiAgLmNvbC1tZC00IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLXRlbXBlcmF0dXJlLFxuICAuY29sLW1kLTYgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItdGVtcGVyYXR1cmUge1xuICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1JTtcbiAgfVxuICAuY29sLW1kLTMgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItZGVzY3JpcHRpb24sXG4gIC5jb2wtbWQtMyAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1yYW5nZSxcbiAgLmNvbC1tZC0zIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWxvY2F0aW9uLFxuICAuY29sLW1kLTQgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItZGVzY3JpcHRpb24sXG4gIC5jb2wtbWQtNCAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1yYW5nZSxcbiAgLmNvbC1tZC00IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWxvY2F0aW9uLFxuICAuY29sLW1kLTYgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItZGVzY3JpcHRpb24sXG4gIC5jb2wtbWQtNiAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1yYW5nZSxcbiAgLmNvbC1tZC02IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWxvY2F0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1JTtcbiAgfVxuICAuY29sLW1kLTMgLndlYXRoZXItNWRheUZvcmVjYXN0LFxuICAuY29sLW1kLTQgLndlYXRoZXItNWRheUZvcmVjYXN0LFxuICAuY29sLW1kLTYgLndlYXRoZXItNWRheUZvcmVjYXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgfVxuICAuY29sLW1kLTMgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItaWNvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC0zIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLXRlbXBlcmF0dXJlIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5jb2wtbWQtMyAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyAud2VhdGhlci1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuY29sLW1kLTMgLndlYXRoZXItY3VycmVudENvbmRpdGlvbnMgLndlYXRoZXItbG9jYXRpb24ge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmNvbC1tZC0zIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLXJhbmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmNvbC1tZC0zIC53ZWF0aGVyLTVkYXlGb3JlY2FzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuY29sLW1kLTQgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCBsaSxcbiAgLmNvbC1tZC0zIC53ZWF0aGVyRWxlbWVudCAud2VhdGhlci01ZGF5Rm9yZWNhc3QgbGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuICAuY29sLW1kLTQgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCBsaSBiLFxuICAuY29sLW1kLTMgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCBsaSBiIHtcbiAgICB3aWR0aDogMzZweDtcbiAgfVxuICAuY29sLW1kLTQgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCBsaSBpbWcsXG4gIC5jb2wtbWQtMyAud2VhdGhlckVsZW1lbnQgLndlYXRoZXItNWRheUZvcmVjYXN0IGxpIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWljb24ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQwcHgpIHtcbiAgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgLndlYXRoZXJFbGVtZW50IC53ZWF0aGVyLTVkYXlGb3JlY2FzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIH1cbn1cblxuLyogcGVfc3VydmV5X3JlcG9ydC5jc3MgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuI2RlZmF1bHRSZXBvcnQge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnJlcG9ydC1jb250YWluZXIge1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxuLnJlcG9ydC1zY3JvbGwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xufVxuXG4uaXRlbVZhcmlhdGlvbnMgLmNvbHVtbk5hbWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDVweCAwO1xufVxuXG4ucmVwb3J0VGFibGVFbGVtZW50IC5maWx0ZXJlZF9zdXJ2ZXlfYWN0aW9ucyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5yZXBvcnRUYWJsZUVsZW1lbnQgLmZpbHRlcmVkX3N1cnZleV9hY3Rpb25zIC5pY29uIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtaW5kZW50MjogLTk5OWVtO1xuICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICBtYXJnaW46IDNweCA2cHggMCAwO1xufVxuXG4ucmVwb3J0VGFibGVFbGVtZW50IC5yZXBvcnRfcmVzdWx0c19jb3VudCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvcmVnaXN0cmF0aW9uL2dsb3NzX3NoYWRvd19saWdodC5wbmdcIikgcmVwZWF0LXggMCBjZW50ZXIgI0VFRTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDRweCA0cHg7XG59XG5cbi5yZXBvcnRUYWJsZUVsZW1lbnRIZWFkZXIsIC5yZXBvcnRUYWJsZUVsZW1lbnRIZWFkZXIgaDMsIC5yZXBvcnRUYWJsZUVsZW1lbnQgLmZpbHRlcmVkX3N1cnZleV9hY3Rpb25zIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ucmVwb3J0VGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucmVwb3J0VGFibGUgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5yZXBvcnRUYWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4ucmVwb3J0VGFibGUgdGJvZHkgdHIgdGQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLyogZnVsbHNjcmVlbiByZXBvcnQgcG9wdXAgKi9cbi5mdWxsc2NyZWVuLW92ZXJsYXkge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLmZ1bGxzY3JlZW4tcG9wdXAge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMjBweDtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLmZ1bGxzY3JlZW4tcG9wdXAgLmZ1bGxzY3JlZW4tY2xvc2Uge1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgdG9wOiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjOTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mdWxsc2NyZWVuLXBvcHVwIC5mdWxsc2NyZWVuLWNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICNjMDA7XG59XG5cbi8qIFZlbnVlIFN0YXR1cyBQYWdlIEVsZW1lbnQgKi9cbi52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAuaGVhZGluZyAudGl0bGUge1xuICBjb2xvcjogIzMzMzMzMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udDogNjAwIDEycHgvMS4yIFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC52ZW51ZV9oZWFkaW5nIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudmVudWVfbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9vcGVuLFxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfY2xvc2VkLFxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfcGVuZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfb3BlbiB7XG4gIGNvbG9yOiAjMDJBMjE4O1xufVxuXG4udmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9jbG9zZWQge1xuICBjb2xvcjogI0U1MDAwMDtcbn1cblxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfcGVuZGluZyB7XG4gIGNvbG9yOiAjOTI5MjkyO1xufVxuXG4udmVudWVFbGVtZW50IC5kYXRhVGFibGUgLmltZ19vcGVuLFxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC5pbWdfY2xvc2VkLFxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC5pbWdfcGVuZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAuNmVtO1xuICB3aWR0aDogLjZlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udmVudWVFbGVtZW50IC5kYXRhVGFibGUgLmltZ19vcGVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAyQTIxODtcbn1cblxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC5pbWdfY2xvc2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U1MDAwMDtcbn1cblxuLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC5pbWdfcGVuZGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MjkyOTI7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgdGQge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC52ZW51ZV9uYW1lIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9vcGVuLFxuICAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9jbG9zZWQsXG4gIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X3BlbmRpbmcge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgdGQsXG4gIC5jb2wtbWQtNCAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgdGQge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmNvbC1tZC0zIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudmVudWVfbmFtZSxcbiAgLmNvbC1tZC00IC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudmVudWVfbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmNvbC1tZC0zIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X29wZW4sXG4gIC5jb2wtbWQtMyAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9jbG9zZWQsXG4gIC5jb2wtbWQtMyAudmVudWVFbGVtZW50IC5kYXRhVGFibGUgLnR4dF9wZW5kaW5nLFxuICAuY29sLW1kLTQgLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfb3BlbixcbiAgLmNvbC1tZC00IC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X2Nsb3NlZCxcbiAgLmNvbC1tZC00IC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X3BlbmRpbmcge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSB0ZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW4gLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC52ZW51ZV9uYW1lIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW4gLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIC50eHRfb3BlbixcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X2Nsb3NlZCxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uIC52ZW51ZUVsZW1lbnQgLmRhdGFUYWJsZSAudHh0X3BlbmRpbmcge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLyogUG93ZXIgUmFua2luZ3MgRWxlbWVudCAqL1xuLnJhbmtpbmdzRWxlbWVudCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCA+IGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA5cHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDJweCAwICNmZmYsIDdweCAwICMwREIxNEM7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG59XG5cbi5yYW5raW5nc0VsZW1lbnQgLnN0YXRUYWJsZSAuZXhwYW5kZWRWaWV3IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRkLm5hbWUsIC5yYW5raW5nc0VsZW1lbnQgLnN0YXRUYWJsZSB0aC5uYW1lIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRoOm50aC1jaGlsZCgxKSB7XG4gIHdpZHRoOiA1JTtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRoLmxvZ29MaW5rIHtcbiAgd2lkdGg6IDAlO1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC5zdGF0VGFibGUgdGgubmFtZSB7XG4gIHdpZHRoOiA2NSU7XG59XG5cbi5yYW5raW5nc0VsZW1lbnQgLnN0YXRUYWJsZSB0aDpudGgtY2hpbGQoNCkge1xuICB3aWR0aDogMTAlO1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC5zdGF0VGFibGUgdGg6bnRoLWNoaWxkKDUpIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRoOm50aC1jaGlsZCg2KSB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbi5yYW5raW5nc0VsZW1lbnQgLnN0YXRUYWJsZSB0ZDpudGgtY2hpbGQoMSkge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRkLm5hbWUgYSB7XG4gIG1pbi13aWR0aDogMTgwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRkLmxvZ29MaW5rIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAuc3RhdFRhYmxlIHRkLmxvZ29MaW5rIC50ZWFtTG9nby1sYXJnZV9zcXVhcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIG1hcmdpbjogMnB4IDZweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC5sb2dvTGluayAudGVhbUxvZ28tbWVkaXVtIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC51cCxcbi5yYW5raW5nc0VsZW1lbnQgLmRvd24sXG4ucmFua2luZ3NFbGVtZW50IC5ub0NoYW5nZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJhbmtpbmdzRWxlbWVudCAudXA6YWZ0ZXIsXG4ucmFua2luZ3NFbGVtZW50IC5kb3duOmFmdGVyLFxuLnJhbmtpbmdzRWxlbWVudCAubm9DaGFuZ2U6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC51cDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYyXCI7XG4gIGNvbG9yOiAjMmFjMjU4O1xufVxuXG4ucmFua2luZ3NFbGVtZW50IC5kb3duOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbiAgY29sb3I6ICNjMjJhMmE7XG59XG5cbi5yYW5raW5nc0VsZW1lbnQgLm5vQ2hhbmdlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwN2VcIjtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qIFNpbmdsZSBJbWFnZSBFbGVtZW50ICovXG4uaGVyb1Bob3RvRWxlbWVudCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uaGVyb1Bob3RvRWxlbWVudCAuY3V0bGluZSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIFN1cnZleSBMaW5rIEVsZW1lbnQgKi9cbi5wYWdlRWxlbWVudC5zdXJ2ZXlMaW5rRWxlbWVudCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlRWxlbWVudC5zdXJ2ZXlMaW5rRWxlbWVudCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMDAyMDQwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW47XG59XG5cbi5wYWdlRWxlbWVudC5zdXJ2ZXlMaW5rRWxlbWVudCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwMjA0MDtcbn1cblxuLnBhZ2VFbGVtZW50LnN1cnZleUxpbmtFbGVtZW50IGEgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2VFbGVtZW50LnN1cnZleUxpbmtFbGVtZW50IGEgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbG9yOiAjMERCMTRDO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xcHgpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW47XG59XG5cbi5wYWdlRWxlbWVudC5zdXJ2ZXlMaW5rRWxlbWVudCBhIHNtYWxsIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4ucGFnZUVsZW1lbnQuc3VydmV5TGlua0VsZW1lbnQgYTpob3ZlciA+IHNwYW46YWZ0ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyogQ2FsbCB0byBBY3Rpb24gRWxlbWVudCAqL1xuLnNuLWNhbGwtdG8tYWN0aW9uLFxuLnNuLWNhbGwtdG8tYWN0aW9uICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uc24tY2FsbC10by1hY3Rpb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQ6ICMwREIxNEM7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDNweDtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmY7XG4gIHotaW5kZXg6IDEwO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTYyZGVnLCAjYWFhIDBweCwgI2ZmZiAxcHgsICNmZmYgM3B4LCAjYWFhIDRweCk7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoLTcyZGVnLCAjYWFhIDBweCwgI2ZmZiAxcHgsICNmZmYgM3B4LCAjYWFhIDRweCk7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbiBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweDtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktaW5uZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5LXRleHQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbiAuc24tY2FsbC10by1hY3Rpb24tdGl0bGUge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuM2VtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIGEsXG4uc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHNwYW4ge1xuICBtYXJnaW46IDAgLjI1ZW07XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbiAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGU6Zmlyc3Qtb2YtdHlwZSA+ICoge1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuXG4vKiBTbGlkZSBVcCAqL1xuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cCAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgODQsIDE2NiwgMC43KTtcbiAgdG9wOiBhdXRvO1xuICBoZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjVzIGVhc2U7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXAgLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cCAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGUge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cDpob3ZlciAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cDpob3ZlciAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBab29tICovXG4uc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLXpvb20gaW1nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzIGVhc2UsIHRyYW5zZm9ybSAwLjVzIGVhc2U7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tem9vbTpob3ZlciBpbWcge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xufVxuXG4vKiBUZXh0IFpvb20gKi9cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tdGV4dC16b29tIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5LXRleHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXMgZWFzZSwgdHJhbnNmb3JtIDAuNXMgZWFzZTtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb206aG92ZXIgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi8qIEJvcmRlciAqL1xuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1ib3JkZXIgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXkge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwIHRyYW5zcGFyZW50LCBpbnNldCAwIDAgMCAwIHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMgZWFzZS1pbjtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1ib3JkZXI6aG92ZXIgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXkge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDdweCAwIDEwcHggcmdiYSgwLCA4NCwgMTY2LCAwLjcpLCBpbnNldCAwIC01cHggMCAxMHB4IHJnYmEoMCwgODQsIDE2NiwgMC43KTtcbn1cblxuLyogbWlycm9yZWQgQ1RBIHByZXZpZXcgaW1nIGFsaWdubWVudCBmaXhlcyAqL1xuLnBlMjUgLmVsZW1lbnRQcmV2aWV3IGltZyxcbi5wZTMzIC5lbGVtZW50UHJldmlldyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tdGFsbC10ZXh0IGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogaW5pdGlhbDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi16b29tLnNuLXZhcmlhdGlvbi10YWxsLXRleHQ6aG92ZXIgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpIHRyYW5zbGF0ZSgtNDAlLCAtNDAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMikgdHJhbnNsYXRlKC00MCUsIC00MCUpO1xufVxuXG4vKiBwYXJhZ3JhcGggc3BhY2luZyAqL1xuLnBlMjUgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogLjE1ZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgLmNvbC1tZC00IC5zbi1jYWxsLXRvLWFjdGlvbiAuc24tY2FsbC10by1hY3Rpb24tdGl0bGUsIC5jb2wtbWQtMyAuc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLmNvbC1tZC00IC5zbi1jYWxsLXRvLWFjdGlvbiAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGUsIC5jb2wtbWQtMyAuc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNTBweCkge1xuICAuc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLnNuLWNhbGwtdG8tYWN0aW9uIC5zbi1jYWxsLXRvLWFjdGlvbi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG5cbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cCAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cDpmb2N1cyAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cDpob3ZlciAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSB7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnRvdWNoLXNjcmVlbiAuc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLXNsaWRlLXVwIC5zbi1jYWxsLXRvLWFjdGlvbi1zdWJ0aXRsZSxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1zbGlkZS11cDpmb2N1cyAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGUsXG4udG91Y2gtc2NyZWVuIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXA6aG92ZXIgLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnRvdWNoLXNjcmVlbiAuc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLWJvcmRlciAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1ib3JkZXI6Zm9jdXMgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXksXG4udG91Y2gtc2NyZWVuIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tYm9yZGVyOmhvdmVyIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCA3cHggMCAxMHB4IHJnYmEoMCwgODQsIDE2NiwgMC43KSwgaW5zZXQgMCAtNXB4IDAgMTBweCByZ2JhKDAsIDg0LCAxNjYsIDAuNyk7XG59XG5cbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb20gLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb206Zm9jdXMgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCxcbi50b3VjaC1zY3JlZW4gLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb206aG92ZXIgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCB0YWJsZSB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzk5OTtcbn1cblxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCB0YWJsZSBjYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgdGFibGUgdGQsIC5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgdGFibGUgdGgge1xuICBwYWRkaW5nOiAycHggMTJweDtcbn1cblxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCB0YWJsZTpub3QoW2JvcmRlcl0pIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBib3JkZXItc3BhY2luZzogMnB4O1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xufVxuXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IHRhYmxlOm5vdChbYm9yZGVyXSkgdGgge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgYmFja2dyb3VuZDogI0UxRThFRDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udDogNjAwIDEycHgvMS4yIFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xufVxuXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IHRhYmxlOm5vdChbYm9yZGVyXSkgdGQge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDJweCAxMnB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQgdGFibGVbYWxpZ249XCJjZW50ZXJcIl0ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IGJsb2NrcXVvdGUge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBwYWRkaW5nOiAxNXB4IDFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiA3NSU7XG4gIG1hcmdpbjogYXV0bztcbiAgYm9yZGVyLXRvcDogc29saWQgMnB4ICMwREIxNEM7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjMERCMTRDO1xufVxuXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IC5sZWZ0VGV4dEltYWdlIGJyLFxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCAucmlnaHRUZXh0SW1hZ2UgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IHAgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnBhZ2VFbCAudGV4dEJsb2NrRWxlbWVudCAudGV4dCA+IG9sLCAucGFnZUVsIC50ZXh0QmxvY2tFbGVtZW50IC50ZXh0ID4gdWwge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiBDb2RlIEVsZW1lbnQgKi9cbi5jb2RlRWxlbWVudCBvYmplY3QsXG4uY29kZUVsZW1lbnQgZW1iZWQsXG4uY29kZUVsZW1lbnQgaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY29kZUVsZW1lbnQgY29kZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZGlzcGxheUNvZGVFbGVtZW50IHByZSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICMzMzM7XG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ucGFnZUVsZW1lbnRBZG1pbiAuY29kZUVsZW1lbnQgcHJlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzMzMztcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5jb2RlRWxlbWVudCAuY29kZUVycm9yTWVzc2FnZSB7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTE1MTU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5jb2RlRWxlbWVudC5jb2RlRXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRkOWQ5O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzUxNTE1O1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLyogc2VyaW91cyBkaXNwbGFpeSBpc3N1ZXMgaW4gY2hyb21lIDE1IFdpbmRvd3Mgd2hlbiBjb21iaW5lZCB3aXRoIDNkIHRyYW5zZm9ybXMgKi9cbiNHYW1lU2hvd1Njb3JlYm9hcmQsXG4jRk9QLFxuLmZvcFBvcFVwIHtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplc3BlZWQ7XG59XG5cbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTmFtZSxcbi5zcG9ydFRhYmxlTGFiZWwgaDQudGVhbU5hbWUge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud2lkZ2V0SGllcmFyY2h5IHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4ud2lkZ2V0SGllcmFyY2h5ID4gdWwgbGkgbGkgLnNlYXNvbkRpc3BsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0SGllcmFyY2h5IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ud2lkZ2V0SGllcmFyY2h5IC5sYXN0TGkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2FtZVh0cmFzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4uZ2FtZVh0cmFzIGxpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNENUQ1RDU7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4uZ2FtZVh0cmFzIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uc3RhdHVzX2luX3Byb2dyZXNzIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzVlOGQwZjtcbn1cblxuLmJveHNjb3JlIC5zdGF0dXNfaW5fcHJvZ3Jlc3Mge1xuICBjb2xvcjogI2ExZTMyZjtcbn1cblxuI1RlYW1TdGF0c0RpdiAuc3RhdC1jYXRlZ29yeS1oZWFkZXIsXG4jUGxheWVyU3RhdHNEaXYgLnN0YXQtY2F0ZWdvcnktaGVhZGVyLFxuI1RlYW1JbnN0YW5jZVN0YXRzRGl2IC5zdGF0LWNhdGVnb3J5LWhlYWRlciB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udDogYm9sZCAzOHB4LzEuMjUgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xufVxuXG4jVGVhbVN0YXRzRGl2ICpbaWRePVwidGVhbS1zbVwiXSxcbiNQbGF5ZXJTdGF0c0RpdiAqW2lkXj1cInBsYXllci1zbVwiXSxcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cInRlYW0tc21cIl0sXG4jVGVhbUluc3RhbmNlU3RhdHNEaXYgKltpZF49XCJwbGF5ZXItc21cIl0gI1RlYW1JbnN0YW5jZVN0YXRzRGl2ICpbaWRePVwiZGl2aXNpb24tdGVhbS1zbVwiXSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbiNUZWFtU3RhdHNEaXYgKltpZF49XCJ0ZWFtLXNtXCJdOmxhc3QtY2hpbGQsXG4jUGxheWVyU3RhdHNEaXYgKltpZF49XCJwbGF5ZXItc21cIl06bGFzdC1jaGlsZCxcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cInRlYW0tc21cIl06bGFzdC1jaGlsZCxcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cInBsYXllci1zbVwiXSAjVGVhbUluc3RhbmNlU3RhdHNEaXYgKltpZF49XCJkaXZpc2lvbi10ZWFtLXNtXCJdOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jVGVhbVN0YXRzRGl2ICpbaWRePVwidGVhbS1zbVwiXSBoMyxcbiNQbGF5ZXJTdGF0c0RpdiAqW2lkXj1cInBsYXllci1zbVwiXSBoMyxcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cInRlYW0tc21cIl0gaDMsXG4jVGVhbUluc3RhbmNlU3RhdHNEaXYgKltpZF49XCJwbGF5ZXItc21cIl0gI1RlYW1JbnN0YW5jZVN0YXRzRGl2ICpbaWRePVwiZGl2aXNpb24tdGVhbS1zbVwiXSBoMyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xufVxuXG4jcGFnZUNvbnRlbnRDb250YWluZXIgaDMuc3RhdC1jYXRlZ29yeS1oZWFkZXIge1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzk5OTtcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNjY2IDAlLCAjMzMzIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjNjY2KSwgY29sb3Itc3RvcCgxMDAlLCAjMzMzKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzY2NiAwJSwgIzMzMyAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzY2NiAwJSwgIzMzMyAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM2NjYgMCUsICMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICM2NjYgMCUsICMzMzMgMTAwJSk7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHggNHB4IDBweCAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMHB4IDBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGhlaWdodDogMmVtO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICB0ZXh0LWluZGVudDogMTBweDtcbn1cblxuaDMuc3RhdC1jYXRlZ29yeS1oZWFkZXIgLnN0YXQtY2F0ZWdvcnktbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogIzAwNTRBNjtcbn1cblxuI3RhYl9jb21wbGV0ZWdhbWVsaXN0X2NvbnRlbnQgLnBhZ2VFbGVtZW50IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qIGZpbHRlciBzdHlsZXMgKi9cbi50YWctZmlsdGVyRm9ybSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMjBweCA4cHg7XG59XG5cbi50YWctZmlsdGVyRm9ybSBsYWJlbCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLnRhZy1maWx0ZXJGb3JtIGxhYmVsIHNlbGVjdCB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4udGFnLWZpbHRlckZvcm0gLmlucHV0Q2hvaWNlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCA1cHggMCAwO1xuICBwYWRkaW5nOiA2cHggMCAwIDA7XG59XG5cbi50YWctZmlsdGVyRm9ybSAuaW5wdXRDaG9pY2UgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgcGFkZGluZzogMnB4IDJweCAwIDA7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbi50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDJweCAxMnB4IDhweCAwO1xuICBoZWlnaHQ6IDMwcHg7XG59XG5cbi50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAuYnV0dG9uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMHB4KTtcbn1cblxuLmNvbC1tZC0zIC50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAuYnV0dG9uLFxuLmNvbC1tZC00IC50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAuYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuI1ByZXZpZXdTdGF0c0RpdiAubmV4dF9nYW1lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgY29sb3I6ICNGRkY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDUxJSwgdHJhbnNwYXJlbnQgOTUlLCByZ2JhKDAsIDAsIDAsIDAuMikgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDAgLyAxMDAlIDEwMCUgMCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQ0NDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLm5leHRfZ2FtZV9zcGxpdHMge1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMzMzM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyAubmV4dF9nYW1lX3NwbGl0cyAuTmdpblRhYmxlQ29udHJvbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5uZXh0X2dhbWUgLmluZm8ge1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMjAlO1xuICBmbG9hdDogbGVmdDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5uZXh0X2dhbWUgLmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5uZXh0X2dhbWUgLnZzX29yX2F0IHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5uZXh0X2dhbWUgLnRpbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzk5OTtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5uZXh0X2dhbWUgLnRlYW0ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMyJTtcbiAgYmFja2dyb3VuZDogIzU1NTtcbiAgcGFkZGluZzogMiU7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyAubmV4dF9nYW1lIC5hd2F5X3RlYW0ge1xuICBwYWRkaW5nLXJpZ2h0OiA2JTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA3cHggMzAlIDMwJSAwIC8gMTAwJSAxMDAlIDAgMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA3cHggMzAlIDMwJSAwIC8gMTAwJSAxMDAlIDAgMDtcbiAgYm9yZGVyLXJhZGl1czogN3B4IDMwJSAzMCUgMCAvIDEwMCUgMTAwJSAwIDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgLTEwcHggMnB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjQpLCAwIDAgMXB4IDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgLTEwcHggMnB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjQpLCAwIDAgMXB4IDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xMHB4IDJweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC40KSwgMCAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLm5leHRfZ2FtZSAuaG9tZV90ZWFtIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDYlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzMCUgN3B4IDAgMzAlIC8gMTAwJSAxMDAlIDAgMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzMCUgN3B4IDAgMzAlIC8gMTAwJSAxMDAlIDAgMDtcbiAgYm9yZGVyLXJhZGl1czogMzAlIDdweCAwIDMwJSAvIDEwMCUgMTAwJSAwIDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMTBweCAycHggMjBweCByZ2JhKDAsIDAsIDAsIDAuNCksIDAgMCAxcHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAxMHB4IDJweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC40KSwgMCAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3gtc2hhZG93OiBpbnNldCAxMHB4IDJweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC40KSwgMCAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLnRlYW1fbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC50ZWFtX25hbWUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogNHB4IDAgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyAuc3RhdC1jYXRlZ29yeS1oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0QztcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5zdGF0VGFibGUge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLnN0YXRUYWJsZSAubGFzdCB0ZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5nb1RvTGluayB7XG4gIGNvbG9yOiAjMERCMTRDO1xuICBmb250LXNpemU6IDEzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBjb2xvcjogIzAwNTRBNjtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIC5nb1RvTGluazphZnRlciB7XG4gIGNvbG9yOiAjMDA1NEE2O1xuICBjb250ZW50OiAnXFxmMDYxJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgbWFyZ2luOiAtLjFlbSAwIDAgLjRlbTtcbiAgZm9udC1zaXplOiAuOWVtO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLmdvVG9MaW5rOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ZC5kYXRlLFxuI1Jvc3RlclBsYXllclN0YXRzIHRkLm5hbWUsXG4jUm9zdGVyUGxheWVyU3RhdHMgdGQuc2NvcmUsXG4jUm9zdGVyUGxheWVyU3RhdHMgdGQuc3BsaXQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgdGQ6Zmlyc3QtY2hpbGQsXG4jUm9zdGVyUGxheWVyU3RhdHMgdGg6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0cltkYXRhLXRvZ2dsZXNdIHRkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjhlbTtcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIHRyLnRvdGFscyB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc2Vhc29uIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RERDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNCQkI7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ci5zdWJzZWFzb24gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuZ2FtZV9sb2cgKyB0ci5zdWJzZWFzb24gdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQztcbn1cblxuI1Jvc3RlclBsYXllclN0YXRzIHRyLnN1YnNlYXNvbl90b3RhbHMge1xuICBiYWNrZ3JvdW5kOiAjQzFDMUMxO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc3Vic2Vhc29uIHRkIHtcbiAgY29sb3I6ICM2NzY3Njc7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jR2FtZUxvZ0RpdiAucmVzdWx0IHtcbiAgd2lkdGg6IDclO1xuICBtaW4td2lkdGg6IDUwcHg7XG59XG5cbiNHYW1lTG9nRGl2IC5vcHBvbmVudCB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbiNDYXJlZXJTdGF0c0RpdiAuc3RhdFRhYmxlIHRkLmRlc2NyaXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI0NhcmVlclN0YXRzRGl2IC5zdGF0VGFibGUgdHIuc2Vhc29uIHRkLmRhdGUge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbiNSb3N0ZXJQbGF5ZXJTdGF0cyAuaW5hY3RpdmVfbm90aWNlIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWYxNzFkO1xuICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB3aWR0aDogOTklO1xufVxuXG4jUm9zdGVyUGxheWVyU3RhdHMgLmluYWN0aXZlX25vdGljZSBzdHJvbmcge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5pLmRlc2lnbmF0aW9uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hcHBfaW1hZ2VzL3Jvc3Rlcl9wbGF5ZXJfZGVzaWduYXRpb25zLmdpZik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuaS5kZXNpZ25hdGlvbi51bmNvbW1pdHRlZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG5cbmkuZGVzaWduYXRpb24uc3VzcGVuZGVkIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1cHggMHB4O1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuXG5pLmRlc2lnbmF0aW9uLnJvb2tpZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IDBweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cblxuaS5kZXNpZ25hdGlvbi5wbWoge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDVweCAwcHg7XG4gIHdpZHRoOiAyNnB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG5cbmkuZGVzaWduYXRpb24uaW5qdXJlZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC03NnB4IDBweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cblxuaS5kZXNpZ25hdGlvbi5pbXBvcnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTFweCAwcHg7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG5cbmkuZGVzaWduYXRpb24uY29tbWl0dGVkIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNHB4IDBweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cblxuaS5kZXNpZ25hdGlvbi5hZmZpbGlhdGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI5cHggMHB4O1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuXG4ucm9zdGVyVGFibGVPdmVyZmxvdyB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG59XG5cbi5yb3N0ZXJMaXN0aW5nVGFibGUgLnBob3RvIHtcbiAgd2lkdGg6IDMlO1xufVxuXG4ucm9zdGVyTGlzdGluZ1RhYmxlIC5waG90byBpbWcge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZGRkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5yb3N0ZXJMaXN0aW5nVGFibGUgLm51bWJlciB7XG4gIHdpZHRoOiAzJTtcbn1cblxuLnJvc3Rlckxpc3RpbmdUYWJsZSB0Ym9keSB0ZC5uYW1lIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMjAlO1xufVxuXG4ucm9zdGVyTGlzdGluZ1RhYmxlIHRib2R5IHRkIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuLyogR2FtZSBDZW50ZXIgKi9cbi5sb2dvLWdyYWRpZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDkwcHg7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLndpbm5lcnMtbm90Y2gge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfY2VudGVyL3dpbm5lcnNOb3RjaC5wbmdcIik7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAwIDAgMCAtOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4vKiBHYW1lIExpc3QgKi9cbi5nYW1lTGlzdFRlYW0ge1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZ2FtZUxpc3RUZWFtIC5zY29yZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1pbi13aWR0aDogNiU7XG59XG5cbkdhbWVMaXZlVmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBJbiBQcm9ncmVzcyBIaWdobGlnaHRzICovXG50ci5pbl9wcm9ncmVzcyAuZ2FtZV9zdGF0dXMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfY2VudGVyL2lucHJvZ3Jlc3NCRy5wbmdcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsIDEzOCwgMCwgMCkgMCUsIHJnYmEoNjUsIDEzOCwgMCwgMC41KSAxMDAlKTtcbiAgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDY1LCAxMzgsIDAsIDApKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDY1LCAxMzgsIDAsIDAuNSkpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsIDEzOCwgMCwgMCkgMCUsIHJnYmEoNjUsIDEzOCwgMCwgMC41KSAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsIDEzOCwgMCwgMCkgMCUsIHJnYmEoNjUsIDEzOCwgMCwgMC41KSAxMDAlKTtcbiAgLyogT3BlcmExMS4xMCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDY1LCAxMzgsIDAsIDApIDAlLCByZ2JhKDY1LCAxMzgsIDAsIDAuNSkgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDY1LCAxMzgsIDAsIDApIDAlLCByZ2JhKDY1LCAxMzgsIDAsIDAuNSkgMTAwJSk7XG4gIC8qIFczQyAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbn1cblxudHIuaW5fcHJvZ3Jlc3MgLmdhbWVfc3RhdHVzIGltZyxcbi5ib3hzY29yZS1leHRyYXMuaW5fcHJvZ3Jlc3MgcC5kZXRhaWxzIGEgaW1nIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDVweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDVweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSk7XG59XG5cbi8qIFNQT1JUIE5HSU4gTElWRSBMSU5LUyAqL1xucC53YXRjaExpdmUtbGl2ZSwgcC53YXRjaExpdmUtcmVjYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzOHB4O1xuICBtYXJnaW46IDE1cHggMjBweCAxNXB4IDE1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxucC53YXRjaExpdmUtbGl2ZSBhLCBwLndhdGNoTGl2ZS1yZWNhcCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBtYXJnaW46IDAgLTVweCAwIDA7XG4gIHRleHQtaW5kZW50OiAtOTk5OTk5cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5wLndhdGNoTGl2ZS1saXZlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9saXZlL3dhdGNoTGl2ZS1saXZlLnBuZ1wiKSAwIDA7XG59XG5cbnAud2F0Y2hMaXZlLWxpdmUgYSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGl2ZS93YXRjaExpdmUtbGl2ZS5wbmdcIikgMTAwJSAtMzhweDtcbn1cblxucC53YXRjaExpdmUtcmVjYXAge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xpdmUvd2F0Y2hMaXZlLXJlY2FwLnBuZ1wiKSAwIDA7XG59XG5cbnAud2F0Y2hMaXZlLXJlY2FwIGEge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2xpdmUvd2F0Y2hMaXZlLXJlY2FwLnBuZ1wiKSAxMDAlIC0zOHB4O1xufVxuXG5wLndhdGNoTGl2ZS1saXZlOmhvdmVyLCBwLndhdGNoTGl2ZS1yZWNhcDpob3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgICAtNzZweDtcbn1cblxucC53YXRjaExpdmUtbGl2ZTpob3ZlciBhLCBwLndhdGNoTGl2ZS1yZWNhcDpob3ZlciBhIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAtMTE0cHg7XG59XG5cbnAud2F0Y2hMaXZlLWxpdmU6YWN0aXZlLCBwLndhdGNoTGl2ZS1yZWNhcDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwICAtMTUycHg7XG59XG5cbnAud2F0Y2hMaXZlLWxpdmU6YWN0aXZlIGEsIHAud2F0Y2hMaXZlLXJlY2FwOmFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAtMTkwcHg7XG59XG5cbi5ib3hzY29yZS1leHRyYXMgcC53YXRjaExpdmUtbGluayB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cblxuLmJveHNjb3JlLWV4dHJhcyBwLndhdGNoTGl2ZS1saW5rIGEge1xuICBwYWRkaW5nOiA4cHggNXB4IDJweDtcbn1cblxuLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgdGgsIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRkOm5vdCguYXdheS10ZWFtLXNjb3JlKTpub3QoLmhvbWUtdGVhbS1zY29yZSkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuZGF0ZS10aW1lLFxuLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmdhbWUtaWQtZ2FtZS1udW1iZXIge1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC50aW1lIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLnRlYW0tbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAtMTFweCA1cHggLTlweCAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuc3RhdHVzIGEge1xuICBjb2xvcjogIzBEQjE0QztcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDExcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDFlbTtcbn1cblxuLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLnN0YXR1cyBhOmFmdGVyIHtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIGNvbnRlbnQ6ICdcXGYwNjEnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBtYXJnaW46IC0uMWVtIDAgMCAuNGVtO1xuICBmb250LXNpemU6IC45ZW07XG59XG5cbi50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMgYTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5sYXlvdXQtMTAwIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG4gIC5sYXlvdXQtMTAwIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRkIHtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbiAgLmxheW91dC0xMDAgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1zY29yZSxcbiAgLmxheW91dC0xMDAgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmhvbWUtdGVhbS1zY29yZSB7XG4gICAgd2lkdGg6IDRlbTtcbiAgfVxuICAubGF5b3V0LTEwMCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuZGF0ZS10aW1lLWhlYWRlciB7XG4gICAgd2lkdGg6IDE0LjVlbTtcbiAgfVxuICAubGF5b3V0LTEwMCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuZ2FtZS1pZC1nYW1lLW51bWJlci1oZWFkZXIge1xuICAgIHdpZHRoOiA2ZW07XG4gIH1cbiAgLmxheW91dC0xMDAgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLnN0YXR1cy1oZWFkZXIge1xuICAgIHdpZHRoOiAxMGVtO1xuICB9XG4gIC5sYXlvdXQtMTAwIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5nYW1lLWlkLWdhbWUtbnVtYmVyIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG4gIC5sYXlvdXQtMTAwIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5nYW1lLWlkLWdhbWUtbnVtYmVyID4gKiB7XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgZGlyZWN0aW9uOiBydGw7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXlvdXQtMTAwIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5nYW1lLWlkLWdhbWUtbnVtYmVyID4gKjphZnRlciB7XG4gICAgY29udGVudDogXCLigKZcIjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMS43NWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxLjdlbTtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0uOTllbTtcbiAgICBtYXJnaW4tdG9wOiAtLjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRoZWFkLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRoZWFkLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRoZWFkLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRoZWFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRib2R5LFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRib2R5LFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRib2R5LFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRib2R5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZCxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZCxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZCxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRyLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRyLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRyLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRyIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogNzJweDtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG4uY29sLW1kLTMgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgdHI6bm90KDpsYXN0LWNoaWxkKSxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0cjpub3QoOmxhc3QtY2hpbGQpLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRyOm5vdCg6bGFzdC1jaGlsZCksXG4uY29sLW1kLTggLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgdHI6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2RkZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRkOm5vdCguYXdheS10ZWFtLW5hbWUpOm5vdCguaG9tZS10ZWFtLW5hbWUpOm5vdCguYXdheS10ZWFtLXNjb3JlKTpub3QoLmhvbWUtdGVhbS1zY29yZSksXG4uY29sLW1kLTYgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgdGQ6bm90KC5hd2F5LXRlYW0tbmFtZSk6bm90KC5ob21lLXRlYW0tbmFtZSk6bm90KC5hd2F5LXRlYW0tc2NvcmUpOm5vdCguaG9tZS10ZWFtLXNjb3JlKSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpOm5vdCguc3RhdHVzKSxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpOm5vdCguc3RhdHVzKSxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpOm5vdCguc3RhdHVzKSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpOm5vdCguc3RhdHVzKSB7XG4gIG1hcmdpbi1yaWdodDogNnB4O1xufVxuXG4uY29sLW1kLTMgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1uYW1lLFxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUsXG4uY29sLW1kLTQgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1uYW1lLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUsXG4uY29sLW1kLTYgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1uYW1lLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUsXG4uY29sLW1kLTggLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1uYW1lLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gNGVtIC0gMnB4KTtcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlIHtcbiAgdG9wOiAzNHB4O1xufVxuXG4uY29sLW1kLTMgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1zY29yZSxcbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5hd2F5LXRlYW0tc2NvcmUsXG4uY29sLW1kLTQgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmhvbWUtdGVhbS1zY29yZSxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuLmNvbC1tZC02IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUsXG4uY29sLW1kLTggLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1zY29yZSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlIHtcbiAgd2lkdGg6IDRlbTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi5jb2wtbWQtMyAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuZ2FtZS1pZC1nYW1lLW51bWJlciA+ICo6YmVmb3JlLFxuLmNvbC1tZC00IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5nYW1lLWlkLWdhbWUtbnVtYmVyID4gKjpiZWZvcmUsXG4uY29sLW1kLTYgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmdhbWUtaWQtZ2FtZS1udW1iZXIgPiAqOmJlZm9yZSxcbi5jb2wtbWQtOCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuZ2FtZS1pZC1nYW1lLW51bWJlciA+ICo6YmVmb3JlIHtcbiAgY29udGVudDogXCJHYW1lIElEOiBcIjtcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMsXG4uY29sLW1kLTQgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLnN0YXR1cyxcbi5jb2wtbWQtNiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuc3RhdHVzLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IDFweDtcbn1cblxuLmNvbC1tZC0zIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMgYSxcbi5jb2wtbWQtNCAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuc3RhdHVzIGEsXG4uY29sLW1kLTYgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLnN0YXR1cyBhLFxuLmNvbC1tZC04IC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMgYSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRib2R5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IHRkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ciB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0cjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZGRkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5jb2wtbWQtMTIgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgdGQ6bm90KC5hd2F5LXRlYW0tbmFtZSk6bm90KC5ob21lLXRlYW0tbmFtZSk6bm90KC5hd2F5LXRlYW0tc2NvcmUpOm5vdCguaG9tZS10ZWFtLXNjb3JlKTpub3QoLnN0YXR1cykge1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG4gIC5jb2wtbWQtMTIgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1uYW1lLFxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tbmFtZSxcbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLXNjb3JlLFxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0ZW0gLSAycHgpO1xuICB9XG4gIC5jb2wtbWQtMTIgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmhvbWUtdGVhbS1uYW1lLFxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5ob21lLXRlYW0tc2NvcmUge1xuICAgIHRvcDogMzRweDtcbiAgfVxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5hd2F5LXRlYW0tc2NvcmUsXG4gIC5jb2wtbWQtMTIgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmhvbWUtdGVhbS1zY29yZSB7XG4gICAgd2lkdGg6IDRlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIC5jb2wtbWQtMTIgLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3QgLmdhbWUtaWQtZ2FtZS1udW1iZXIgPiAqOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJHYW1lIElEOiBcIjtcbiAgfVxuICAuY29sLW1kLTEyIC50aGVtZS1nYW1lLWxpc3Qtd2lkZ2V0IC5zdGF0VGFibGUuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAxcHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAudGhlbWUtZ2FtZS1saXN0LXdpZGdldCAuc3RhdFRhYmxlLnNuLXRhYmxlLWdhbWUtbGlzdCAuc3RhdHVzIGEge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3Qge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3QgLnN0YXR1cyBhIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmdhbWVMaXN0RWxlbWVudCAuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMgYTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3QgLmF3YXktdGVhbS1zY29yZSA+IGRpdixcbi5nYW1lTGlzdEVsZW1lbnQgLnNuLXRhYmxlLWdhbWUtbGlzdCAuaG9tZS10ZWFtLXNjb3JlID4gZGl2IHtcbiAgbWluLXdpZHRoOiAzZW07XG59XG5cbi5nYW1lTGlzdEVsZW1lbnQgLnNuLXRhYmxlLWdhbWUtbGlzdCAuYXdheS10ZWFtLW5hbWUgPiBkaXYsXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3QgLmhvbWUtdGVhbS1uYW1lID4gZGl2IHtcbiAgbWluLXdpZHRoOiAxNGVtO1xufVxuXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3QgLnZlbnVlLXN1YnZlbnVlID4gZGl2IHtcbiAgbWluLXdpZHRoOiAxMmVtO1xufVxuXG4uZ2FtZUxpc3RFbGVtZW50IC5zbi10YWJsZS1nYW1lLWxpc3QgLmdhbWUtaWQtZ2FtZS1udW1iZXIgPiBkaXYge1xuICBtaW4td2lkdGg6IDRlbTtcbn1cblxuLmdhbWVMaXN0RWxlbWVudCAuc24tdGFibGUtZ2FtZS1saXN0IC5zdGF0dXMgPiBkaXYge1xuICBtaW4td2lkdGg6IDZlbTtcbn1cblxuI0dhbWVTaG93U2NvcmVib2FyZFNpbXBsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbiNHYW1lU2hvd1Njb3JlYm9hcmRTaW1wbGUgLmdhbWUtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLyogU3BvcnQgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LWhlYWRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnRlYW1Mb2dvIHtcbiAgbGVmdDogMTVweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogMTIwcHg7XG59XG5cbiNzcG9ydC1oZWFkZXIgI3NubV9hZHZlcnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMC44O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuI3Nwb3J0LWhlYWRlciAjc25tX2FkdmVydDpiZWZvcmUge1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBub3JtYWwgMTRweC8xZW0gXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbWFya2V0aW5nL21vYmlsZVBob25lLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbiNzcG9ydC1oZWFkZXIgI3NubV9hZHZlcnQ6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jc3BvcnQtaGVhZGVyICNzbm1fYWR2ZXJ0IHNwYW4sXG4jc3BvcnQtaGVhZGVyICNzbm1fYWR2ZXJ0IHN0cm9uZyB7XG4gIGNvbG9yOiAjNDQ0O1xuICBmb250LXNpemU6IDlweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAzM3B4O1xufVxuXG4vKiBMZWFndWVzIGFuZCBMZXZlbHMgQnJlYWRjcnVtYnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtY3J1bWJzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDNweCAhaW1wb3J0YW50O1xufVxuXG4jc3BvcnQtY3J1bWJzLm5vLWNydW1icyB7XG4gIGJvcmRlci1pbWFnZTogbm9uZTtcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWJ0bnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0NnB4O1xufVxuXG4jc3BvcnQtY3J1bWJzIC5zcG9ydC1jcnVtYnMtYnRuczo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtY3J1bWJzIHVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbn1cblxuI3Nwb3J0LWNydW1icyB1bCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4jc3BvcnQtY3J1bWJzIHVsIGxpIGEge1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbiNzcG9ydC1jcnVtYnMgdWwgbGkgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICBjb2xvcjogI2NjYztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250OiBub3JtYWwgMTBweC8xZW0gRm9udEF3ZXNvbWU7XG4gIHBhZGRpbmc6IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAwIDEwcHg7XG59XG5cbiNzcG9ydC1jcnVtYnMgdWwgbGk6Zmlyc3QtY2hpbGQgYTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtY3J1bWJzIHVsIGxpLmNydW1iU2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNzcG9ydC1jcnVtYnMgdWwgbGkuY3J1bWJTZWxlY3RlZCBhIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbiNzcG9ydC1jcnVtYnMgdWwgbGkuY3J1bWJTZWxlY3RlZCAuYXJyb3ctZG93bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jc3BvcnQtY3J1bWJzIC5zcG9ydC1jcnVtYnMtbGlzdCB1bCBsaSBhIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xufVxuXG4jc3BvcnQtY3J1bWJzIGEge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4jc3BvcnQtY3J1bWJzIGEgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuI3Nwb3J0LWNydW1icyBhIHNwYW46YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBmb250OiAxNnB4LzFlbSBGb250QXdlc29tZTtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiA0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMwMDU0QTY7XG59XG5cbiNzcG9ydC1jcnVtYnMgYSAuYXJyb3ctZG93biB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4jc3BvcnQtY3J1bWJzIGE6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuI3Nwb3J0LWNydW1icyAuYXJyb3ctZG93bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ3XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3Qge1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDlweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAlO1xuICB6LWluZGV4OiAyMDtcbiAgbGVmdDogMHB4O1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzBEQjE0Qztcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3QudGhpc0NydW1iIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb246IGRyb3Bkb3duLXNlYXNvbiAwLjJzIGVhc2UtaW47XG4gIGFuaW1hdGlvbjogZHJvcGRvd24tc2Vhc29uIDAuMnMgZWFzZS1pbjtcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3QgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3QgdWwgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNzcG9ydC1jcnVtYnMgLnNwb3J0LWNydW1icy1saXN0IHVsIGxpIGEge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3QgdWwgbGkgYTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtY3J1bWJzIC5zcG9ydC1jcnVtYnMtbGlzdCB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbiNzcG9ydC1jcnVtYnMgLnNwb3J0LWNydW1icy1saXN0IHVsIGxpIGEgaW1nIHtcbiAgbWFyZ2luOiAwIDNweCAtM3B4IDA7XG59XG5cbiNzcG9ydC1jcnVtYnMgLnNwb3J0LWNydW1icy1saXN0IHVsIC5zcG9ydC1jcnVtYnMtbGlzdC1jbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xufVxuXG4jc3BvcnQtY3J1bWJzIC5zcG9ydC1jcnVtYnMtbGlzdCB1bCAuc3BvcnQtY3J1bWJzLWxpc3QtY2xvc2UgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogNTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMTBweCAxMHB4IDBweCAxMHB4O1xufVxuXG4jc3BvcnQtY3J1bWJzIC5zcG9ydC1jcnVtYnMtbGlzdCB1bCAuc3BvcnQtY3J1bWJzLWxpc3QtY2xvc2UgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTJweC8xZW0gRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHBhZGRpbmc6IDNweCA1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbiNzcG9ydC1jcnVtYnMgLnNwb3J0LWNydW1icy1saXN0IHVsIC5zcG9ydC1jcnVtYnMtbGlzdC1jbG9zZSBhOmFmdGVyOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogIzAwMDtcbn1cblxuI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3QgdWwgLnNwb3J0LWNydW1icy1saXN0LWNsb3NlIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNzcG9ydC1jcnVtYnMgYS5sYXN0X2NoaWxkLCAjc3BvcnQtY3J1bWJzIGEubGFzdF9jaGlsZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wcm90b3RpcCAuc3BvcnQtY3J1bWJzLWxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU3BvcnQgVG9vbHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB7XG4gIG1hcmdpbjogMTBweCAwcHg7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZWNlY2VjO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCBsaSB7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGVhc2UtaW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIGxpIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAuOWVtO1xuICBmb250OiA0MDAgMTNweC8xLjUgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4IHdoaXRlO1xuICBib3JkZXItbGVmdDogc29saWQgMXB4IHdoaXRlO1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCB3aGl0ZTtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIGxpIGE6YmVmb3JlIHtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xZW0gRm9udEF3ZXNvbWU7XG4gIHBhZGRpbmc6IDBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgbGk6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzAwNTRBNjtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgLnNlbGVjdGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjMDA1NEE2O1xuICBib3JkZXItcmlnaHQ6IDBweDtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgI3Rvb2wtaG9tZSBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsICN0b29sLXJvc3RlciBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA3XCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsICN0b29sLWdhbWUtc2NoZWR1bGUgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzM1wiO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCAjdG9vbC1wbGF5ZXItc3RhdHMgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MFwiO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCAjdG9vbC10ZWFtLXN0YXRzIGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZmVcIjtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgI3Rvb2wtc3RhbmRpbmdzIGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjNcIjtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgI3Rvb2wtYnJhY2tldCBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU4XCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsICN0b29sLXBob3RvIGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgdWwgI3Rvb2wtdmlkZW8gYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjOFwiO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCAjdG9vbC1wb3N0cyBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDg2XCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIC50b29sLXllbGxvdy1hZG1pbiBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDEzXCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIC50b29sLXllbGxvdy1tYW5hZ2UtdGVhbSBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI0XCI7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsLnRvb2xzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIC5idXR0b24tdG9vbCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyBsaSxcbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzICNhdXRvUmVmcmVzaEJhciBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIGxpLnRvb2wteWVsbG93IHtcbiAgYm9yZGVyLWNvbG9yOiAjZWRjNTJjO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyBsaS50b29sLXllbGxvdyBhIHtcbiAgYmFja2dyb3VuZDogI2ZkZGQ0MCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Nwb3J0LWhlYWRlci9idG5zQkcteWwuZ2lmXCIpIDAgMCByZXBlYXQteDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZjO1xuICBjb2xvcjogIzgwNzU0MDtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgbGkudG9vbC15ZWxsb3c6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNkZGEzMDA7XG4gIGNvbG9yOiAjNTk0MTAwO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyBsaS50b29sLXllbGxvdzpob3ZlciBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZGQ0MDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODBweDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZjO1xuICBjb2xvcjogIzFhMWExYTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgbGkudG9vbC15ZWxsb3c6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGRhMzAwO1xuICBjb2xvcjogIzU5NDEwMDtcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtdG9vbHMgbGkudG9vbC15ZWxsb3c6YWN0aXZlIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRkZDQwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjBweDtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zcG9ydC10b29scyBsaSB7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGVhc2UtaW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zcG9ydC10b29scyBsaSBhIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNwb3J0LXRvb2xzIGxpIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGkgYSxcbiNhdXRvUmVmcmVzaEJhciBsaSBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzAwNTRBNjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udDogYm9sZCAxM3B4LzEuMSBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggMXB4ICNmZmY7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uc3BvcnQtdG9vbHMgbGk6aG92ZXIsXG4jYXV0b1JlZnJlc2hCYXIgbGk6aG92ZXIsXG4jc3BvcnQtc2xpZGVyIGxpOmhvdmVyLFxuLnNwb3J0LXRvb2xzIGxpLnNlbGVjdGVkIHtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICMwMDU0QTY7XG59XG5cbiNhdXRvUmVmcmVzaEJhciAuc2VsZWN0ZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICMwMDU0QTY7XG59XG5cbi5zcG9ydC10b29scyBsaTphY3RpdmUsXG4jYXV0b1JlZnJlc2hCYXIgbGk6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnNwb3J0LXRvb2xzIGxpOmhvdmVyIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGk6aG92ZXIgYSxcbiNhdXRvUmVmcmVzaEJhciBsaTpob3ZlciBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4O1xuICBjb2xvcjogIzAwM2E3Mztcbn1cblxuLnNwb3J0LXRvb2xzIGxpOmFjdGl2ZSBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmFjdGl2ZSBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmFjdGl2ZSBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLnNwb3J0LXRvb2xzIC5zZWxlY3RlZCBhLFxuI2F1dG9SZWZyZXNoQmFyIC5zZWxlY3RlZCBhLFxuI2F1dG9SZWZyZXNoQmFyIC5zZWxlY3RlZCBsYWJlbCxcbi5zcG9ydC10b29scyBsaS5zZWxlY3RlZDpob3ZlciBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpLnNlbGVjdGVkOmhvdmVyIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGkuc2VsZWN0ZWQ6aG92ZXIgbGFiZWwge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI0MHB4O1xufVxuXG5ib2R5ICNhdXRvUmVmcmVzaEJhciB7XG4gIG1hcmdpbjogMTBweCAwIDIwcHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4IDA7XG59XG5cbmJvZHkgI2F1dG9SZWZyZXNoQmFyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ib2R5ICNhdXRvUmVmcmVzaEJhciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG59XG5cbi8qIEFkbWluIE1lbnVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc3BvcnQtYWRtaW4tYnV0dG9ucyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAxNHB4IDRweCAwIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5zcG9ydC1hZG1pbi1idXR0b25zIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNwb3J0LWFkbWluLWJ1dHRvbnMgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi8qIFllcywgZG91YmxlIElEJ3MgYmVjYXVzZSBJIG9ubHkgd2FudCB0byB0YXJnZXQgdGhpcyB3aGVuIGl0J3MgYSBjaGlsZCBvZiB0aGUgc3BvcnQtaGVhZGVyLiBJdCB3aWxsIGJlIG1vdmVkIGVsc2V3aGVyZSB3aGVuIHRoZSBUaXAganMgZmlyZXMuICovXG4jc3BvcnQtaGVhZGVyICN0b29sLXBhZ2VzLW1lbnUsXG4jc3BvcnQtaGVhZGVyICNzcG9ydC1hZG1pbi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogU3BlY2lmaWMgUGlsbHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jdG9vbC1ob21lIGE6aG92ZXIgc3BhbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG59XG5cbiN0b29sLWhvbWUgYTphY3RpdmUgc3BhbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4O1xufVxuXG4jdG9vbC1ob21lLnNlbGVjdGVkIHNwYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNDBweDtcbn1cblxuI3Rvb2wtY3JlYXRlV2lkZ2V0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4jdG9vbC1jcmVhdGVXaWRnZXQgYSB7XG4gIGJhY2tncm91bmQ6ICNmZGRkNDAgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zcG9ydC1oZWFkZXIvYnRuc0JHLXlsLmdpZlwiKSAwIDAgcmVwZWF0LXg7XG4gIGJvcmRlci1jb2xvcjogI2ZmYztcbn1cblxuLyogVGVhbSBNaW5pIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50ZWFtTWluaUhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG5cbi50ZWFtTWluaUhlYWRlciAudGVhbUxvZ28tc21hbGwge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRlYW1NaW5pSGVhZGVyIGg0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi8qIE92ZXJsYXlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtdG9vbHMtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKC9hcHBfaW1hZ2VzL2xvYWRlcjQuZ2lmKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC41O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OXB4KSB7XG4gICNzcG9ydC1oZWFkZXIgI3Nwb3J0LWNydW1icyB1bCBsaS5jcnVtYlNlbGVjdGVkIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG4gICNzcG9ydC1oZWFkZXIgI3Nwb3J0LWNydW1icyAuc3BvcnQtY3J1bWJzLWxpc3Qge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAjc3BvcnQtaGVhZGVyICNzcG9ydC1jcnVtYnMgYSBzcGFuIHtcbiAgICBmb250LXNpemU6IDAuNzBlbTtcbiAgfVxuICAjc3BvcnQtaGVhZGVyICNzcG9ydC1jcnVtYnMgYSBzcGFuOmFmdGVyIHtcbiAgICBmb250OiAxMHB4LzFlbSBGb250QXdlc29tZTtcbiAgfVxuICAjc3BvcnQtaGVhZGVyICNzcG9ydC1jcnVtYnMgYSAuYXJyb3ctZG93biB7XG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgfVxuICAjc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCBsaSBhIHtcbiAgICBwYWRkaW5nOiAxMHB4IDJweDtcbiAgICBmb250LXNpemU6IDBlbTtcbiAgfVxuICAjc3BvcnQtaGVhZGVyIC5zcG9ydC10b29scyB1bCBsaSBhOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLyogU3BvcnQvTGVhZ3VlL0xldmVsL1RlYW0gTmFtZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNzcG9ydC1oZWFkZXIge1xuICAvKiBUZWFtIENvbG9yc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAuY29sb3JbMCwxLDJdW3JdWy1zbSwtbSwtbCwteGxdIChkZWZhdWx0cyB0byBsZWZ0LCBsYXJnZSkgKi9cbiAgLyogQm9yZGVycyAtPiAqL1xuICAvKiBUb3AgKi9cbiAgLyogUmlnaHQgKi9cbiAgLyogTGVmdCAqL1xuICAvKiBCb3R0b20gKi9cbiAgLyogU2VwYXJhdG9yIENvbG9yICovXG4gIC8qIFByaW1hcnkgQ29sb3IgKi9cbiAgLyogU2Vjb25kYXJ5IENvbG9yICovXG4gIC8qIEVkZ2luZ1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC1jb2xvcnMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMjVweCAyNXB4IDEyLjVweDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC1jb2xvcnMgLnRlYW0tbG9nby13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNzVweDtcbiAgd2lkdGg6IDc1cHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY5cHgpIHtcbiAgI3Nwb3J0LWhlYWRlciAuc3BvcnQtY29sb3JzIC50ZWFtLWxvZ28td3JhcHBlciB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICB9XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LWNvbG9ycyAudGVhbS1sb2dvLXdyYXBwZXIsICNzcG9ydC1oZWFkZXIgLnNwb3J0LWNvbG9ycyAudGVhbS1sb2dvLXdyYXBwZXI6aG92ZXIge1xuICBjb2xvcjogI2NjYztcbn1cblxuI3Nwb3J0LWhlYWRlciAuc3BvcnQtY29sb3JzIC50ZWFtLWxvZ28td3JhcHBlci5ub2xvZ286YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA3cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3JkZXItbGVmdC13aWR0aDogOHB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDhweDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjc3BvcnQtaGVhZGVyIC5zcG9ydC1jb2xvcnMgLnRlYW0tbG9nby13cmFwcGVyLm5vbG9nbzphZnRlciB7XG4gICAgd2lkdGg6IDNweDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDRweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xuICB9XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LWNvbG9ycyBoMiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1JTtcbiAgZm9udDogYm9sZCAzOHB4LzEuMjUgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3Nwb3J0LWhlYWRlciAuc3BvcnQtY29sb3JzIGgyIHtcbiAgICBmb250OiBib2xkIDEuM2VtLzEuNGVtIFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICB9XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LWNvbG9ycyBoMiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLnNwb3J0LWNvbG9ycyBkaXYucGxheWVyX3Bob3RvIHtcbiAgYm9yZGVyOiAzcHggc29saWQgIzAwNTRBNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRBNjtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAxMHB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIHdpZHRoOiA3MHB4O1xufVxuXG4jc3BvcnQtaGVhZGVyIC5zcG9ydC1jb2xvcnMgLnRlYW1Mb2dvLXNtYWxsIHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4jc3BvcnQtaGVhZGVyIC5hYnMwLFxuI3Nwb3J0LWhlYWRlciAuYWJzMHIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmFiczAge1xuICBsZWZ0OiAwO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5hYnMwciB7XG4gIHJpZ2h0OiAwO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjAtc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMC1tIHtcbiAgYm9yZGVyLXRvcDogMTJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDM2cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiAzNnB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMCwgI3Nwb3J0LWhlYWRlciAuY29sb3IwLWwge1xuICBib3JkZXItdG9wOiAyMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNjZweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQ6IDY2cHggIHNvbGlkICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDIycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3IwLXhsIHtcbiAgYm9yZGVyLXRvcDogMzJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDk2cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiA5NnB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAzMnB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMHItc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMHItbSB7XG4gIGJvcmRlci10b3A6IDEycHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAzNnB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogMzZweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjByLCAjc3BvcnQtaGVhZGVyIC5jb2xvcjByLWwge1xuICBib3JkZXItdG9wOiAyMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNjZweCAgc29saWQgI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDY2cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDIycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3Iwci14bCB7XG4gIGJvcmRlci10b3A6IDMycHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiA5NnB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogOTZweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMzJweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjEtc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMS1tIHtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDMwcHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiAzMHB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMSwgI3Nwb3J0LWhlYWRlciAuY29sb3IxLWwge1xuICBib3JkZXItdG9wOiAyMHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNjBweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQ6IDYwcHggIHNvbGlkICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3IxLXhsIHtcbiAgYm9yZGVyLXRvcDogMzBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDkwcHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiA5MHB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMXItc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMXItbSB7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogMzBweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjFyLCAjc3BvcnQtaGVhZGVyIC5jb2xvcjFyLWwge1xuICBib3JkZXItdG9wOiAyMHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNjBweCAgc29saWQgI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDYwcHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3Ixci14bCB7XG4gIGJvcmRlci10b3A6IDMwcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiA5MHB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogOTBweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMzBweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjItc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMi1tIHtcbiAgYm9yZGVyLXRvcDogMTVweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDQ1cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiA0NXB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMiwgI3Nwb3J0LWhlYWRlciAuY29sb3IyLWwge1xuICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNzVweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQ6IDc1cHggIHNvbGlkICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3IyLXhsIHtcbiAgYm9yZGVyLXRvcDogMzVweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDEwNXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0OiAxMDVweCBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAzNXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcG9ydC1oZWFkZXIgLmNvbG9yMnItc20sICNzcG9ydC1oZWFkZXIgLmNvbG9yMnItbSB7XG4gIGJvcmRlci10b3A6IDE1cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiA0NXB4ICBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogNDVweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMTVweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5jb2xvcjJyLCAjc3BvcnQtaGVhZGVyIC5jb2xvcjJyLWwge1xuICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogNzVweCAgc29saWQgI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDc1cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Nwb3J0LWhlYWRlciAuY29sb3Iyci14bCB7XG4gIGJvcmRlci10b3A6IDM1cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAxMDVweCBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogMTA1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMzVweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5lZGdlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zcG9ydC1oZWFkZXIvZWRnZS5wbmdcIikgMCAwIHJlcGVhdC14O1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jc3BvcnQtaGVhZGVyIC5lZGdlLXRvb2xzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zcG9ydC1oZWFkZXIvdG9vbHMtZWRnZS5wbmdcIikgMCAwIHJlcGVhdC14O1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBUZWFtIExvZ29cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKlxuICBMb2dvIHNpemVzIGFyZS4uLlxuICAyMCB4IDIwIC0gdGlueVxuICA2MCB4IDIwIC0gc21hbGxcbiAgOTAgeCAzMCAtIG1lZGl1bVxuICAxMjAgeCA0MCAtIGxhcmdlXG4gIDE1MCB4IDUwIC0gZXh0cmEgbGFyZ2VcbiAgMzAwIHggMTAwIC0gcHJpbnRcbiovXG4vKlNoYXBlKi9cbi50ZWFtTG9nbyxcbi50ZWFtTG9nby10aW55LFxuLnRlYW1Mb2dvLXNtYWxsLFxuLnRlYW1Mb2dvLW1lZGl1bSxcbi50ZWFtTG9nby1sYXJnZSxcbi50ZWFtTG9nby1leHRyYV9sYXJnZSxcbi50ZWFtTG9nby1wcmludCxcbi50ZWFtTG9nb3IsXG4udGVhbUxvZ29yLXRpbnksXG4udGVhbUxvZ29yLXNtYWxsLFxuLnRlYW1Mb2dvci1tZWRpdW0sXG4udGVhbUxvZ29yLWxhcmdlLFxuLnRlYW1Mb2dvci1leHRyYV9sYXJnZSxcbi50ZWFtTG9nb3ItcHJpbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKlNpemUqL1xuLnRlYW1Mb2dvLXRpbnksXG4udGVhbUxvZ29yLXRpbnkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi50ZWFtTG9nby1zbWFsbCxcbi50ZWFtTG9nb3Itc21hbGwge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS1zbWFsbC5wbmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIGhlaWdodDogMjBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4udGVhbUxvZ28tbWVkaXVtLFxuLnRlYW1Mb2dvci1tZWRpdW0ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS1tZWRpdW0ucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IDkwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbn1cblxuLnRlYW1Mb2dvLFxuLnRlYW1Mb2dvLWxhcmdlLFxuLnRlYW1Mb2dvcixcbi50ZWFtTG9nb3ItbGFyZ2Uge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS1sYXJnZS5wbmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTIwcHggIWltcG9ydGFudDtcbn1cblxuLnRlYW1Mb2dvLWV4dHJhX2xhcmdlLFxuLnRlYW1Mb2dvci1leHRyYV9sYXJnZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdGVhbV9sb2dvcy90ZWFtLWV4dHJhX2xhcmdlLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xufVxuXG4udGVhbUxvZ28tcHJpbnQsXG4udGVhbUxvZ29yLXByaW50IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tcHJpbnQucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4vKk9yaWVudGF0aW9uKi9cbi5zcG9ydC1jb2xvcnMgLnRlYW1Mb2dvLFxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ28tbWVkaXVtLFxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ28tbGFyZ2UsXG4uc3BvcnQtY29sb3JzIC50ZWFtTG9nby1leHRyYV9sYXJnZSxcbi5zcG9ydC1jb2xvcnMgLnRlYW1Mb2dvLXByaW50IHtcbiAgbGVmdDogMTVweDtcbiAgdG9wOiAxMHB4O1xufVxuXG4uc3BvcnQtY29sb3JzIC50ZWFtTG9nb3IsXG4uc3BvcnQtY29sb3JzIC50ZWFtTG9nb3ItbWVkaXVtLFxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ29yLWxhcmdlLFxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ29yLWV4dHJhX2xhcmdlLFxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ29yLXByaW50IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogMTBweDtcbn1cblxuLnNwb3J0LWNvbG9ycyAudGVhbUxvZ28tc21hbGwge1xuICBsZWZ0OiA1cHg7XG4gIHRvcDogNXB4O1xufVxuXG4uc3BvcnQtY29sb3JzIC50ZWFtTG9nb3Itc21hbGwge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogNXB4O1xuICB0b3A6IDVweDtcbn1cblxuLyogSW4gVGFibGVzICovXG50YWJsZSAudGVhbUxvZ28sXG50YWJsZSAudGVhbUxvZ28tdGlueSxcbnRhYmxlIC50ZWFtTG9nby1zbWFsbCxcbnRhYmxlIC50ZWFtTG9nby1tZWRpdW0sXG50YWJsZSAudGVhbUxvZ28tbGFyZ2UsXG50YWJsZSAudGVhbUxvZ28tZXh0cmFfbGFyZ2UsXG50YWJsZSAudGVhbUxvZ28tcHJpbnQsXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nbyxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnksXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby1zbWFsbCxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLW1lZGl1bSxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLWxhcmdlLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tZXh0cmFfbGFyZ2UsXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby1wcmludCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG50YWJsZSAudGVhbUxvZ286bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG50YWJsZSAudGVhbUxvZ28tdGlueTpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSxcbnRhYmxlIC50ZWFtTG9nby1zbWFsbDpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSxcbnRhYmxlIC50ZWFtTG9nby1tZWRpdW06bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG50YWJsZSAudGVhbUxvZ28tbGFyZ2U6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG50YWJsZSAudGVhbUxvZ28tZXh0cmFfbGFyZ2U6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG50YWJsZSAudGVhbUxvZ28tcHJpbnQ6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nbzpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnk6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby1zbWFsbDpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLW1lZGl1bTpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSxcbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLWxhcmdlOm5vdChbc3R5bGUqPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoL2FwcF9pbWFnZXMvdGVhbV9sb2dvcy90ZWFtLXRpbnkucG5nKTtcIl0pLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tZXh0cmFfbGFyZ2U6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSksXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby1wcmludDpub3QoW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6dXJsKC9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZyk7XCJdKSB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xufVxuXG50YWJsZSAudGVhbUxvZ29yLFxudGFibGUgLnRlYW1Mb2dvci10aW55LFxudGFibGUgLnRlYW1Mb2dvci1zbWFsbCxcbnRhYmxlIC50ZWFtTG9nb3ItbWVkaXVtLFxudGFibGUgLnRlYW1Mb2dvci1sYXJnZSxcbnRhYmxlIC50ZWFtTG9nb3ItZXh0cmFfbGFyZ2UsXG50YWJsZSAudGVhbUxvZ29yLXByaW50LFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ29yLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ29yLXRpbnksXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nb3Itc21hbGwsXG4uc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nb3ItbWVkaXVtLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ29yLWxhcmdlLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ29yLWV4dHJhX2xhcmdlLFxuLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ29yLXByaW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4vKiBXaWRnZXRzIC0gVW5pdmVyc2FsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0Rm9vdGVyIC50ZWFtTG9nby10aW55IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgNXB4IDAgMDtcbn1cblxuLndpZGdldEZvb3RlciAubGlua1RleHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuXG4ud2lkZ2V0Rm9vdGVyIC5saW5rQXJyb3cge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi53aWRnZXRIaWVyYXJjaHkgaDQge1xuICBtYXJnaW46IDVweCAwO1xufVxuXG4vKiBXaWRnZXRzIC0gaW4gTGlnaHRib3hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQtc291cmNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi53aWRnZXQtZGF0YSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLndpZGdldC1maWx0ZXJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4vKiBXaWRnZXQgRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0Rm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW46IDVweCAwIDA7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLyogV2lkZ2V0IC0gUm9zdGVyIFBsYXllciBTdGF0cyBXaWRnZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQtcm9zdGVyLXBsYXllciB1bCBsaSB7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxuLndpZGdldC1yb3N0ZXItcGxheWVyIHVsIGxpLmxhc3RMaSB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG59XG5cbi53aWRnZXQtcm9zdGVyLXBsYXllciB1bCBsaS5sYXN0TGkgaDQge1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIGg0IGEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIGg0IHNwYW4ge1xuICBjb2xvcjogIzMzMztcbn1cblxuLndpZGdldC1yb3N0ZXItcGxheWVyIHVsIGxpLmxhc3RMaSAubGVhZGVyLWhpZ2hsaWdodCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zcG9ydC1jb2xvcnMge1xuICBtYXJnaW46IGF1dG87XG4gIGJvcmRlcjogMHB4O1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zcG9ydC1jb2xvcnMgLmVkZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zcG9ydC1jb2xvcnMgLnBsYXllcl9waG90byB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMHB4IDE1cHggMTBweCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgbWF4LWhlaWdodDogNzBweDtcbiAgbWF4LXdpZHRoOiA3MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDNweCBzb2xpZCAjMDA1NEE2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzdDN0M3O1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zcG9ydC1jb2xvcnMgLnBsYXllcl9waG90byBhIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zdGF0cyB7XG4gIG1hcmdpbjogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zdGF0cyBwLnN0YXRzLW1pbm9yIHtcbiAgcGFkZGluZzogMHB4O1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbi53aWRnZXQtcm9zdGVyLXBsYXllciB1bCBsaS5sYXN0TGkgLmxlYWRlci1oaWdobGlnaHQgLnN0YXRzIHAuc3RhdHMtbWFqb3Ige1xuICBmb250LXNpemU6IDJlbTtcbiAgcGFkZGluZzogMHB4O1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdWwgbGkubGFzdExpIC5sZWFkZXItaGlnaGxpZ2h0IC5zdGF0cyBwLnN0YXRzLW1ham9yOmFmdGVyIHtcbiAgYm9yZGVyOiAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53aWRnZXQtcm9zdGVyLXBsYXllciB1bCBsaS5sYXN0TGkgLm5vRW50cnkge1xuICBwYWRkaW5nOiAxNXB4O1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUge1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLndpZGdldC1yb3N0ZXItcGxheWVyIHRhYmxlIC5yYW5rIHtcbiAgd2lkdGg6IDElO1xufVxuXG4ud2lkZ2V0LXJvc3Rlci1wbGF5ZXIgdGFibGUgLnN0YXQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi53aWRnZXQtcm9zdGVyLXBsYXllciAubGVhZGVyLWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLndpZGdldC1yb3N0ZXItcGxheWVyIC5sZWFkZXItaGlnaGxpZ2h0IHAge1xuICBtYXJnaW46IDBweDtcbn1cblxuLndpZGdldC1yb3N0ZXItcGxheWVyIC5sZWFkZXItaGlnaGxpZ2h0IHAucGxheWVyTmFtZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogNXB4IDEwcHggMTBweDtcbn1cblxuW2lkXj1cIndpZGdldF9yb3N0ZXJfd2lkZ2V0XCJdIC5zcG9ydFRhYmxlTGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0QztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5baWRePVwid2lkZ2V0X3Jvc3Rlcl93aWRnZXRcIl0gLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tdGlueSB7XG4gIGxlZnQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xufVxuXG5baWRePVwid2lkZ2V0X3Jvc3Rlcl93aWRnZXRcIl0gLnNwb3J0VGFibGVMYWJlbCAqIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbltpZF49XCJ3aWRnZXRfcm9zdGVyX3dpZGdldFwiXSAuc3BvcnRUYWJsZUxhYmVsIGg0LnRlYW1OYW1lIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuW2lkXj1cIndpZGdldF9yb3N0ZXJfd2lkZ2V0XCJdIC5zcG9ydFRhYmxlTGFiZWwgLnNlYXNvbkRpc3BsYXksXG5baWRePVwid2lkZ2V0X3Jvc3Rlcl93aWRnZXRcIl0gLnNwb3J0VGFibGVMYWJlbCAuZXhwYW5kZWRWaWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbltpZF49XCJ3aWRnZXRfcm9zdGVyX3dpZGdldFwiXSAuc3BvcnRUYWJsZUxhYmVsIC5saW5rVGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5baWRePVwid2lkZ2V0X3Jvc3Rlcl93aWRnZXRcIl0gLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uLXNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hY3RpdmVQbGF5ZXJzID4gaDQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0Qztcbn1cblxuLyogV2lkZ2V0IC0gR2FtZSBMaXN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0LWdhbWVUYWJsZSB0aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi53aWRnZXQtZ2FtZVRhYmxlIGEge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZ2FtZS1sb2NhdGlvbi1zbWFsbC1saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiAycHg7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgYm9yZGVyLXRvcDogZG90dGVkIDFweCAjQ0NDO1xuICBmb250LXNpemU6IDlweDtcbn1cblxuLnNob3dNb3JlR2FtZXMge1xuICBtYXJnaW4tdG9wOiAycHg7XG59XG5cbi8qIFdpZGdldCAtIFRlYW0gQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndpZGdldC10ZWFtQnV0dG9ucyAuc3BvcnQtY29sb3JzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud2lkZ2V0LXRlYW1CdXR0b25zIGEge1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzAwMjA0MDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSAwLjJzIGVhc2UtaW4sIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwYWRkaW5nOiAxMnB4IDEycHggMTBweCA2NXB4O1xufVxuXG4ud2lkZ2V0LXRlYW1CdXR0b25zIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAyMDQwO1xufVxuXG4ud2lkZ2V0LXRlYW1CdXR0b25zIGE6aG92ZXIgLnRlYW1Mb2dvLXNtYWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTRBNjtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyAudGVhbUxvZ28tc21hbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyMDQwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxlZnQ6IC01M3B4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXQtdGVhbUJ1dHRvbnMgLnRlYW1Mb2dvLXNtYWxsOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzBEQjE0QztcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTVweDtcbiAgd2lkdGg6IDNweDtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyAudGVhbW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ud2lkZ2V0LXRlYW1CdXR0b25zIC50ZWFtbmFtZS1zZXBhcmF0b3Ige1xuICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgcGFkZGluZy1yaWdodDogMnB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5jb2wtbWQtMTIgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgLnRlYW1CdG5Db2wsXG4gIC5jb2wtbWQtNiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUJ0bkNvbCxcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sLCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUJ0bkNvbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuY29sLW1kLTEyIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sICsgLnRlYW1CdG5Db2wsXG4gIC5jb2wtbWQtNiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUJ0bkNvbCArIC50ZWFtQnRuQ29sLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgLnRlYW1CdG5Db2wgKyAudGVhbUJ0bkNvbCwgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1CdG5Db2wgKyAudGVhbUJ0bkNvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUJ0bkNvbCxcbiAgLmNvbC1tZC02IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgLnRlYW1CdG5Db2wge1xuICAgIHdpZHRoOiAzMy4zJTtcbiAgfVxuICAuY29sLW1kLTYgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyxcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5jb2wtbWQtNiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyBhLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgYSxcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIGEsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiBhLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTEgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICB9XG4gIC5jb2wtbWQtNiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbUxvZ28tc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG8gOXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gIH1cbiAgLmNvbC1tZC02IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtTG9nby1zbWFsbDphZnRlcixcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtTG9nby1zbWFsbDphZnRlcixcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtTG9nby1zbWFsbDphZnRlcixcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtTG9nby1zbWFsbDphZnRlcixcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0xIC50ZWFtTG9nby1zbWFsbDphZnRlciB7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IC01cHg7XG4gIH1cbiAgLmNvbC1tZC02IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtbmFtZS1zZXBhcmF0b3IsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbW5hbWUtc2VwYXJhdG9yLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1uYW1lLXNlcGFyYXRvcixcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtbmFtZS1zZXBhcmF0b3IsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbW5hbWUtc2VwYXJhdG9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDtcbiAgfVxuICAuY29sLW1kLTYgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyBhIHtcbiAgICBwYWRkaW5nOiA4cHggNHB4IDRweDtcbiAgfVxuICAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUJ0bkNvbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLW1kLTYgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiBhLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgYSB7XG4gICAgcGFkZGluZzogMTBweCA4cHggNnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuY29sLW1kLTEyIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyxcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSxcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0xIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyBhLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgYSxcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIGEsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiBhLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgYSxcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0xIGEsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbUxvZ28tc21hbGwsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbUxvZ28tc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG8gOXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbUxvZ28tc21hbGw6YWZ0ZXIsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbUxvZ28tc21hbGw6YWZ0ZXIge1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtNXB4O1xuICB9XG4gIC5jb2wtbWQtMTIgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgLnRlYW1uYW1lLXNlcGFyYXRvcixcbiAgLmNvbC1tZC00IC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtbmFtZS1zZXBhcmF0b3IsXG4gIC5jb2wtbWQtMyAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbW5hbWUtc2VwYXJhdG9yLFxuICAuY29sLW1kLTQgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1uYW1lLXNlcGFyYXRvcixcbiAgLmNvbC1tZC0zIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtbmFtZS1zZXBhcmF0b3IsXG4gIC5jb2wtbWQtNCAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMSAudGVhbW5hbWUtc2VwYXJhdG9yLFxuICAuY29sLW1kLTMgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTEgLnRlYW1uYW1lLXNlcGFyYXRvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUJ0bkNvbCxcbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMiAudGVhbUJ0bkNvbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuY29sLW1kLTEyIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sICsgLnRlYW1CdG5Db2wsXG4gIC5jb2wtbWQtMTIgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1CdG5Db2wgKyAudGVhbUJ0bkNvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbiAgLmNvbC1tZC0xMiAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUJ0bkNvbCB7XG4gICAgd2lkdGg6IDMzLjMlO1xuICB9XG4gIC5jb2wtbWQtMTIgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1CdG5Db2wge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUwMHB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgLnRlYW1CdG5Db2wsIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtQnRuQ29sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sICsgLnRlYW1CdG5Db2wsIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0yIC50ZWFtQnRuQ29sICsgLnRlYW1CdG5Db2wge1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTMgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtTG9nby1zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0byA5cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuICAud2lkZ2V0LXRlYW1CdXR0b25zLmNvbHVtbnMtMyAudGVhbUxvZ28tc21hbGw6YWZ0ZXIge1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtNXB4O1xuICB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtbmFtZS1zZXBhcmF0b3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAwO1xuICB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMuY29sdW1ucy0zIC50ZWFtQnRuQ29sIHtcbiAgICB3aWR0aDogMzMuMyU7XG4gIH1cbiAgLndpZGdldC10ZWFtQnV0dG9ucy5jb2x1bW5zLTIgLnRlYW1CdG5Db2wge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLyogLS0gRmlsdGVyYWJsZSwgU29ydGFibGUgVGFibGUgVmFyaWFudCAqL1xuLndpZGdldC10ZWFtQnV0dG9ucyB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0LXRlYW1CdXR0b25zIHRoZWFkIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyB0aDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyB0ZDpmaXJzdC1jaGlsZCB7XG4gIG1pbi13aWR0aDogNDVweDtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyB0ZCAuc3BvcnQtY29sb3JzIHtcbiAgYm9yZGVyOiBub25lO1xuICBtaW4td2lkdGg6IDQ1cHg7XG59XG5cbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGQgLnRlYW1uYW1lIHtcbiAgcGFkZGluZzogNXB4IDA7XG59XG5cbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgYSxcbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgYTpob3Zlcixcbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgYTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjODA4MDgwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgdHIge1xuICBiYWNrZ3JvdW5kOiAjZjRmNGY0IHVybCg8JT0gYXNzZXRfcGF0aF9mb3IoXCIvYXBwX2ltYWdlcy93aWRnZXRzL3RlYW1CdXR0b25CRy5naWZcIikgJT4pIDAgMCByZXBlYXQteDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgY29sb3I6ICM4MDgwODA7XG59XG5cbi53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY2NjtcbiAgY29sb3I6ICMxYTFhMWE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndpZGdldC10ZWFtQnV0dG9ucyB0Ym9keSB0cjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yODBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogV2lkZ2V0IC0gVGVhbSBCdXR0b25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IHtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG4uY29sdW1uIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYiB7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLmNvbHVtbiAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IGIsXG4uY29sdW1uIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnBlMTAwIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYixcbi5wZTY2IC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYixcbi5wZTUwIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYiB7XG4gIG1hcmdpbjogMCAxJSAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMjUlO1xufVxuXG4ucGUxMDAgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuLFxuLnBlNjYgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuLFxuLnBlNTAgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuIHtcbiAgd2lkdGg6IDcwJTtcbn1cblxuLnBlMzMgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBiLFxuLnBlMzMgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuLFxuLnBlMjUgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBiLFxuLnBlMjUgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbiNsaWdodGJveEJvZHkgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCB7XG4gIG1hcmdpbjogMTVweCAxNXB4IC0xNXB4O1xufVxuXG4jbGlnaHRib3hCb2R5IC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgLm9kZCxcbiNsaWdodGJveEJvZHkgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCAuZXZlbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8qIFdpZGdldCAtIEdhbGxlcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nYWxsZXJ5V2lkZ2V0IHtcbiAgYmFja2dyb3VuZDogI0RERCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3dpZGdldHMvZ2FsbGVyeUJHLnBuZ1wiKSAwIDI2cHggcmVwZWF0LXg7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5zY3JvbGxhYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZ2FsbGVyeVdpZGdldCAuc2Nyb2xsYWJsZSAuaXRlbXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDEwcHg7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5oZWFkZXIge1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5oZWFkZXIgaDMge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHdpZHRoOiA2NSU7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5oZWFkZXIgYSB7XG4gIGNvbG9yOiAjOTk5O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICM0NDQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uZ2FsbGVyeVdpZGdldCAuaGVhZGVyIGE6aG92ZXIge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmdhbGxlcnlXaWRnZXQgLm5leHQsXG4uZ2FsbGVyeVdpZGdldCAucHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMjlweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm90dG9tOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5uZXh0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5wcmV2IHtcbiAgbGVmdDogMDtcbn1cblxuLmdhbGxlcnlXaWRnZXQgLm5leHQgc3Bhbixcbi5nYWxsZXJ5V2lkZ2V0IC5wcmV2IHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDlweDtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogNDNweDtcbiAgbGVmdDogMTBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy93aWRnZXRzL2dhbGxlcnlOYXYucG5nXCIpIDAgMCBuby1yZXBlYXQ7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5wcmV2OmhvdmVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOXB4IDA7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5uZXh0IHNwYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjdweCAwO1xufVxuXG4uZ2FsbGVyeVdpZGdldCAubmV4dDpob3ZlciBzcGFuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2cHggMDtcbn1cblxuLmdhbGxlcnlXaWRnZXQgLnByZXYuZGlzYWJsZWQgc3BhbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xOHB4IDA7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5uZXh0LmRpc2FibGVkIHNwYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDVweCAwO1xufVxuXG4uZ2FsbGVyeVdpZGdldCAuaXRlbSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIG1hcmdpbjogMHB4IDhweCA4cHggMHB4O1xuICBvcGFjaXR5OiAwLjkzO1xufVxuXG4uZ2FsbGVyeVdpZGdldCAuaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5pdGVtIC50aHVtYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDc1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5pdGVtIGltZy52ZXJ0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5nYWxsZXJ5V2lkZ2V0IC5pdGVtIGltZy5ob3JpeiB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmRyb3Bkb3duLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xufVxuXG4uZHJvcGRvd24td3JhcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiA0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC00MHB4O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMTIpIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMCwgMCwgMCwgMC4xMikpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgdHJhbnNwYXJlbnQgMCUsIHJnYmEoMCwgMCwgMCwgMC4xMikgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEyKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEyKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEyKSAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMWYwMDAwMDAnLEdyYWRpZW50VHlwZT0xICk7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uIHtcbiAgYmFja2dyb3VuZDogIzQwNDA0MDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwcHggNTBweCAxMHB4IDEwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICBmbG9hdDogcmlnaHQ7XG4gIG1pbi13aWR0aDogMTUwcHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uIC5zZWFzb24ge1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCAxMHB4LzFlbSBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uIC5zdWJzZWFzb24ge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udDogYm9sZCAxMnB4LzFlbSBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwZDdcIjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiAxMHB4O1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICBjb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udDogbm9ybWFsIDIwcHgvMWVtIEZvbnRBd2Vzb21lO1xuICBwYWRkaW5nOiAwcHggNHB4IDRweCA0cHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBjb2xvcjogI2RkZDtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMjMwcHg7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDE1cHggMTVweCAyMHB4IDE1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwREIxNEM7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgLnNlYXNvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBib2xkIDEycHggXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDAgMCA1cHg7XG4gIG1hcmdpbjogNXB4IDA7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgLnNlYXNvbi10aXRsZSBzcGFuIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMHB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3NlbGVjdC1kb3duLWFycm93LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZGRkO1xuICBtYXJnaW4tYm90dG9tOiAzcHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgYS5jbG9zZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwcHggNnB4IDJweCA2cHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgYS5jbG9zZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGRvd24td3JhcHBlciAjbWVnYURyb3BEb3duLXNlYXNvbi1jYWxsb3V0IGEuY3VycmVudCB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjtcbiAgY29sb3I6ICNhYWE7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGV0dGVyLXNwYWNpbmc6IC4zcHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXQgYS5jdXJyZW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzMzMztcbn1cblxuLmRyb3Bkb3duLXdyYXBwZXIgI21lZ2FEcm9wRG93bi1zZWFzb24tY2FsbG91dCAuZm9vdGVyIHtcbiAgbWFyZ2luOiAxMHB4IDAgMDtcbn1cblxuLmRyb3Bkb3duLXdyYXBwZXIgI21lZ2FEcm9wRG93bi1zZWFzb24tY2FsbG91dCBvcHRncm91cCBvcHRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCAwIDEwcHg7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLm1kZC1hY3RpdmUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyICNtZWdhRHJvcERvd24tc2Vhc29uLm1kZC1hY3RpdmU6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLXdyYXBwZXIgI21lZ2FEcm9wRG93bi1zZWFzb24ubWRkLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyLm1kZC1hY3RpdmUtb3BlbiAjbWVnYURyb3BEb3duLXNlYXNvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG5cbi5kcm9wZG93bi13cmFwcGVyLm1kZC1hY3RpdmUtb3BlbiAjbWVnYURyb3BEb3duLXNlYXNvbi1jYWxsb3V0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBkcm9wZG93bi1zZWFzb24gMC4ycyBlYXNlLWluO1xuICBhbmltYXRpb246IGRyb3Bkb3duLXNlYXNvbiAwLjJzIGVhc2UtaW47XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLyogU2Vhc29ucyBNZWdhIERyb3AgRG93biAqL1xuICAuZHJvcGRvd24td3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi13cmFwcGVyOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZHJvcGRvd24td3JhcHBlciAjbWVnYURyb3BEb3duLXNlYXNvbiAuc2Vhc29uIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLmRyb3Bkb3duLXdyYXBwZXIgI21lZ2FEcm9wRG93bi1zZWFzb24gLnN1YnNlYXNvbiB7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gIH1cbiAgLmRyb3Bkb3duLXdyYXBwZXIgI21lZ2FEcm9wRG93bi1zZWFzb24tY2FsbG91dCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLkdhbWVTaG93RGF0YUNvbnRhaW5lci5wbGF5X2J5X3BsYXkge1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IC5HYW1lU2hvd0RhdGFDb250YWluZXIucGxheV9ieV9wbGF5IC5TdGF0V2lkZ2V0LFxuYm9keSAuR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSAuU3RhdFdpZGdldENvbHVtbiAuU3RhdFdpZGdldEhvbGRlciB7XG4gIG1hcmdpbjogMCAwIDAgMDtcbn1cblxuI1BCUCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4jUEJQLWxvYWRlciArICNQQlAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAjUEJQIC5wYnAtbGlzdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cbn1cblxuI1BCUCAucGJwLWhlYWRlcjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDQ4cHg7XG59XG5cbiNQQlAgLnBicC1oZWFkZXI6bm90KDpmaXJzdC1jaGlsZCkgLmhvbWVUZWFtLFxuI1BCUCAucGJwLWhlYWRlcjpub3QoOmZpcnN0LWNoaWxkKSAuYXdheVRlYW0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jUEJQIC5wYnAtdGVhbS1oZWFkZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNQQlAgLnBicC10ZWFtLWhlYWRlciAuaG9tZVRlYW0sXG4jUEJQIC5wYnAtdGVhbS1oZWFkZXIgLmF3YXlUZWFtIHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMTBweCA2cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICNQQlAgLnBicC10ZWFtLWhlYWRlciAuaG9tZVRlYW0sXG4gICNQQlAgLnBicC10ZWFtLWhlYWRlciAuYXdheVRlYW0ge1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICB9XG59XG5cbiNQQlAgLnBicC10ZWFtLWhlYWRlciAuaG9tZVRlYW0ge1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuI1BCUCAucGJwLXRlYW0taGVhZGVyIC5ob21lVGVhbSAudGVhbV9sb2dvIHtcbiAgLXdlYmtpdC1vcmRlcjogMTtcbiAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gIG9yZGVyOiAxO1xuICBtYXJnaW4tbGVmdDogOHB4O1xufVxuXG4jUEJQIC5wYnAtdGVhbS1oZWFkZXIgLmF3YXlUZWFtIC50ZWFtX2xvZ28ge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuI1BCUCAucGJwLXRlYW0taGVhZGVyIC50ZWFtX2xvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MDBweCkge1xuICAjUEJQIC5wYnAtdGVhbS1oZWFkZXIgLnRlYW1fbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuI1BCUCAucGJwLXRlYW0taGVhZGVyIC5pbnRlcnZhbCB7XG4gIC13ZWJraXQtb3JkZXI6IDE7XG4gIC1tcy1mbGV4LW9yZGVyOiAxO1xuICBvcmRlcjogMTtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICNQQlAgLnBicC10ZWFtLWhlYWRlciAuaW50ZXJ2YWwge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG4jUEJQIC5wYnAtdGVhbS1oZWFkZXIgLmludGVydmFsIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxNnB4IDAgOHB4O1xufVxuXG4jUEJQIC5wYnAtdGVhbS1oZWFkZXIgLmludGVydmFsIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI1BCUCAuY2xvY2tUaW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMzUlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MDBweCkge1xuICAjUEJQIC5jbG9ja1RpbWUge1xuICAgIG1pbi13aWR0aDogMTglO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICNQQlAgLmNsb2NrVGltZSB7XG4gICAgbWluLXdpZHRoOiAyMi41JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGNvbG9yOiAjNjY2O1xuICB9XG59XG5cbiNQQlAgLnBsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogNnB4O1xuICB3aWR0aDogY2FsYyg2MCUgLSA2cHgpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwMHB4KSB7XG4gICNQQlAgLnBsYXkge1xuICAgIHdpZHRoOiBjYWxjKDU1JSAtIDZweCk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTUwcHgpIHtcbiAgI1BCUCAucGxheSB7XG4gICAgd2lkdGg6IGNhbGMoNTUlIC0gMTJweCk7XG4gICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAjUEJQIC5wbGF5IHtcbiAgICB3aWR0aDogY2FsYyg0NSUgLSAxMnB4KTtcbiAgfVxufVxuXG4jUEJQIC5wbGF5QXdheSB7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICNQQlAgLnBsYXlBd2F5IHtcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAjUEJQIC5wbGF5QXdheSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuI1BCUCAucGxheUF3YXkgLmNsb2NrVGltZSB7XG4gIHJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAjUEJQIC5wbGF5QXdheSAuY2xvY2tUaW1lIHtcbiAgICByaWdodDogLTIyLjUlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICNQQlAgLnBsYXlBd2F5IC5wbGF5ZXJQaG90byB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICB9XG59XG5cbiNQQlAgLnBsYXlIb21lIHtcbiAgbWFyZ2luLWxlZnQ6IDQwJTtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwMHB4KSB7XG4gICNQQlAgLnBsYXlIb21lIHtcbiAgICBtYXJnaW4tbGVmdDogNDUlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gICNQQlAgLnBsYXlIb21lIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgI1BCUCAucGxheUhvbWUge1xuICAgIG1hcmdpbi1sZWZ0OiA1NSU7XG4gIH1cbn1cblxuI1BCUCAucGxheUhvbWUgLnBsYXlUeXBlIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMzUlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MDBweCkge1xuICAjUEJQIC5wbGF5SG9tZSAucGxheVR5cGUge1xuICAgIHBhZGRpbmctbGVmdDogMTglO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICNQQlAgLnBsYXlIb21lIC5wbGF5VHlwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAjUEJQIC5wbGF5SG9tZSAuY2xvY2tUaW1lIHtcbiAgICBsZWZ0OiAtMjIuNSU7XG4gIH1cbn1cblxuI1BCUCAucGxheWVyTmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiNQQlAgLnBsYXllck5hbWUgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jUEJQIC5wbGF5ZXJOYW1lIGE6YWZ0ZXIge1xuICBjb250ZW50OiAnICc7XG59XG5cbiNQQlAgLnBsYXllckluZm8ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jUEJQIC5wbGF5ZXJQaG90byB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuI1BCUCAucGxheVR5cGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG59XG5cbiNQQlAgLnBsYXlUeXBlLFxuI1BCUCAucGxheWVySW5mbyxcbiNQQlAgLmV4dHJhRGV0YWlscyxcbiNQQlAgLmNsb2NrVGltZSB7XG4gIHBhZGRpbmc6IDRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTUwcHgpIHtcbiAgI1BCUCAucGxheVR5cGUsXG4gICNQQlAgLnBsYXllckluZm8sXG4gICNQQlAgLmV4dHJhRGV0YWlscyxcbiAgI1BCUCAuY2xvY2tUaW1lIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gIH1cbn1cblxuI1BCUCAuZXh0cmFEZXRhaWxzIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5waXRjaFRyYWNrZXIgPiBoMyB7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG59XG5cbi5waXRjaFRyYWNrZXIgLnJlZ3VsYXRpb25zIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4ucGl0Y2hUcmFja2VyIC5yZWd1bGF0aW9ucyB1bCB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLnBpdGNoVHJhY2tlciAucmVndWxhdGlvbnMgbGkge1xuICBtYXJnaW4tbGVmdDogMi4zZW07XG59XG5cbi5zaXRlQ29udGFpbmVyID4gI21hc3RlclNjb3JlYm9hcmQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWF4LXdpZHRoOiA5NDBweDtcbiAgbWFyZ2luOiAxOHB4IGF1dG87XG59XG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYgLnNpdGVDb250YWluZXIgPiAjbWFzdGVyU2NvcmVib2FyZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuI21hc3RlclNjb3JlYm9hcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4jbWFzdGVyU2NvcmVib2FyZCAuc2NvcmVib2FyZFJpYmJvbiB7XG4gIG1hcmdpbjogMHB4O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNywgNywgNywgMC43NSk7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5wYWdlRWxlbWVudCAuc2NvcmVib2FyZFJpYmJvbiB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIHtcbiAgaGVpZ2h0OiAxNTFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEzcHg7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5uZXh0X2J1dHRvbiwgLnNjb3JlYm9hcmRSaWJib24gLnByZXZpb3VzX2J1dHRvbiB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDEyNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDUwMDtcbiAgY29sb3I6ICMwREIxNEM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiAuODc1ZW0gRm9udEF3ZXNvbWU7XG4gIGxpbmUtaGVpZ2h0OiAxMjVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5uZXh0X2J1dHRvbjpob3ZlciwgLnNjb3JlYm9hcmRSaWJib24gLnByZXZpb3VzX2J1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNywgNywgNywgMC43NSk7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5uZXh0X2J1dHRvbjo6c2VsZWN0aW9uLCAuc2NvcmVib2FyZFJpYmJvbiAucHJldmlvdXNfYnV0dG9uOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLm5leHRfYnV0dG9uOjotbW96LXNlbGVjdGlvbiwgLnNjb3JlYm9hcmRSaWJib24gLnByZXZpb3VzX2J1dHRvbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLm5leHRfYnV0dG9uX2Rpc2FibGVkLCAuc2NvcmVib2FyZFJpYmJvbiAucHJldmlvdXNfYnV0dG9uX2Rpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAubmV4dF9idXR0b25fZGlzYWJsZWQ6YmVmb3JlLCAuc2NvcmVib2FyZFJpYmJvbiAucHJldmlvdXNfYnV0dG9uX2Rpc2FibGVkOmJlZm9yZSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAubmV4dF9idXR0b25fZGlzYWJsZWQ6aG92ZXIsIC5zY29yZWJvYXJkUmliYm9uIC5wcmV2aW91c19idXR0b25fZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLnByZXZpb3VzX2J1dHRvbiB7XG4gIGxlZnQ6IDhweDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLnByZXZpb3VzX2J1dHRvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MFwiO1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAubmV4dF9idXR0b24ge1xuICByaWdodDogOHB4O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAubmV4dF9idXR0b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmNvbnRhaW5lciB7XG4gIGhlaWdodDogMTI1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNDVweDtcbiAgcmlnaHQ6IDQ1cHg7XG4gIHotaW5kZXg6IDQ5MDtcbiAgcGFkZGluZzogMHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmNvbnRhaW5lciB1bCB7XG4gIHdpZHRoOiAxMDAwMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAuZ2FtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE1NHB4O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAuZ2FtZUxpbmsge1xuICBoZWlnaHQ6IDEyNXB4O1xuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gYSA+IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM2NjY7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiBhID4gc3BhbjpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmRhdGUge1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC50ZWFtIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5nYW1lIHtcbiAgcGFkZGluZy1yaWdodDogMnB4O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAuZ2FtZTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmdhbWUgLm5hbWUge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGxlZnQ7XG4gIG1heC13aWR0aDogMTA1cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5nYW1lIC5zY29yZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zY29yZWJvYXJkUmliYm9uIC5nYW1lIC5zdGF0dXMge1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAuZ2FtZSAuYm9vbSAubmFtZSB7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4uc2NvcmVib2FyZFJpYmJvbiAuZ2FtZSAuYm9vbSAuc2NvcmUge1xuICBjb2xvcjogIzAwNTRBNjtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmluX3Byb2dyZXNzIC5zdGF0dXMge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNjb3JlYm9hcmRSaWJib24gLmNvbXBsZXRlZCAuc3RhdHVzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmNvbC1tZC0zIC5zY29yZWJvYXJkUmliYm9uIC5jb250YWluZXIge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgcmlnaHQ6IDI1cHg7XG4gIH1cbiAgLmNvbC1tZC0zIC5zY29yZWJvYXJkUmliYm9uIC5wcmV2aW91c19idXR0b24sXG4gIC5jb2wtbWQtMyAuc2NvcmVib2FyZFJpYmJvbiAubmV4dF9idXR0b24ge1xuICAgIHdpZHRoOiAxOHB4O1xuICB9XG4gIC5jb2wtbWQtMyAuc2NvcmVib2FyZFJpYmJvbiAucHJldmlvdXNfYnV0dG9uIHtcbiAgICBsZWZ0OiA0cHg7XG4gIH1cbiAgLmNvbC1tZC0zIC5zY29yZWJvYXJkUmliYm9uIC5uZXh0X2J1dHRvbiB7XG4gICAgcmlnaHQ6IDRweDtcbiAgfVxufVxuXG4vKiBPbGQgY2xhc3MgbmFtZSwgYnV0IEknbSBub3Qgc3VyZSBhbGwgdGhlIHBsYWNlcyBpdCdzIHJlbmRlcmVkICovXG4uYnJhY2tldC1jb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbn1cblxuLnRoZW1lLWJyYWNrZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQ6IGJvbGQgMTRweCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4udGhlbWUtYnJhY2tldC1yb3VuZCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1pbi13aWR0aDogMjMwcHg7XG4gIG1heC13aWR0aDogMzMwcHg7XG59XG5cbi50aGVtZS1icmFja2V0LXJvdW5kLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4udGhlbWUtYnJhY2tldC1ub2RlcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDFweCAwO1xufVxuXG4udGhlbWUtYnJhY2tldC1kZXB0aC0xIC50aGVtZS1icmFja2V0LW5vZGUsXG4udGhlbWUtYnJhY2tldC1kZXB0aC0xIC50aGVtZS1icmFja2V0LWdhcCB7XG4gIGxpbmUtaGVpZ2h0OiAxMzJweDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZGVwdGgtMiAudGhlbWUtYnJhY2tldC1ub2RlLFxuLnRoZW1lLWJyYWNrZXQtZGVwdGgtMiAudGhlbWUtYnJhY2tldC1nYXAge1xuICBsaW5lLWhlaWdodDogMjY0cHg7XG59XG5cbi50aGVtZS1icmFja2V0LWRlcHRoLTMgLnRoZW1lLWJyYWNrZXQtbm9kZSxcbi50aGVtZS1icmFja2V0LWRlcHRoLTMgLnRoZW1lLWJyYWNrZXQtZ2FwIHtcbiAgbGluZS1oZWlnaHQ6IDUyOHB4O1xufVxuXG4udGhlbWUtYnJhY2tldC1kZXB0aC00IC50aGVtZS1icmFja2V0LW5vZGUsXG4udGhlbWUtYnJhY2tldC1kZXB0aC00IC50aGVtZS1icmFja2V0LWdhcCB7XG4gIGxpbmUtaGVpZ2h0OiAxMDU2cHg7XG59XG5cbi50aGVtZS1icmFja2V0LWRlcHRoLTUgLnRoZW1lLWJyYWNrZXQtbm9kZSxcbi50aGVtZS1icmFja2V0LWRlcHRoLTUgLnRoZW1lLWJyYWNrZXQtZ2FwIHtcbiAgbGluZS1oZWlnaHQ6IDIxMTJweDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZGVwdGgtNiAudGhlbWUtYnJhY2tldC1ub2RlLFxuLnRoZW1lLWJyYWNrZXQtZGVwdGgtNiAudGhlbWUtYnJhY2tldC1nYXAge1xuICBsaW5lLWhlaWdodDogNDIyNHB4O1xufVxuXG4udGhlbWUtYnJhY2tldC1kZXB0aC03IC50aGVtZS1icmFja2V0LW5vZGUsXG4udGhlbWUtYnJhY2tldC1kZXB0aC03IC50aGVtZS1icmFja2V0LWdhcCB7XG4gIGxpbmUtaGVpZ2h0OiA4NDQ4cHg7XG59XG5cbi50aGVtZS1icmFja2V0LWRlcHRoLTggLnRoZW1lLWJyYWNrZXQtbm9kZSxcbi50aGVtZS1icmFja2V0LWRlcHRoLTggLnRoZW1lLWJyYWNrZXQtZ2FwIHtcbiAgbGluZS1oZWlnaHQ6IDE2ODk2cHg7XG59XG5cbi50aGVtZS1icmFja2V0LWRlcHRoLTkgLnRoZW1lLWJyYWNrZXQtbm9kZSxcbi50aGVtZS1icmFja2V0LWRlcHRoLTkgLnRoZW1lLWJyYWNrZXQtZ2FwIHtcbiAgbGluZS1oZWlnaHQ6IDMzNzkycHg7XG59XG5cbi50aGVtZS1icmFja2V0LW5vZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtbm9kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjVweDtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQztcbn1cblxuLnRoZW1lLWJyYWNrZXQtbm9kZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyM3B4O1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0NDO1xufVxuXG4udGhlbWUtYnJhY2tldC1ub2RlLXVwcGVyOmFmdGVyLFxuLnRoZW1lLWJyYWNrZXQtY29tcHJlc3NpYmxlIC50aGVtZS1icmFja2V0LW5vZGUtbG93ZXI6YWZ0ZXIge1xuICB0b3A6IDUwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0M7XG4gIGJvdHRvbTogMTlweDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtbm9kZS1sb3dlcjphZnRlcixcbi50aGVtZS1icmFja2V0LWNvbXByZXNzaWJsZSAudGhlbWUtYnJhY2tldC1ub2RlLXVwcGVyOmFmdGVyIHtcbiAgYm90dG9tOiA1MCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0NDO1xuICB0b3A6IDIxcHg7XG59XG5cbi50aGVtZS1icmFja2V0LWNvbXByZXNzaWJsZSAudGhlbWUtYnJhY2tldC1ub2RlLWxvd2VyOmFmdGVyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm90dG9tOiBhdXRvO1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbi50aGVtZS1icmFja2V0LWNvbXByZXNzaWJsZSAudGhlbWUtYnJhY2tldC1ub2RlLXVwcGVyOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdG9wOiBhdXRvO1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbi50aGVtZS1icmFja2V0LW5vZGUtbGVhZjpiZWZvcmUsXG4udGhlbWUtYnJhY2tldC1ub2RlLWxlYWY6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGhlbWUtYnJhY2tldC1nYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IC0xcHggMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQ6IGJvbGQgMTRweCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMTVweCAxNXB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbjtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZ2FtZTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFO1xufVxuXG4udGhlbWUtYnJhY2tldC1nYW1lOmhvdmVyIC50aGVtZS1icmFja2V0LXRlYW0tc2xvdCxcbi50aGVtZS1icmFja2V0LWdhbWU6aG92ZXIgLnRoZW1lLWJyYWNrZXQtdGVhbS1zbG90ID4gKiB7XG4gIGJvcmRlci1jb2xvcjogI0VFRTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW47XG59XG5cbi50aGVtZS1icmFja2V0LXRlYW0tc2xvdCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4udGhlbWUtYnJhY2tldC10ZWFtLXNsb3QgfiAudGhlbWUtYnJhY2tldC10ZWFtLXNsb3Qge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0NDQztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW47XG59XG5cbi50aGVtZS1icmFja2V0LXRlYW0tc2xvdCA+ICoge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0M7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluO1xufVxuXG4udGhlbWUtYnJhY2tldC10ZWFtLXNsb3Qud2lubmVyIC50aGVtZS1icmFja2V0LXRlYW0sXG4udGhlbWUtYnJhY2tldC10ZWFtLXNsb3Qud2lubmVyIC50aGVtZS1icmFja2V0LXNjb3JlLFxuLnRoZW1lLWJyYWNrZXQtdGVhbS1zbG90Lndpbm5lciAudGhlbWUtYnJhY2tldC10ZWFtLW5hbWUge1xuICBjb2xvcjogI0ZGRjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbn1cblxuLnRoZW1lLWJyYWNrZXQtdGVhbS1sb2dvIHtcbiAgd2lkdGg6IDMycHg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi50aGVtZS1icmFja2V0LXRlYW0tbG9nbyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYmFja2dyb3VuZDogI0RERDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtc2VlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuMmVtO1xuICBmb250OiBub3JtYWwgMTJweCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4udGhlbWUtYnJhY2tldC10ZWFtIHtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBhZGRpbmctbGVmdDogNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG59XG5cbi50aGVtZS1icmFja2V0LXRlYW0tbmFtZSB7XG4gIGNvbG9yOiAjMDA1NEE2O1xufVxuXG4udGJkLXRlYW0gLnRoZW1lLWJyYWNrZXQtdGVhbS1uYW1lIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi50aGVtZS1icmFja2V0LXNjb3JlIHtcbiAgd2lkdGg6IDJlbTtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZ2FtZS1kZXRhaWxzIHtcbiAgZm9udDogbm9ybWFsIDEycHggXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZ2FtZS1kZXRhaWxzID4gKiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgcGFkZGluZzogMCA2cHggMCAzMnB4O1xufVxuXG4udGhlbWUtYnJhY2tldC1nYW1lLWRldGFpbHMgPiAqOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtZ2FtZS1kZXRhaWxzID4gKjpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuICAudGhlbWUtYnJhY2tldCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnRoZW1lLWJyYWNrZXQtcm91bmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gIH1cbiAgLnRoZW1lLWJyYWNrZXQtcm91bmQgKyAudGhlbWUtYnJhY2tldC1yb3VuZCAudGhlbWUtYnJhY2tldC1yb3VuZC10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuICAudGhlbWUtYnJhY2tldC1ub2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRoZW1lLWJyYWNrZXQtbm9kZTpsYXN0LWNoaWxkIC50aGVtZS1icmFja2V0LWdhbWUge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRoZW1lLWJyYWNrZXQtZ2FtZSB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgfVxuICAudGhlbWUtYnJhY2tldC10ZWFtLXNsb3QsIC50aGVtZS1icmFja2V0LXRlYW0tc2xvdCA+ICoge1xuICAgIGJvcmRlci13aWR0aDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC50aGVtZS1icmFja2V0LW5vZGU6YmVmb3JlLFxuICAudGhlbWUtYnJhY2tldC1ub2RlOmFmdGVyLFxuICAudGhlbWUtYnJhY2tldC1nYXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyogQnJhY2tldCBTZWxlY3QgVGFnICovXG4uZGVzY2VuZGFudF9icmFja2V0IHtcbiAgbWFyZ2luOiAwIDE1cHggMTVweDtcbn1cblxuLyogVG9vbHRpcCAqL1xuLnByb3RvdGlwIC5kYXJrZ3JleSAuY29udGVudCBwIHtcbiAgY29sb3I6ICNjY2M7XG59XG5cbi8qIExpZ2h0Ym94ICovXG4jYnJhY2tldC1zZWVkLWxpc3QtY29udGFpbmVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDEwcHggMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbiNicmFja2V0LXRlYW1zLWNvbnRhaW5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDEwcHggMDtcbn1cblxuI3NlZWQtc3RhdHVzIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbiNzZWVkLXN0YXR1cyBiIHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuI2JyYWNrZXQtc2VlZC1saXN0LFxuI2JyYWNrZXQtdGVhbXMge1xuICBiYWNrZ3JvdW5kOiAjZmVmNGMwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmVmMWFmO1xuICBtYXJnaW46IDEwcHggMDtcbiAgcGFkZGluZzogMTBweDtcbiAgd2lkdGg6IDI1MHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4jYnJhY2tldC1zZWVkLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmVmNGMwO1xuICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAzNXB4O1xufVxuXG4jYnJhY2tldC10ZWFtcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbiNicmFja2V0LXNlZWQtbGlzdCBsaSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYnJhY2tldGluZy9saWdodGJveC10ZWFtLXNlbGVjdGVkLWJvdHRvbS5wbmdcIikgMCAxMDAlIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBtb3ZlO1xuICBtYXJnaW46IDAgMCAycHg7XG4gIHBhZGRpbmc6IDAgMCAzcHg7XG59XG5cbiNicmFja2V0LXNlZWQtbGlzdCBsaSBwIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9icmFja2V0aW5nL2xpZ2h0Ym94LXRlYW0tc2VsZWN0ZWQtdG9wLnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xuICBjb2xvcjogIzAwMDtcbn1cblxuI2JyYWNrZXQtdGVhbXMgbGkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvbGlnaHRib3gtdGVhbS1ib3R0b20ucG5nXCIpIDAgMTAwJSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogbW92ZTtcbiAgcGFkZGluZzogMCAwIDNweDtcbn1cblxuI2JyYWNrZXQtdGVhbXMgbGkgcCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYnJhY2tldGluZy9saWdodGJveC10ZWFtLXRvcC5wbmdcIikgMCAwIG5vLXJlcGVhdDtcbiAgY29sb3I6ICNhNTk1NGM7XG59XG5cbiNicmFja2V0LXNlZWQtbGlzdCBwLCAjYnJhY2tldC10ZWFtcyBwIHtcbiAgcGFkZGluZzogNXB4IDVweCAycHggMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbjogMXB4IDAgIWltcG9ydGFudDtcbn1cblxuLyogU2VlZCBMaW5rcyAqL1xuI2JyYWNrZXQtdGVhbXMgcCBhLnNlZWQsXG4jYnJhY2tldC1zZWVkLWxpc3QgYS51bnNlZWQge1xuICBjb2xvcjogI2JmYjI3YjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBwYWRkaW5nOiAwIDVweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuI2JyYWNrZXQtdGVhbXMgcCBhLnNlZWQ6aG92ZXIsXG4jYnJhY2tldC1zZWVkLWxpc3QgYS51bnNlZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmVmN2QwO1xuICBjb2xvcjogIzQwMzkxZDtcbn1cblxuI2JyYWNrZXQtc2VlZC1saXN0IGEuc2VlZCxcbiNicmFja2V0LXRlYW1zIHAgYS51bnNlZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuI2JyYWNrZXQtdGVhbXMgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvbGlnaHRib3gtdGVhbS1zZWxlY3RlZC1ib3R0b20ucG5nXCIpO1xufVxuXG4jYnJhY2tldC10ZWFtcyBsaTpob3ZlciBwIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9icmFja2V0aW5nL2xpZ2h0Ym94LXRlYW0tc2VsZWN0ZWQtdG9wLnBuZ1wiKTtcbn1cblxuLyogU2VlZCBTdGF0ZXMgKi9cbi5uZWVkc01vcmUgI3NlZWQtc3RhdHVzIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5uZWVkc01vcmUgI2JyYWNrZXQtc2VlZC1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZlZjRjMCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvYnJhY2tldC1saWdodGJveC1zZWVkLWJnLnBuZ1wiKSAxMDAlIDEwMCUgbm8tcmVwZWF0O1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbn1cblxuLnRvb011Y2ggI2JyYWNrZXQtc2VlZC1saXN0IHtcbiAgYmFja2dyb3VuZDogI2U3Yjc5NDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I5M2Q0MTtcbn1cblxuLnRvb011Y2ggI3NlZWQtc3RhdHVzLFxuLnRvb011Y2ggI3NlZWQtc3RhdHVzIGIge1xuICBjb2xvcjogI2EyMDAxMjtcbn1cblxuLnJlYWR5ICNicmFja2V0LXNlZWQtbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZWY5ZGM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzk5MzM7XG59XG5cbi5yZWFkeSAjc2VlZC1zdGF0dXMge1xuICBjb2xvcjogIzMzOTkzMztcbn1cblxuLyogUm9zdGVyICYgR2FtZSBDZW50ZXIgQnV0dG9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LXNsaWRlciB7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMHB4IDBweCAxNXB4IDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5pbm5lci13cmFwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDcwcHg7XG4gIC8qIFNsaWRlciBUcmFjayAqL1xufVxuXG4jc3BvcnQtc2xpZGVyIC5pbm5lci13cmFwICN0cmFjayB7XG4gIGJvdHRvbTogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5pbm5lci13cmFwICN0cmFjayAjaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODtcbiAgY3Vyc29yOiBtb3ZlO1xuICBoZWlnaHQ6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwcHg7XG4gIHotaW5kZXg6IDEwMDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG4uc3BvcnRzUGFnZSAucHJvdG90aXAge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNzY3JvbGxib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxJTtcbn1cblxuI3RyYWNrLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMHB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuI3RyYWNrLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTZweCAtMTBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4jdHJhY2stbGVmdCxcbiN0cmFjay1yaWdodCB7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDEwcHg7XG59XG5cbi8qIFNjcm9sbGFibGUgQ29udGFpbmVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc2Nyb2xsLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogNzBweDtcbn1cblxuI3Njcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogUGxheWVyL1Jvc3RlciBCdXR0b25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtc2xpZGVyIGxpIHtcbiAgbWFyZ2luOiAwIDAgMCAycHg7XG59XG5cbi8qIEdhbWUgQnV0dG9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LXNsaWRlciAubW9udGgge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21vbnRocy5naWZcIikgMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbjogMnB4IDJweCAwIDA7XG4gIHdpZHRoOiAxMHB4O1xuICB0ZXh0LWluZGVudDogLTk5OTk5OXB4O1xufVxuXG4vKiBNb250aHMgKi9cbiNzcG9ydC1zbGlkZXIgLm10aC1qYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbiNzcG9ydC1zbGlkZXIgLm10aC1mZWIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTBweCAwO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5tdGgtbWFyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggMDtcbn1cblxuI3Nwb3J0LXNsaWRlciAubXRoLWFwciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IDA7XG59XG5cbiNzcG9ydC1zbGlkZXIgLm10aC1tYXkge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAwO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5tdGgtanVuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggMDtcbn1cblxuI3Nwb3J0LXNsaWRlciAubXRoLWp1bCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IDA7XG59XG5cbiNzcG9ydC1zbGlkZXIgLm10aC1hdWcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzBweCAwO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5tdGgtc2VwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDtcbn1cblxuI3Nwb3J0LXNsaWRlciAubXRoLW9jdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05MHB4IDA7XG59XG5cbiNzcG9ydC1zbGlkZXIgLm10aC1ub3Yge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggMDtcbn1cblxuI3Nwb3J0LXNsaWRlciAubXRoLWRlYyB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTBweCAwO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5tdGgtdGJkIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IDA7XG59XG5cbiNzcG9ydC1zbGlkZXIgLmdhbWVzIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI3Nwb3J0LXNsaWRlciAuZ2FtZXMgbGkge1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5nYW1lcyBhIHtcbiAgcGFkZGluZzogM3B4IDRweCAzcHg7XG59XG5cbiNzcG9ydC1zbGlkZXIgLmdhbWVzIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jc3BvcnQtc2xpZGVyIC5nYW1lcyAuZGF5T2ZUaGVXZWVrIHtcbiAgZm9udDogbm9ybWFsIDhweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI3Nwb3J0LXNsaWRlciAuZ2FtZXMgLmRhdGUge1xuICBmb250OiBub3JtYWwgMThweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbn1cblxuI3Nwb3J0LXNsaWRlciAuZ2FtZXMgLm91dGNvbWUge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogUHJvdG90aXAgVG9vbHRpcHMgLSBHZW5lcmFsXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiN0b29sdGlwcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFRoaXMgZGl2IGlzIHdoZXJlIHRoZSB0b29sdGlwcyBhcmUgc3RvcmVkIGluIHRoZSBtYXJrdXAuIFByb3RvdGlwIGdyYWJzIHRoZW0gZnJvbSBoZXJlLCBhbmQgY2xvbmVzL2Rpc3BsYXlzIHRoZW0gaW4gdGhlIHJpZ2h0IHBsYWNlIHdoZW4geW91IGhvdmVyIG92ZXIgdGhlIHRyaWdnZXIgKi9cbi5wcm90b3RpcCAubmdpbiAudG9vbHRpcC1vdXRlciB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMyMHB4O1xufVxuXG4ucHJvdG90aXAgLm5naW4gLnRvb2x0aXAtb3V0ZXIgaDMge1xuICBiYWNrZ3JvdW5kOiAjMzYzNjM2IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdG9vbHRpcHMvaGVhZGVyQkcuZ2lmXCIpIDAgMCByZXBlYXQteDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ucHJvdG90aXAgLm5naW4gLnRvb2x0aXAtaW5uZXIge1xuICBoZWlnaHQ6IDk0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDIwMHB4O1xufVxuXG4ucHJvdG90aXAgLm5naW4gLm11bHRfZ2FtZXMge1xuICB3aWR0aDogMzUwcHg7XG59XG5cbi5wcm90b3RpcCAubmdpbiAucm9zdGVyVG9vbHRpcCB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLnByb3RvdGlwX1N0ZW1XcmFwcGVyIHtcbiAgbWFyZ2luOiA4cHggMCAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIFBsYXllciAqL1xuLnN0YXRzIHtcbiAgbWFyZ2luOiAwIDAgMTBweCA4NXB4O1xufVxuXG4uc3RhdHMgLnN0YXRzLW1ham9yIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDE1cHggNXB4IDBweCAxNXB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnN0YXRzIC5zdGF0cy1tYWpvcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLnN0YXRzIC5zdGF0cy1taW5vciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA1cHggMHB4IDBweCAwcHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBUb29sIHRpcCAqL1xuLnByb3RvdGlwIC5uZ2luIC50b29sdGlwLWlubmVyIC5zdGF0cyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogOTRweDtcbiAgdG9wOiAyNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm90b3RpcCAubmdpbiAudG9vbHRpcC1pbm5lciAuc3RhdHMgLnBvc2l0aW9uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90b29sdGlwcy9iaW8tZ3Jvb3ZlLnBuZ1wiKSA1MCUgMTAwJSBuby1yZXBlYXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgd2lkdGg6IDkwcHg7XG59XG5cbi5wcm90b3RpcCAubmdpbiAudG9vbHRpcC1pbm5lciAuc3RhdHMgLmJpbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDAgNXB4O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi8qIEdhbWUgU2NvcmUgKi9cbi5zY29yZS1ob21lIHtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Rvb2x0aXBzL3ZzLXIucG5nXCIpIDAlIDUwJSBuby1yZXBlYXQ7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDE2MHB4O1xufVxuXG4uc2NvcmUtYXdheSB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTYgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90b29sdGlwcy92cy1sLnBuZ1wiKSAxMDAlIDUwJSBuby1yZXBlYXQ7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTYwcHg7XG59XG5cbi5tdWx0X2dhbWVzIC5zY29yZS1hd2F5LCAubXVsdF9nYW1lcyAuc2NvcmUtaG9tZSB7XG4gIHdpZHRoOiAxNzVweDtcbn1cblxuLnNjb3JlLWF3YXkgLnNjb3JlLCAuc2NvcmUtaG9tZSAuc2NvcmUge1xuICBmb250OiBib2xkIDQ4cHggXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG59XG5cbi5wcm90b3RpcCAubmdpbiAuZ2FtZSAudG9vbHRpcC1pbm5lciB7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICB3aWR0aDogMzIwcHg7XG59XG5cbi5wcm90b3RpcCAubmdpbiAuZ2FtZSB7XG4gIHdpZHRoOiAzMjBweDtcbn1cblxuLnByb3RvdGlwIC5zY29yZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBUZWFtIE5hbWUgKi9cbi5zY29yZS1ob21lIC50ZWFtTmFtZSwgLnNjb3JlLWF3YXkgLnRlYW1OYW1lIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zY29yZS1ob21lIC50ZWFtTmFtZSB7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDE1cHg7XG59XG5cbi5zY29yZS1hd2F5IC50ZWFtTmFtZSB7XG4gIHBhZGRpbmc6IDAgMTVweCAwIDEwcHg7XG59XG5cbi5tdWx0X2dhbWVzIC50ZWFtTmFtZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzNXB4O1xufVxuXG4ubXVsdF9nYW1lcyAuc2NvcmUtYXdheSAudGVhbU5hbWUge1xuICBjb2xvcjogIzY2NjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMCAwIDJweCA1cHg7XG59XG5cbi5tdWx0X2dhbWVzIC5zY29yZS1ob21lIC50ZWFtTmFtZSB7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMCA1cHggMnB4IDA7XG59XG5cbi8qIEdhbWUgTGlzdGluZyAqL1xuLmdhbWUtbGlzdGluZyB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdG9vbHRpcHMvZ2FtZS1saXN0aW5nQkcuZ2lmXCIpIDAgMTAwJSByZXBlYXQteDtcbn1cblxuLmdhbWUtbGlzdGluZyAuc3BvcnQtY29sb3JzIHtcbiAgbWluLWhlaWdodDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4uZ2FtZS1saXN0aW5nIC5zY29yZS1ob21lIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy90b29sdGlwcy92cy1zbS1sdC1yLmdpZlwiKSAwIDVweCBuby1yZXBlYXQ7XG59XG5cbi5nYW1lLWxpc3RpbmcgLnNjb3JlLWF3YXkge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Rvb2x0aXBzL3ZzLXNtLWx0LWwuZ2lmXCIpIDEwMCUgNXB4IG5vLXJlcGVhdDtcbn1cblxuLmdhbWUtbGlzdGluZyAuc2NvcmUge1xuICBmb250OiBub3JtYWwgMjRweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmdhbWUtbGlzdGluZyAuc2NvcmUtaG9tZSAuc2NvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAgNzVweCAwIDA7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5nYW1lLWxpc3RpbmcgLnNjb3JlLWF3YXkgLnNjb3JlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMCA3NXB4O1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmdhbWUtbGlzdGluZyBwIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiM2IzYjM7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBQYWdlIFRpdGxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LWhlYWRlciAucGFnZVRpdGxlIHtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBtYXJnaW46IDAgMTVweDtcbiAgcGFkZGluZzogMjBweCAwIDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJvc3RlclBsYXllckluZm9FbGVtZW50IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDNweCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MDBweCkge1xuICAucm9zdGVyUGxheWVySW5mb0VsZW1lbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLnJvc3RlclBsYXllckluZm9FbGVtZW50IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzY2NiAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwMHB4KSB7XG4gIC5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCBoMyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4IC0gMjBweCk7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCBoMyBzbWFsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogLjI1ZW0gLjVlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NEE2O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnJvc3RlclBsYXllckluZm9FbGVtZW50IC5Sb3N0ZXJQbGF5ZXJJbmZvSW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC1oZWlnaHQ6IDI1MHB4O1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwMHB4KSB7XG4gIC5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCAuUm9zdGVyUGxheWVySW5mb0ltYWdlIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCB0YWJsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgLnJvc3RlclBsYXllckluZm9FbGVtZW50IHRhYmxlIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4IC0gMjBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQgdGgsXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQgdGQge1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCB0cjpub3QoOmZpcnN0LWNoaWxkKSB0aCxcbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudCB0cjpub3QoOmZpcnN0LWNoaWxkKSB0ZCB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQgdGgge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQgdGg6YWZ0ZXIge1xuICBjb250ZW50OiAnOic7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1zZWFyY2gsXG4ucm9zdGVyUGxheWVyVG9Db25uZWN0IHtcbiAgYmFja2dyb3VuZDogI2ZkZjRiYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZkZTY4NjtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgaW1nIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogNTBweDtcbiAgbWFyZ2luOiAwIDVweCAwIDA7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4ucm9zdGVyUGxheWVyVG9Db25uZWN0IGgyIHtcbiAgbWFyZ2luOiAwIDAgNXB4IDA7XG59XG5cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgaDMge1xuICBtYXJnaW46IDVweCAwO1xufVxuXG4jbGlnaHRib3hCb2R5IC5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucyBwIHtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9uLWhlYWRlciB7XG4gIHBhZGRpbmc6IDVweCAwIDA7XG59XG5cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9uLWhlYWRlciBpbWcge1xuICBtYXJnaW46IC01cHggMTBweCAwIDA7XG4gIGhlaWdodDogNzBweDtcbiAgd2lkdGg6IDcwcHg7XG59XG5cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIHtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAjZmRlNjg2O1xuICBtYXJnaW46IDEwcHggMCAtMTBweDtcbiAgcGFkZGluZzogMTBweCAwIDA7XG59XG5cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucyB7XG4gIGNsZWFyOiBib3RoO1xuICBsaW5lLWhlaWdodDogMThweDtcbn1cblxuLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIHAsXG4ucm9zdGVyUGxheWVyQ29ubmVjdGlvbnMgaDMge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIHAgc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4ucm9zdGVyUGxheWVyQ29ubmVjdGlvbnMgcCBpbWcge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4jcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtc2VhcmNoIGgzLFxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLXNlYXJjaC1yZXN1bHRzIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4jcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtc2VhcmNoLXJlc3VsdHMge1xuICBtYXJnaW46IDAgMTBweDtcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLXNlYXJjaC1yZXN1bHRzIGkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL21pbmlMb2FkZXIuZ2lmXCIpIDAgNTAlIG5vLXJlcGVhdDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQtdGVtcGxhdGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucm9zdGVyUGxheWVyQ29ubmVjdGlvbi1jaGVja2VkLCAucm9zdGVyUGxheWVyQ29ubmVjdGlvbi11bmNoZWNrZWQge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbjogMCA1cHggMCAwO1xuICBwYWRkaW5nOiAycHggM3B4O1xufVxuXG4ucm9zdGVyUGxheWVyQ29ubmVjdGlvbi1jaGVja2VkIHtcbiAgYmFja2dyb3VuZDogI2ZjZjBhYjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZkZTY4Njtcbn1cblxuLnJvc3RlclBsYXllckNvbm5lY3Rpb24tdW5jaGVja2VkIHtcbiAgYmFja2dyb3VuZDogI2ZiZTk4YjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZjY2QyMjtcbn1cblxuLmRlZmF1bHRQbGF5ZXJJbmZvIGgzIHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWJ1dHRvbiAudGVhbUxvZ28tdGlueSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1idXR0b24gaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWJ1dHRvbiBpOmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc3NztcbiAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250OiAxMnB4LzFlbSBGb250QXdlc29tZTtcbiAgcGFkZGluZzogNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1idXR0b24ucnBjLW9wZW4gaTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1kcm9wZG93biB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWRyb3Bkb3duID4gZGl2IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc3NztcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMXB4O1xufVxuXG4jcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtZHJvcGRvd24gaDMge1xuICBmb250OiBpbmhlcml0O1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMnB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWRyb3Bkb3duIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogNXB4IDAgMDtcbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWRyb3Bkb3duIC50ZWFtTG9nby10aW55IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gIC5kZWZhdWx0UGxheWVySW5mbyBoMyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gICNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1kcm9wZG93biB7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtZHJvcGRvd24gPiBkaXYge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleCgtNTAlKTtcbiAgfVxufVxuXG4vKiBHQU1FL1NIT1cgQ09OVEVOVCAqL1xuLyogRklFTEQgT0YgUExBWSAmIExJVkUgVklERU8gKi9cbiNMaXZlR2FtZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4jTGl2ZUdhbWUgLmJhY2tncm91bmQsXG4jTGl2ZUdhbWUgLmJhY2tncm91bmQgLmdyYXBoaWNzIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuZ3JhcGhpY3Mge1xuICBtaW4taGVpZ2h0OiA1MzVweDtcbn1cblxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kIC5ncmFwaGljcyAqIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNTAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwMHB4O1xufVxuXG4jTGl2ZUdhbWUgLmJhY2tncm91bmQgLnRvcCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb3BfYmdfdG9wLnBuZ1wiKSBjZW50ZXIgdG9wO1xuICBoZWlnaHQ6IDE1MHB4O1xufVxuXG4jTGl2ZUdhbWUgLmJhY2tncm91bmQgLm1pZCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb3BfYmdfbWlkLnBuZ1wiKSBjZW50ZXIgdG9wO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMTUwcHg7XG4gIGJvdHRvbTogMzg0cHg7XG59XG5cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuYm90dG9tIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ZvcF9iZ19ib3R0b20ucG5nXCIpIGNlbnRlciB0b3A7XG4gIGhlaWdodDogMzg0cHg7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG4jTGl2ZUdhbWUgLmJhY2tncm91bmQgLmF3YXlUZWFtRmFkZSB7XG4gIHdpZHRoOiA3MDBweDtcbn1cblxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kIC5ob21lVGVhbUZhZGUge1xuICB3aWR0aDogNzAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjAwcHg7XG59XG5cbi5nYW1lU2hvdyAjR1NfVmlkZW8ge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xufVxuXG4uZ2FtZVNob3cgI0dTX1ZpZGVvID4gaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4jR1NfVmlkZW8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xMHB4O1xuICBtYXJnaW46IDI1cHggMDtcbn1cblxuI2N1cnJlbnRQbGF5ICsgI0dTX1ZpZGVvIHtcbiAgdG9wOiAtMjVweDtcbn1cblxuI0dTX1ZpZGVvV3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyOiAxM3B4IG91dHNldCAjMjIyO1xuICAtbW96LWJvcmRlci1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L3ZpZGVvX2JvcmRlci5wbmdcIikgMzAgcmVwZWF0O1xuICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L3ZpZGVvX2JvcmRlci5wbmdcIikgMzAgcmVwZWF0O1xuICAtby1ib3JkZXItaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS92aWRlb19ib3JkZXIucG5nXCIpIDMwIHJlcGVhdDtcbiAgYm9yZGVyLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvdmlkZW9fYm9yZGVyLnBuZ1wiKSAzMCByZXBlYXQ7XG4gIGJveC1zaGFkb3c6IDAgMTVweCAzMHB4ICMwMDA7XG59XG5cbiNHYW1lTGl2ZVZpZGVvIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuI0dhbWVMaXZlVmlkZW8gb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBNQUlOIFNQT1JUIElEICovXG4jR2FtZVNob3dDb250ZW50IHtcbiAgbWFyZ2luOiAzMHB4IDE1cHggMTVweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnJhcGlkQ29udGVudEdlbmVyYWwsXG4jR2FtZVNob3dDb250ZW50ICNjb250ZW50VGFic0xvYWRlciB7XG4gIHdpZHRoOiA3MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC8qIE9sZCBicm93c2VycyAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGFiX21lbnUtbGlzdExvYWRlciB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50ICN0YWJfZ3MzX2dhbWVfc3RhdHNfY29udGVudC5yYXBpZENvbnRlbnRHZW5lcmFsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQubm9Db21tZW50cyAucmFwaWRDb250ZW50R2VuZXJhbCwgI0dhbWVTaG93Q29udGVudC5ub0NvbW1lbnRzICNjb250ZW50VGFic0xvYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHNwYW4udGVhbV9sb2dvIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qIFRPUCBMRVZFTCBTRUNUSU9OUyAqL1xuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9pbmZvIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogVEFCQkVEIE5BVklHQVRJT04gKi9cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYl9tZW51IHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA3MCU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwICNlZmVmZWY7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYl9tZW51ICNpc2NvcmVHYW1lIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuI2xpdmVHYW1lU2ltcGxlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI3Njb3Jla2VlcGVyR2FtZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgY29sb3I6ICNiYmI7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYl9tZW51ICNpc2NvcmVUaW1lc3RhbXAge1xuICBjb2xvcjogI2FhYTtcbn1cblxuLyogTUFJTiBHQU1FIERBVEEgQ09MVU1OICovXG4jR2FtZVNob3dDb250ZW50IHVsLnRhYl9tZW51LWxpc3Qge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI0dhbWVTaG93Q29udGVudCBsaS50YWJfbWVudS10YWIge1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VmZWZlZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI0dhbWVTaG93Q29udGVudCBsaS50YWJfbWVudS10YWIgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMnB4IDEwcHggOHB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICNFN0U3RTc7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgbGkudGFiX21lbnUtdGFiLnNlbGVjdGVkIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCBsaS50YWJfbWVudS10YWIgYTpob3ZlciB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBTSURFQkFSICovXG4uR2FtZVNob3dEYXRhQ29sdW1uIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiBib3g7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XG4gIGJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNzVweDtcbiAgYm90dG9tOiAyNXB4O1xuICByaWdodDogMDtcbiAgd2lkdGg6IDMwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uU2VjdGlvbiB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgZGlzcGxheTogYm94O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtbW96LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwO1xuICAtbW96LWJveC1mbGV4OiAxMDA7XG4gIGJveC1mbGV4OiAxMDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtbkhlYWRlciB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tb3otYm94LWZsZXg6IDA7XG4gIGJveC1mbGV4OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDFweDtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgLyogT2xkIGJyb3dzZXJzICovXG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbHVtbiAuZ2FtZVNob3dDb2x1bW5IZWFkZXIgaDMge1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW46IDA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbHVtbiAuZ2FtZVNob3dDb2x1bW5IZWFkZXIgaDMgLmFjdGlvbiB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uSGVhZGVyLmNvbGxhcHNhYmxlX2hhbmRsZSBoMyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdXNlci9leHBhbmRfYXJyb3dzLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTkycHggLTM5cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmctbGVmdDogMjRweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29sdW1uIC5jb2xsYXBzZWQgLmdhbWVTaG93Q29sdW1uSGVhZGVyLmNvbGxhcHNhYmxlX2hhbmRsZSBoMyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvdXNlci9leHBhbmRfYXJyb3dzLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MnB4IDExcHg7XG59XG5cbi5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uQ29udGVudCB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tb3otYm94LWZsZXg6IDE7XG4gIGJveC1mbGV4OiAxO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzI6IDAgNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLkdhbWVTaG93RGF0YUNvbHVtbiAuZ2FtZVNob3dDb2x1bW5TZWN0aW9uLm5ld3Mge1xuICBib3gtZmxleDogMDtcbiAgbWF4LWhlaWdodDogNTAlO1xufVxuXG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtblNlY3Rpb246Zmlyc3QtY2hpbGQgLmdhbWVTaG93Q29sdW1uSGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCA1cHggMCAwO1xufVxuXG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtblNlY3Rpb246bGFzdC1jaGlsZCAuZ2FtZVNob3dDb2x1bW5Db250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCAwO1xufVxuXG4vKiBNQUlOIENPTlRFTlQgQ09OVEFJTkVSUyAqL1xuLkdhbWVTaG93RGF0YUNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG59XG5cbi5HYW1lU2hvd0RhdGFDb250YWluZXIgLlN0YXRXaWRnZXRHcm91cCB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIC8qIE9sZCBicm93c2VycyAqL1xuICBtYXJnaW46IDAgMTBweCAxMHB4IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjU7XG59XG5cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyAuU3RhdFdpZGdldEdyb3VwIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyIC5TdGF0V2lkZ2V0R3JvdXAuaW5zZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAuU3RhdFdpZGdldEdyb3VwLmluc2V0LFxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgLlN0YXRXaWRnZXRHcm91cC5pbnNldCB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIC8qIE9sZCBicm93c2VycyAqL1xufVxuXG4uU3RhdFdpZGdldFRhYnNHcm91cCB7XG4gIG1hcmdpbjogLTEwcHggMjBweCAwIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4vKi8vLy8vLy8vLy8gTUFJTiBTVEFUIFdJREdFVCBDT05UQUlORVJTIC8vLy8vLy8vLy8qL1xuLlN0YXRXaWRnZXRDb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uU3RhdFdpZGdldENvbnRhaW5lci1zdWIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uU3RhdFdpZGdldENvbHVtbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLlN0YXRXaWRnZXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDIwcHggMjBweCAwO1xufVxuXG4uU3RhdFdpZGdldEhvbGRlciAuU3RhdFdpZGdldENvbnRhaW5lci1zdWIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qLy8vLy8vLy8vLyBJTkRJVklEVUFMIFNUQVQgV0lER0VUUyAoU1BPUlQgQUdOT1NUSUMpIC8vLy8vLy8vLy8qL1xuLnoxMCB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uejkge1xuICB6LWluZGV4OiA5O1xufVxuXG4uejgge1xuICB6LWluZGV4OiA4O1xufVxuXG4uejcge1xuICB6LWluZGV4OiA3O1xufVxuXG4uejYge1xuICB6LWluZGV4OiA2O1xufVxuXG4uejUge1xuICB6LWluZGV4OiA1O1xufVxuXG4uejQge1xuICB6LWluZGV4OiA0O1xufVxuXG4uejMge1xuICB6LWluZGV4OiAzO1xufVxuXG4uejIge1xuICB6LWluZGV4OiAyO1xufVxuXG4uejEge1xuICB6LWluZGV4OiAxO1xufVxuXG4ud2lkdGgyNSB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi53aWR0aDMzIHtcbiAgd2lkdGg6IDMzLjMzMzMzMyU7XG59XG5cbi53aWR0aDUwIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLndpZHRoNjYge1xuICB3aWR0aDogNjYuNjY2NjY2JTtcbn1cblxuLndpZHRoNzUge1xuICB3aWR0aDogNzUlO1xufVxuXG4ud2lkdGgxMDAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldEhvbGRlciBwLm5vRW50cnksXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0IHNwYW4ubm9fc3RhdHMge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGVhbV9zdGF0cy1saXN0IC5ub0VudHJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvZGlhZ29uYWxfc3RyaXBlcy5wbmdcIik7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQge1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xuICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIG1hcmdpbjogMCAyMHB4IDAgMDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0LnRhYnMtMSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBTZXRzIHRhYiB3aWR0aCBmb3IgMS1saXN0IGl0ZW0gKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQudGFicy0yIGxpIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLyogU2V0cyB0YWIgd2lkdGggZm9yIDItbGlzdCBpdGVtcyAqL1xuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldC50YWJzLTMgbGkge1xuICB3aWR0aDogMzMuMzMzMzMzJTtcbn1cblxuLyogU2V0cyB0YWIgd2lkdGggZm9yIDMtbGlzdCBpdGVtcyAqL1xuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBhOmxpbmssXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZGRkO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGE6aG92ZXIsXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGE6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGk6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG4gIGNvbG9yOiAjY2NjO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQuc3RhdHNfdG9nZ2xlIGxpIHtcbiAgY29sb3I6ICNkZGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldC5zdGF0c190b2dnbGUgbGk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaSB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGkuc2VsZWN0ZWQsXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0VGFic0dyb3VwLWluc2V0IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpOmhvdmVyLFxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXNoYWRvdzogLTFweCAtMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGkuc2VsZWN0ZWQgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0VGFic0dyb3VwLWluc2V0IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9ib3JkZXItYmxhY2sucG5nXCIpLCB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL2JvcmRlci13aGl0ZS5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQsIGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaTpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvYm9yZGVyLWJsYWNrLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaTpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9ib3JkZXItd2hpdGUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XG59XG5cbi5TdGF0V2lkZ2V0VGFicy1pbnNldCAuY2Fycm90IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpLnNlbGVjdGVkIC5jYXJyb3Qge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL2NhcnJvdC11cC5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSBib3R0b207XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDM4cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaSB7XG4gIGJhY2tncm91bmQ6ICNiMmIyYjI7XG4gIGJvcmRlci1yYWRpdXM6IDVweCAwcHggMHB4IDBweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiAjNjY2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwIDAgMDtcbiAgcGFkZGluZzogMCAwIDAgMjBweDtcbiAgdGV4dC1zaGFkb3c6IC0xcHggLTFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBoZWlnaHQ6IDNlbTtcbiAgbGluZS1oZWlnaHQ6IDNlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIGxpIGgzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIGxpIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogNDNweDtcbiAgbGVmdDogMTAwJTtcbiAgd2lkdGg6IDY5cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtN3B4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3RhYi1lZGdlLXJpZ2h0LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbngtI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaTpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3RhYi1lZGdlLXJpZ2h0LWdyYXkucG5nXCIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogLTdweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaS5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkubW9yZV9zdGF0cyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG9wYWNpdHk6IC41O1xuICBmaWx0ZXI6IEFscGhhKG9wYWNpdHk9NTApO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggd2hpdGU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkubW9yZV9zdGF0czpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIGxpLmxpdmVfZ2FtZV9zaGVldCB7XG4gIGJhY2tncm91bmQ6ICNjY2NjY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICM4OTg5ODk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZTVlNWU1O1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICBvcGFjaXR5OiAxO1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjNjY2NjY2O1xuICBib3JkZXItdG9wOiBpbml0aWFsO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzMzMzMzMztcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHdoaXRlO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkubGl2ZV9nYW1lX3NoZWV0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogIzQyNDI0MjtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIENPTUJJTkUgVEhFU0UgLW1pbmkgU1RZTEVTIFdJVEggUkVHVUxBUiBTVFlMRVMgV0hFUkUgUE9TU0lCTEUgKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSBsaSB7XG4gIGJhY2tncm91bmQ6ICNiMmIyYjI7XG4gIGJvcmRlci1yYWRpdXM6IDVweCAwcHggMHB4IDBweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiAjNjY2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgcGFkZGluZzogMCAwIDAgMWVtO1xuICB0ZXh0LXNoYWRvdzogLTFweCAtMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGhlaWdodDogMi41ZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLW1pbmkgbGk6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy90YWItZWRnZS1yaWdodC1ncmF5LnBuZ1wiKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IC03cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSBsaS5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSBsaS5zZWxlY3RlZDpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3RhYi1lZGdlLXJpZ2h0LnBuZ1wiKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IC03cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSBsaS5tb3JlX3N0YXRzIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgb3BhY2l0eTogLjU7XG4gIGZpbHRlcjogQWxwaGEob3BhY2l0eT01MCk7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDBweCB3aGl0ZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1taW5pIGxpLm1vcmVfc3RhdHM6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLyogUExBWUVSIFNUQVQgV0lER0VUIC0gTEVBREVSICovXG4uU3RhdFdpZGdldC5wbGF5ZXJfc3RhdC1sZWFkZXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM0NDQ7XG4gIG1hcmdpbjogMCAzMHB4IDAgMTBweDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLlN0YXRXaWRnZXQucGxheWVyX3N0YXQtbGVhZGVyLWhlYWRlciBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnNwYW4ucGxheWVyX3N0YXQtbGVhZGVyLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnBsYXllcl9zdGF0LWxlYWRlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIGRpdiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTA1cHg7XG4gIGhlaWdodDogMTA1cHg7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHNwYW4ucGxheWVyX3Bob3RvX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyOiAzcHggc29saWQgI2YwZjBmMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfcGhvdG8gc3Bhbi5wbGF5ZXJfcGhvdG9faW1hZ2UgaW1nLnBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDUlO1xuICBtYXJnaW46IC0yJSAwIDAgLTIlO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfcGhvdG8gc3Bhbi5wbGF5ZXJfcGhvdG9faW1hZ2UgaW1nLmxhbmRzY2FwZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAtOTk5OXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfcGhvdG8gc3Bhbi5wbGF5ZXJfcGhvdG9faW1hZ2Uge1xuICBsaW5lLWhlaWdodDogNThweDtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRib3gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgNXB4IDExMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIGhlaWdodDogNjAlO1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDcwcHg7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0Ym94IHNwYW4uc3RhdGJveF9jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBoZWlnaHQ6IDQwJTtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0Ym94IHNwYW4uc3RhdGJveF9jYXRlZ29yeSBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRib3ggc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgdWwge1xuICBmb250LXNpemU6IDEycHg7XG4gIGhlaWdodDogMzBweDtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciB1bCBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWluZGVudDogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX25vIHtcbiAgY2xlYXI6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWluZGVudDogLTRweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4ucGxheWVyU3RhdExlYWRlckVsZW1lbnQgLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX25hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzAwNTRBNjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1heC1oZWlnaHQ6IDMwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IC5wbGF5ZXJfc3RhdC1sZWFkZXIgdWwgbGkucGxheWVyX25hbWUge1xuICBtYXgtd2lkdGg6IDE4NXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIHVsIGxpLnBsYXllcl9uYW1lIHtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX25hbWUge1xuICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfbmFtZSB7XG4gIG1heC13aWR0aDogMTgwcHg7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB7XG4gIGNsZWFyOiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEgdWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB1bDpiZWZvcmUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAuODc1ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBoZWlnaHQ6IDU2cHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IDA7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB1bCBsaSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNTAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsIGxpIHNwYW4uc3RhdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYS5zdGF0XzUgdWwgbGkge1xuICB3aWR0aDogMjAlO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEuc3RhdF80IHVsIGxpIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhLnN0YXRfMyB1bCBsaSB7XG4gIHdpZHRoOiAzMy4zMzMzMzMlO1xufVxuXG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEuc3RhdF8yIHVsIGxpIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCB7XG4gIGhlaWdodDogNjBweDtcbiAgbWFyZ2luOiAwIDAgMTBweCA3MHB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfc3RhdCB7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgaGVpZ2h0OiA1MCU7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfY2F0ZWdvcnkge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGhlaWdodDogNTAlO1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciB1bCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGhlaWdodDogMzBweDtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciB1bCBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWluZGVudDogNXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfbm8ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCA1MCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IC01cHg7XG4gIHdpZHRoOiAzNXB4O1xufVxuXG4vKiBURUFNIFNUQVQgV0lER0VUIC0gQ09NUEFSSVNPTiAqL1xuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldENvbnRhaW5lci50ZWFtX3N0YXQtY29tcGFyaXNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvdmVydGljYWxfZGl2aWRlci5wbmdcIikgcmVwZWF0LXkgNTAlIDUwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuaG9tZVRlYW0sICNHYW1lU2hvd0NvbnRlbnQgLmF3YXlUZWFtIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdF9jYXRlZ29yeSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRlYW1fc3RhdC1jb21wYXJpc29uIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IC50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdC1iYXJfZ3JhcGgge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSxcbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9zdGF0X2NvbXBhcmlzb24tc2hpbmUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXgtd2lkdGg6IDk4JTtcbiAgbWluLXdpZHRoOiAyJTtcbn1cblxuI3RhYl9nczNfZ2FtZV9zdW1tYXJ5X2NvbnRlbnQgLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0sXG4jdGFiX2dzM19nYW1lX3N1bW1hcnlfY29udGVudCAudGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7XG4gIG1heC13aWR0aDogODglO1xuICBtaW4td2lkdGg6IDEyJTtcbn1cblxuI3RhYl9nczNfcGxheWVyX3N0YXRzX2NvbnRlbnQgLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlciAudGVhbUxvZ28tdGlueSB7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0ge1xuICBib3JkZXItcmFkaXVzOiA1cHggMHB4IDBweCA1cHg7XG59XG5cbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHtcbiAgYm9yZGVyLXJhZGl1czogMHB4IDVweCA1cHggMHB4O1xufVxuXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXRfdG90YWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXRfdG90YWxzOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXRfdG90YWxzIGgyIHtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbn1cblxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0gc3BhbiBpbWcsXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSBzcGFuIGltZyB7XG4gIHBhZGRpbmc6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiBpbWcge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnZlcnRpY2FsX2dyYXBoLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnZlcnRpY2FsX2dyYXBoLWNhdGVnb3J5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnZlcnRpY2FsX2dyYXBoLWNhdGVnb3J5IGgzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC52ZXJ0aWNhbF9ncmFwaC1zaW5nbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnZlcnRpY2FsX2dyYXBoLWJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4vKiBQTEFZRVIgU1RBVCBXSURHRVQgLSBMSVNUICovXG4jR2FtZVNob3dDb250ZW50IC50YWJsZV9jb250YWluZXIgdGFibGUgdGhlYWQgdGgge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiAwIDVweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGFibGVfY29udGFpbmVyIHRhYmxlIHRkLnBsYXllcl9uYW1lIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGFibGVfY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweCAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSAudGFibGVfY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIDIwcHggMjBweCAwO1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSAuU3RhdFdpZGdldENvbHVtbiAuU3RhdFdpZGdldEhvbGRlciB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIuYXdheVRlYW0sICNHYW1lU2hvd0NvbnRlbnQgdWwucGxheWVyX3N0YXRzLWxpc3QtaGVhZGVyLmhvbWVUZWFtIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMzMzM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIuYXdheVRlYW0gbGkgaDMsICNHYW1lU2hvd0NvbnRlbnQgdWwucGxheWVyX3N0YXRzLWxpc3QtaGVhZGVyLmhvbWVUZWFtIGxpIGgzIHtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgbGkgaDIge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnJpZ2h0LWNvbHVtbi1hZC1jb250ZW50IHVsLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlciBsaSBoMiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLyogVEVBTSBTVEFUIFdJREdFVCAtIExJU1QgKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0LWhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGNvbG9yOiAjZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QtaGVhZGVyIGxpIGgzIHtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QtaGVhZGVyIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QtaGVhZGVyIGxpLnRlYW1fbG9nbyB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkudGVhbV9sb2dvIHNwYW4ge1xuICBwYWRkaW5nOiA3cHggMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QtaGVhZGVyIGxpLnRlYW1fbG9nbyBzcGFuIGEge1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3Qge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmMGYwZjA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHBhZGRpbmc6IDhweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IHNwYW4udGVhbV9sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSBzcGFuIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHNwYW4ge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IHNwYW4udGVhbV9sb2dvIGEge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0X2NhdGVnb3J5IHtcbiAgd2lkdGg6IDMzLjMlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHNwYW4gYSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkudGVhbV9zdGF0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMy4zJTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuI0dhbWVTaG93Q29udGVudCBzcGFuLnRzMSxcbiNHYW1lU2hvd0NvbnRlbnQgc3Bhbi50czIge1xuICBmb250LXNpemU6IC42NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdF9jYXRlZ29yeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAxMHB4O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDMwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHtcbiAgd2lkdGg6IDQwJTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHNwYW4gaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdCxcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkudGVhbV9sb2dvIHtcbiAgd2lkdGg6IDE1JTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHNwYW4ge1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnRlYW1fc3RhdC1jb21wYXJpc29uIC5TdGF0V2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgc3Bhbi50czEsXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSBzcGFuLnRzMiB7XG4gIGNsZWFyOiBsZWZ0O1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdF9jYXRlZ29yeSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGgge1xuICBjbGVhcjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmF3YXlUZWFtLFxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCBzcGFuIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSBzcGFuIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiA1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdCB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgd2lkdGg6IDc1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czEge1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkudGVhbV9zdGF0LnRzMiB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czEgc3BhbixcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czIgc3BhbiB7XG4gIGhlaWdodDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSxcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7XG4gIGhlaWdodDogMzBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggc3BhbiBhIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmF3YXlUZWFtIHNwYW4ge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuc3RhdC1iYXJfZ3JhcGggZGl2LmF3YXlUZWFtIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9zdGF0X2NvbXBhcmlzb24tc2hpbmUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDVweCAwcHggMHB4IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAzNSU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnN0YXQtYmFyX2dyYXBoIGRpdi5ob21lVGVhbSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDBweCA1cHggNXB4IDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiA2NSU7XG59XG5cbi8qIEdBTUUgREVUQUlMUyAqL1xuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldENvbnRhaW5lci5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBjb2xvcjogIzk5OTtcbiAgbWFyZ2luOiAwO1xuICAvKiBwYWRkaW5nOiAxMHB4IDAgMTBweCAyMHB4OyAqL1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1Yi5oZWFkZXIge1xuICBtYXJnaW46IDAgMCAtMTVweCAwO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTk5O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwYWRkaW5nOiAuMjVlbSAwO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBsaSBoMyB7XG4gIHBhZGRpbmc6IC41ZW0gMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5nYW1lX2RldGFpbHMgbGkuc3ViY2F0ZWdvcnkge1xuICB0ZXh0LWluZGVudDogMS4yNWVtO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBhLFxuI0dhbWVTaG93Q29udGVudCB1bC5nYW1lX2RldGFpbHMgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICNjY2M7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5nYW1lX2RldGFpbHMgYTpob3ZlcixcbiNHYW1lU2hvd0NvbnRlbnQgdWwuZ2FtZV9kZXRhaWxzIGE6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyLmdhbWVfZGV0YWlscy5oZWFkZXIge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIHRleHQtaW5kZW50OiAyMHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyIGxpLnBsYXlfZGV0YWlscy5hd2F5IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkucGxheV9kZXRhaWxzLmhvbWUge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkudGVhbV9zY29yZS5ob21lIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldENvbnRhaW5lciBsaS50ZWFtX3Njb3JlLmF3YXkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkuc2hvb3V0b3V0X3RvdGFsIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgd2lkdGg6IDU1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldENvbnRhaW5lciBsaS5zaG9vdXRvdXRfdG90YWwuYXdheSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyogR0FNRSBQUkVWSUVXIFNQRUNJRklDIFNUWUxFUyAqL1xuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0Q29udGFpbmVyIHtcbiAgcGFkZGluZzogMTBweCAwIDAgMTBweDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1YiB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1Yi5oYXNfdGVhbV93aWRnZXRzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNjYuNiU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1YiAuU3RhdFdpZGdldENvbHVtbi53aWR0aDUwIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0IHtcbiAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xufVxuXG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1jb2x1bW4gLlN0YXRXaWRnZXRHcm91cCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5jYXJyb3QuZG93biB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAyNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgLlN0YXRXaWRnZXRIb2xkZXIgLlN0YXRXaWRnZXQuZ2FtZV9wcmV2aWV3IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyBzcGFuLnRlYW1fbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IHVsLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvc2NvcmluZ19zdW1tYXJ5LXNoaW5lLnBuZ1wiKSByZXBlYXQteCA1MCUgNTAlO1xufVxuXG4vKiBHQU1FIFNUQVRTIFNQRUNJRklDIFNUWUxFUyAqL1xuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIC50ZWFtX3N0YXRzLWxpc3QtaGVhZGVyIHNwYW4udGVhbV9sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyAucGxheWVyX3N0YXRzLWxpc3QtaGVhZGVyIHNwYW4udGVhbV9sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIuc3ViIHNwYW4udGVhbV9sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5wbGF5ZXJfc3RhdHMgLnRhYmxlX2NvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIucGxheWVyX3N0YXRzIC5jYXJyb3Qge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL2NhcnJvdC1wbGF5ZXJfc3RhdHNfbGlzdC1oZWFkZXIucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMjRweDtcbn1cblxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5wbGF5ZXJfc3RhdHMgLnBsYXllcl9zdGF0c19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLnBsYXllcl9zdGF0cyB0YWJsZS5wbGF5ZXJfc3RhdHMtbGlzdCBzb3J0YWJsZSB0aCB7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgLnBsYXllcl9zdGF0cyAuY2F0ZWdvcnlfc2VwYXJhdG9yIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9wbGF5ZXJfc3RhdC1zZXBhcmF0b3IucG5nXCIpIHJlcGVhdC14O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1YiAuU3RhdFdpZGdldENvbnRhaW5lcjpsYXN0LWNoaWxkIC5jYXRlZ29yeV9zZXBhcmF0b3Ige1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4vKiBTQ09SSU5HIFNVTU1BUlkgKi9cbi5nYW1lX2JveHNjb3JlID4gaDM6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0QztcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IGxpIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZzogM3B4IDFweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSBsaSBsaTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogNnB4O1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3csXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5zY29yaW5nX2luZm8ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3c6YWZ0ZXIsXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5zY29yaW5nX2luZm86YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3cge1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3cgbGk6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTMwcHgpO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3cgbGk6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5zY29yaW5nX2luZm8ge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4uZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5nYW1lX2Nsb2NrIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICB3aWR0aDogNTVweDtcbn1cblxuLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSAudGVhbV9uYW1lIHtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTI1cHg7XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkgLnNjb3JlX3R5cGUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IDM1cHg7XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkgLnBsYXlfZGV0YWlscyB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzNDVweCk7XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkgLnBsYXlfZGV0YWlsczpmaXJzdC1jaGlsZCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMzBweCk7XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkgLnRlYW1fc2NvcmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogNjVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU2OHB4KSB7XG4gIC5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkgLnRlYW1fbmFtZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIyMHB4KTtcbiAgfVxuICAuZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5wbGF5X2RldGFpbHMge1xuICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5zY29yaW5nX2luZm8gLnRlYW1fc2NvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNjVweDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSAuc2NvcmluZ19pbmZvIC50ZWFtX3Njb3JlOmxhc3QtY2hpbGQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNDBweCkge1xuICAuZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC5pbnRlcnZhbF9yb3cgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XG4gIH1cbiAgLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSAuc2NvcmluZ19pbmZvIC50ZWFtX3Njb3JlIHtcbiAgICByaWdodDogNTVweDtcbiAgfVxuICAuZ2FtZV9ib3hzY29yZSAuc2NvcmluZ19zdW1tYXJ5IC50ZWFtX25hbWUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxOTNweCk7XG4gIH1cbiAgLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSAuc2NvcmVfdHlwZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6IDI4cHg7XG4gIH1cbiAgLmdhbWVfYm94c2NvcmUgLnNjb3Jpbmdfc3VtbWFyeSAudGVhbV9zY29yZSB7XG4gICAgd2lkdGg6IDU1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nYW1lX2JveHNjb3JlIC5TdGF0V2lkZ2V0Q29sdW1uIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5nYW1lX2JveHNjb3JlIC5TdGF0V2lkZ2V0Q29sdW1uOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gIH1cbiAgLmdhbWVfYm94c2NvcmUgLlN0YXRXaWRnZXRDb2x1bW46bnRoLW9mLXR5cGUoM24rMikge1xuICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICB9XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zcGFjZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiBHQUxMRVJJRVMgKi9cbiNnYW1lR2FsbGVyeUhlYWRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDMlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RERDtcbn1cblxuI2dhbWVHYWxsZXJ5SGVhZGVyIC5jb3VudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgY29sb3I6ICM5OTk7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xufVxuXG4jZ2FtZUdhbGxlcnlIZWFkZXIgLmJ1dHRvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbiNnYW1lR2FsbGVyeUhlYWRlciAudG9vbF9wYWdpbmF0aW9uIHtcbiAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbGxlcnlJdGVtTGlzdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0JCQjtcbiAgbWluLWhlaWdodDogMzI0cHg7XG59XG5cbi8qIEdBTUUgU0hPVyBORVhUIEdFTiBTVFlMRVMgKi9cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4ge1xuICBtYXJnaW46IDA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLmV4dHJhX2dhbWVfZGV0YWlscyB7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5saXN0X29mZmljaWFscyB7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5leHRyYV9nYW1lX2RldGFpbHMgLnBhZ2VFbGVtZW50IHtcbiAgbWFyZ2luOiAwIDE1cHggMTVweCAxNXB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5saXN0X29mZmljaWFscyAucGFnZUVsZW1lbnQge1xuICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI2dhbWVfZGV0YWlscyB7XG4gIHBhZGRpbmc6IDBweCAwcHggMTBweCAwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI2dhbWVfZGV0YWlscyB1bCB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjZ2FtZV9kZXRhaWxzIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLmdhbWVfYm94c2NvcmUgaDMge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuICNnYW1lX2RldGFpbHMgaDMge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuICNnYW1lVG90YWwgLmV2ZW4gdGQsICNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLmdhbWVfZGV0YWlscyAuZXZlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI2dhbWVUb3RhbCAub2RkIHRkLCAjR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5nYW1lX2RldGFpbHMgLm9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI2dhbWVUb3RhbCAuc3RhdF90YWJsZSB0ZCB7XG4gIHdpZHRoOiA3MHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC50YWJfbWVudSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5saXZlX2dhbWVfc2hlZXQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiA1cHggMDtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAuc3BvcnQtdG9vbHMge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5yYXBpZENvbnRlbnRHZW5lcmFsLFxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjY29udGVudFRhYnNMb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiB1bC50YWJfbWVudS1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI3JhcGlkVGFicyB7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAuR2FtZVNob3dEYXRhQ29udGFpbmVyIHtcbiAgcGFkZGluZzogMjBweCAxMHB4IDAgMTBweDtcbn1cblxuI3RhYl9uZXh0Z2VuX2NvbW1lbnRzX2NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbHVtbiB7XG4gIHBvc2l0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbiN0YWJfbmV4dGdlbl9jb21tZW50c19jb250ZW50IC5HYW1lU2hvd0RhdGFDb2x1bW4gLmNvbW1lbnRTdHJlYW1Db250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xufVxuXG4uZ2FtZV9oZWFkZXJfdjIge1xuICBtYXJnaW46IDAgMTVweDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5nYW1lX2hlYWRlcl92MiAuYXdheSwgLmdhbWVfaGVhZGVyX3YyIC5ob21lIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FtZV9oZWFkZXJfdjIgLmF3YXkge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5nYW1lX2hlYWRlcl92MiAuaG9tZSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5nYW1lX2hlYWRlcl92MiBoMywgLmdhbWVfaGVhZGVyX3YyIC50ZWFtX2xvZ28ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmdhbWVfaGVhZGVyX3YyIGgzIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbi5nYW1lX2hlYWRlcl92MiAuc2NvcmUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGVhbUhlYWRsaW5lIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRlYW1IZWFkbGluZSAudGVhbV9sb2dvIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAubGluZV9zY29yZV92MiAudGVhbSB7XG4gIHdpZHRoOiAyNTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuc3RhdF90YWJsZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnN0YXRfdGFibGUgdGQge1xuICB3aWR0aDogNTZweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuc3RhdF90YWJsZSAub2RkIHRkIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuc3RhdF90YWJsZSAudG90YWxzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQubmV4dGdlbiB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50Lm5leHRnZW4gI3JhcGlkVGFicyB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuU3RhdFdpZGdldENvbHVtbjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gIH1cbiAgLlN0YXRXaWRnZXRDb2x1bW46bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICB9XG4gIC5TdGF0V2lkZ2V0Q29sdW1uOm50aC1vZi10eXBlKGV2ZW4pIC5wbGF5ZXJfc3RhdHMtbGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuI0dhbWVTaG93U2NvcmVib2FyZFNpbXBsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNHYW1lU2hvd1Njb3JlYm9hcmRTaW1wbGUgLmdhbWVfaW5mb19iYXJfdjIge1xuICBib3R0b206IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd1Njb3JlYm9hcmRTaW1wbGUgLnN0YXRfdGFibGUgLnRlYW0ge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmdhbWVfaW5mb19iYXJfdjIge1xuICBmb250OiA2MDAgMTJweC8xNHB4IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xufVxuXG4uZ2FtZV9pbmZvX2Jhcl92MiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZ2FtZV9pbmZvX2Jhcl92MiBsaSArIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAuNWVtO1xufVxuXG4uZ2FtZV9pbmZvX2Jhcl92MiAuZGF0ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5nYW1lX2luZm9fYmFyX3YyIC5zdGF0dXMge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiBTaW1wbGVyIFNjb3JlYm9hcmQgKi9cbiNHYW1lU2hvd0NvbnRlbnQgc3Bhbi5waXRjaGVyX3JlY29yZF9zdGF0cyB7XG4gIGNvbG9yOiAjRkYwMDAwO1xufVxuXG4vKiBHYW1lIE5vdGVzICovXG4uZ2FtZVNob3cgI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoMSB7XG4gIGZvbnQtc2l6ZTogMzJweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoMiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoMyB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoNCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoNSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoNiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE1MCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgdWwsICNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgb2wge1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgbGkge1xuICBsaXN0LXN0eWxlOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMTUwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgYmxvY2txdW90ZSB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjY2NjO1xufVxuXG4jR2FtZVNob3dDb250ZW50IC5nYW1lX25vdGVzIGhyIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG59XG5cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIuZ2FtZV9wcmV2aWV3LWhlYWRlciAuU3RhdFdpZGdldENvbnRhaW5lci1zdWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIuZ2FtZV9wcmV2aWV3LWhlYWRlciAuU3RhdFdpZGdldENvbnRhaW5lci1zdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGJvdHRvbTogN3B4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNDklO1xufVxuXG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1oZWFkZXIgLlN0YXRXaWRnZXRDb250YWluZXItc3ViOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGJvdHRvbTogN3B4O1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQ5JTtcbn1cblxuLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vIFNDT1JFQk9BUkQgLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8qL1xuLyogRklFTEQgUE9TSVRJT04gKi9cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCBsaS5kb3duIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2xpLWRvd24ucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICB3aWR0aDogMThweDtcbn1cblxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLnRvZ28ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvbGktdG9nby5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgbGkuYmFsbG9uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2xpLWJhbGxvbi5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICB3aWR0aDogMzBweDtcbn1cblxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLmRkLXN0YXJ0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2RkLXN0YXJ0LnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgd2lkdGg6IDIwcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCBsaS5kZC1lbmQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvZGQtZW5kLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgd2lkdGg6IDIycHg7XG59XG5cbi8qIFBPU1NFU1NJT04gKi9cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAuYXdheV90ZWFtIC5wb3NzZXNzaW9uLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC02MXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLmhvbWVfdGVhbSAucG9zc2Vzc2lvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IC02MXB4O1xufVxuXG4vKiBUSU1FIE9VVFMgKi9cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2JnLXRpbWVvdXRzLWF3YXkucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA1OHB4O1xuICBsZWZ0OiAxNTBweDtcbiAgd2lkdGg6IDE0OHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC9iZy10aW1lb3V0cy1ob21lLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNThweDtcbiAgcmlnaHQ6IDE1MHB4O1xuICB3aWR0aDogMTQ4cHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC0xcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxlZnQ6IDIycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMXB4O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAtMTAwcHggLTFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNTBweDtcbiAgcmlnaHQ6IC0yNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTFweDtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLnplcm8ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC0xcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcuemVybyB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IC0xMDBweCAtMXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLm9uZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IDAgLTUxcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcub25lIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgLTEwMHB4IC01MXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLnR3byB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IDAgLTEwMXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nLnR3byB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IC0xMDBweCAtMTAxcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcudGhyZWUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC0xNTBweDtcbn1cblxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUgLnRpbWVvdXRzLXJlbWFpbmluZy50aHJlZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IC0xMDBweCAtMTUwcHg7XG59XG5cbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vIFBMQVkgQlkgUExBWSAvLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWZpbHRlcnMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDogNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA1cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiA1cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDVweCA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LXN0YXJ0X3BlcmlvZCB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNjY2NjY2MsIDAlLCAjZTVlNWU1IDEwMCUpO1xuICAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgI2NjY2NjYyksIGNvbG9yLXN0b3AoMTAwJSwgI2U1ZTVlNSkpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjY2NjY2NjIDAlLCAjZTVlNWU1IDEwMCUpO1xuICAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjY2NjY2NjIDAlLCAjZTVlNWU1IDEwMCUpO1xuICAvKiBPcGVyYTExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2NjY2NjYyAwJSwgI2U1ZTVlNSAxMDAlKTtcbiAgLyogSUUxMCsgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgI2NjY2NjYyAwJSwgI2U1ZTVlNSAxMDAlKTtcbiAgLyogVzNDICovXG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4IDVweCAwcHggMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweCA1cHggMHB4IDBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwcHggMHB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBsYXlfYnlfcGxheS1jYXJyb3Qge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL2NhcnJvdC1wZXJpb2Qtc3RhcnQucG5nXCIpIG5vLXJlcGVhdCA1MCUgdG9wO1xuICBjbGVhcjogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNXB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWZpbHRlcnMgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogM2VtO1xuICBsaW5lLWhlaWdodDogM2VtO1xuICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1maWx0ZXJzIGxpLnNpbmdsZV9wbGF5ZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdGFibGUucGxheV9ieV9wbGF5IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdGFibGUucGxheV9ieV9wbGF5IHRoIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdGFibGUucGxheV9ieV9wbGF5IHRkIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjY2M7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgcGFkZGluZzogNXB4IDJweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB0YWJsZS5wbGF5X2J5X3BsYXkgdHIucG9zc2Vzc2lvblN0YXJ0IHRkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuI0dhbWVTaG93Q29udGVudCB0YWJsZS5wbGF5X2J5X3BsYXkgdHIuY29sdW1uSGVhZGVycyB0aCB7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAwIDJweDtcbn1cblxudGFibGUucGxheV9ieV9wbGF5IC5wbGF5LWljb24ge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG50YWJsZS5wbGF5X2J5X3BsYXkgLnBsYXktZG93bkFuZERpc3RhbmNlLFxudGFibGUucGxheV9ieV9wbGF5IC5wbGF5LWJhbGxPbixcbnRhYmxlLnBsYXlfYnlfcGxheSAucGxheS1nYW1lQ2xvY2sge1xuICB3aWR0aDogNTVweDtcbn1cblxudGFibGUucGxheV9ieV9wbGF5IC5wbGF5LXBsYXlEZXRhaWxzIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbnRhYmxlLnBsYXlfYnlfcGxheSB0ci50b3VjaGRvd24gLnBsYXktaWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheV9pY29uLXRkLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbn1cblxudGFibGUucGxheV9ieV9wbGF5IHRyLm1hZGVfZmllbGRfZ29hbCAucGxheS1pY29uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9wbGF5X2ljb24tZmcucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xufVxuXG50YWJsZS5wbGF5X2J5X3BsYXkgdHIuY29udmVyc2lvbl9zdWNjZXNzIC5wbGF5LWljb24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3BsYXlfaWNvbi0ycC5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG59XG5cbnRhYmxlLnBsYXlfYnlfcGxheSB0ci5zYWZldHkgLnBsYXktaWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheV9pY29uLXNmLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbn1cblxudGFibGUucGxheV9ieV9wbGF5IHRyLmV4dHJhX3BvaW50X21hZGUgLnBsYXktaWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheV9pY29uLXhwLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5X2J5X3BsYXktZHJpdmUtaGVhZGVyIHtcbiAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1kcml2ZS1oZWFkZXIgbGkge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWRyaXZlLWhlYWRlciBsaS5kcml2ZS1zdGFydCxcbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWRyaXZlLWhlYWRlciBsaS5kcml2ZS1zdW1tYXJ5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9wbGF5X2J5X3BsYXktYXJyb3cucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDUwJTtcbiAgdGV4dC1pbmRlbnQ6IDRweDtcbn1cblxuLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8gRklFTEQgT0YgUExBWSAvLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8qL1xuYm9keS5mb290YmFsbCAjRk9QIHtcbiAgcGFkZGluZzogNTBweCAxNnB4IDA7XG4gIG1hcmdpbjogLTUwcHggMCAwO1xuICBoZWlnaHQ6IDQyNXB4O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgMzIlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCgxMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSksIGNvbG9yLXN0b3AoMzIlLCByZ2JhKDAsIDAsIDAsIDAuMikpLCBjb2xvci1zdG9wKDEwMCUsIHRyYW5zcGFyZW50KSk7XG4gIC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgMzIlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgdHJhbnNwYXJlbnQgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSAzMiUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAvKiBPcGVyYTExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgdHJhbnNwYXJlbnQgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSAzMiUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAvKiBJRTEwKyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcbiAgLyogSUU2LTkgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgdHJhbnNwYXJlbnQgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSAzMiUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAvKiBXM0MgKi9cbiAgei1pbmRleDogMTAwO1xuICBjbGVhcjogYm90aDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5maWVsZCB7XG4gIHBhZGRpbmc6IDAgOC4yJTtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgYmFja2dyb3VuZDogIzA2MDtcbiAgYm9yZGVyOiA2cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjY5OTIxOSkgMHB4IDZweCA4cHggLTRweDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjY5OTIxOSkgMHB4IDZweCA4cHggLTRweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuaW5fYm91bmRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5saW5lX29mX3NjcmltbWFnZSxcbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZmlyc3RfZG93bl9saW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0xMDAwcHg7XG4gIHdpZHRoOiAzcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzRCRjtcbiAgei1pbmRleDogMztcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZmlyc3RfZG93bl9saW5lIHtcbiAgYmFja2dyb3VuZDogI0ZDMDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5ncmFzcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG59XG5cbi8qIFlhcmQgTGluZXMgKi9cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpIHtcbiAgb3BhY2l0eTogLjc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5fNXlkIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkZGO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpOm50aC1jaGlsZCgxMG4rNikge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGRkY7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgd2lkdGg6IDUlO1xuICB6LWluZGV4OiAxO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl81eWQgc3BhbiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRjtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQ6IGJvbGQgMTZweCBcIkFyaWFsIEJsYWNrXCIsc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0MCU7XG4gIGJvdHRvbTogNDAlO1xuICBoZWlnaHQ6IDIwJTtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gIHdpZHRoOiAzcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl81eWQgc3BhbiBzcGFuIHtcbiAgYm9yZGVyOiBub25lO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogLTE3MCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHRleHQtaW5kZW50OiAtMTJweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5fNXlkIHNwYW4gc3BhbiArIHNwYW4ge1xuICB0b3A6IC0xNzAlO1xuICBib3R0b206IGF1dG87XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl8xeWQsXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl8xeWQgc3BhbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGhlaWdodDogMjAlO1xuICB0b3A6IDQwJTtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRkZGO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl8xeWQgc3BhbiB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0yMDAlO1xuICBib3R0b206IC0yMDAlO1xuICBtYXJnaW46IC0xcHggMCAxcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkuZmlyc3Qgc3BhbiBzcGFuIHtcbiAgdGV4dC1pbmRlbnQ6IDJweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLmZpcnN0IHNwYW4gc3BhbiArIHNwYW4ge1xuICB0ZXh0LWluZGVudDogLTEycHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkubGFzdCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKiBHICovXG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLmxhc3Qgc3BhbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtaW5kZW50OiAtMTVweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5sYXN0IHNwYW4gc3BhbiArIHNwYW4ge1xuICB0ZXh0LWluZGVudDogNXB4O1xufVxuXG4vKiBFbmQgWm9uZSAqL1xuYm9keS5mb290YmFsbCAjRk9QIC5lbmR6b25lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA4LjMzMyU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLmVuZHpvbmUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZW5kem9uZSBzcGFuIHtcbiAgZm9udDogYm9sZCAzMHB4IFwiQXJpYWwgQmxhY2tcIixWZXJkYW5hLHNhbnMtc2VyaWY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyp0b3A6NTAlOyovXG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICAvKm1hcmdpbjotMjVweCAwIDAgLTIwMHB4OyovXG4gIG1hcmdpbjogMCAwIDAgLTI1cHg7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBjb2xvcjogI0ZGRjtcbiAgd2lkdGg6IDQwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMTc1cHgsIDE3NXB4KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDE3NXB4LCAxNzVweCk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSgxNzVweCwgMTc1cHgpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDE3NXB4LCAxNzVweCk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDE3NXB4LCAxNzVweCk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MSk7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZW5kem9uZTpmaXJzdC1jaGlsZCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLmVuZHpvbmU6Zmlyc3QtY2hpbGQgc3BhbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKC0xNzVweCwgLTE3NXB4KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtMTc1cHgsIC0xNzVweCk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoLTE3NXB4LCAtMTc1cHgpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtMTc1cHgsIC0xNzVweCk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcgdHJhbnNsYXRlKC0xNzVweCwgLTE3NXB4KSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249Myk7XG59XG5cbi8qLy8vLy8vLyBQbGF5IFN0cmluZyAvLy8vLy8vLy8vKi9cbmJvZHkuZm9vdGJhbGwgI0ZPUCAucGxheVN0cmluZ0NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAyMzBweDtcbiAgcGFkZGluZzogMCA1MHB4IDIwcHg7XG4gIGhlaWdodDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTY1cHg7XG4gIG9wYWNpdHk6IC42O1xuICB6LWluZGV4OiA1O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZm9vdGJhbGwvZmllbGRfb2ZfcGxheV9uYXYucG5nXCIpIDAgLTE1MHB4IG5vLXJlcGVhdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAucGxheVN0cmluZ0NvbnRhaW5lcjpob3ZlcixcbmJvZHkuZm9vdGJhbGwgI0ZPUC52aWV3XzNkIC5wbGF5U3RyaW5nQ29udGFpbmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5wbGF5U3RyaW5nIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjb2xvcjogI0RERDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nOiA1cHggMDtcbn1cblxuLyovLy8vLy8vLy8vIFBMQVkgTkFWSUdBVElPTiBCVVRUT05TIC8vLy8vLy8vLy8qL1xuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMge1xuICB6LWluZGV4OiA1O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjVweDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNDAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjAwcHg7XG4gIG9wYWNpdHk6IC42O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDUwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKDUwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSksIGNvbG9yLXN0b3AoMTAwJSwgdHJhbnNwYXJlbnQpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDUwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSA1MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAvKiBPcGVyYTExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDUwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDAwMDAnLCBlbmRDb2xvcnN0cj0nIzAwMDAwMDAwJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQobGVmdCwgdHJhbnNwYXJlbnQgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgNTAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogVzNDICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9uczpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjUGxheU5hdmlnYXRpb25CdXR0b25zIGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMCAtOHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZm9vdGJhbGwvZmllbGRfb2ZfcGxheV9uYXYucG5nXCIpIDAgMTAwMHB4IG5vLXJlcGVhdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZEcml2ZSB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dERyaXZlIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtMTBweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZQbGF5IHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IC01cHg7XG4gIHotaW5kZXg6IDI7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjUGxheU5hdmlnYXRpb25CdXR0b25zIC5uZXh0UGxheSB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTgwcHggLTVweDtcbiAgei1pbmRleDogMjtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLmxhdGVzdFBsYXkge1xuICBwYWRkaW5nLXRvcDogNzBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IDA7XG4gIG1hcmdpbjogMCAtMTJweDtcbiAgei1pbmRleDogMztcbn1cblxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZEcml2ZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dERyaXZlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtODBweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZQbGF5OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IC03NXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dFBsYXk6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MHB4IC03NXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubGF0ZXN0UGxheTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTcwcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRk9QYnV0dG9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA3MHB4O1xuICByaWdodDogMjBweDtcbiAgb3BhY2l0eTogLjQ7XG4gIHotaW5kZXg6IDU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZPUGJ1dHRvbnMgZGl2IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2Zvb3RiYWxsL2ZpZWxkX29mX3BsYXlfbmF2LnBuZ1wiKSAwIDEwMDBweCBuby1yZXBlYXQ7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRk9QYnV0dG9uczpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRk9QYnV0dG9ucyAudmlld1RvZ2dsZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDBweCAtMnB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZPUGJ1dHRvbnMgLnZpZXdUb2dnbGU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMHB4IC0zNnB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZpZWxkT2ZQbGF5LnZpZXdfM2QgI0ZPUGJ1dHRvbnMgLnZpZXdUb2dnbGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzAwcHggLTcwcHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRmllbGRPZlBsYXkudmlld18zZCAjRk9QYnV0dG9ucyAudmlld1RvZ2dsZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzAwcHggLTEwNHB4O1xufVxuXG4vKi8vLy8vLy8vLy8vIERSSVZFUyAvLy8vLy8vLy8vLyovXG5ib2R5LmZvb3RiYWxsICNGT1AgI0RyaXZlc0NvbnRhaW5lciB7XG4gIHotaW5kZXg6IDQ7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgI0RyaXZlcyB7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiA0MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyovLy8vLy8vLy8vIElORElWSURVQUwgUExBWSBMRU5HVEhTIC8vLy8vLy8vLy8qL1xuYm9keS5mb290YmFsbCAjRk9QIC55ZHMwIHtcbiAgd2lkdGg6IDAlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczEge1xuICB3aWR0aDogMSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMiB7XG4gIHdpZHRoOiAyJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMzIHtcbiAgd2lkdGg6IDMlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczQge1xuICB3aWR0aDogNCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNSB7XG4gIHdpZHRoOiA1JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM2IHtcbiAgd2lkdGg6IDYlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczcge1xuICB3aWR0aDogNyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzOCB7XG4gIHdpZHRoOiA4JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM5IHtcbiAgd2lkdGg6IDklO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczEwIHtcbiAgd2lkdGg6IDEwJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMxMSB7XG4gIHdpZHRoOiAxMSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMTIge1xuICB3aWR0aDogMTIlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczEzIHtcbiAgd2lkdGg6IDEzJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMxNCB7XG4gIHdpZHRoOiAxNCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMTUge1xuICB3aWR0aDogMTUlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczE2IHtcbiAgd2lkdGg6IDE2JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMxNyB7XG4gIHdpZHRoOiAxNyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMTgge1xuICB3aWR0aDogMTglO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczE5IHtcbiAgd2lkdGg6IDE5JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMyMCB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMjEge1xuICB3aWR0aDogMjElO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczIyIHtcbiAgd2lkdGg6IDIyJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMyMyB7XG4gIHdpZHRoOiAyMyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMjQge1xuICB3aWR0aDogMjQlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczI1IHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMyNiB7XG4gIHdpZHRoOiAyNiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMjcge1xuICB3aWR0aDogMjclO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczI4IHtcbiAgd2lkdGg6IDI4JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMyOSB7XG4gIHdpZHRoOiAyOSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMzAge1xuICB3aWR0aDogMzAlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczMxIHtcbiAgd2lkdGg6IDMxJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMzMiB7XG4gIHdpZHRoOiAzMiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMzMge1xuICB3aWR0aDogMzMlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczM0IHtcbiAgd2lkdGg6IDM0JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMzNSB7XG4gIHdpZHRoOiAzNSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMzYge1xuICB3aWR0aDogMzYlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczM3IHtcbiAgd2lkdGg6IDM3JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHMzOCB7XG4gIHdpZHRoOiAzOCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzMzkge1xuICB3aWR0aDogMzklO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczQwIHtcbiAgd2lkdGg6IDQwJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM0MSB7XG4gIHdpZHRoOiA0MSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNDIge1xuICB3aWR0aDogNDIlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczQzIHtcbiAgd2lkdGg6IDQzJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM0NCB7XG4gIHdpZHRoOiA0NCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNDUge1xuICB3aWR0aDogNDUlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczQ2IHtcbiAgd2lkdGg6IDQ2JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM0NyB7XG4gIHdpZHRoOiA0NyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNDgge1xuICB3aWR0aDogNDglO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczQ5IHtcbiAgd2lkdGg6IDQ5JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM1MCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNTEge1xuICB3aWR0aDogNTElO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczUyIHtcbiAgd2lkdGg6IDUyJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM1MyB7XG4gIHdpZHRoOiA1MyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNTQge1xuICB3aWR0aDogNTQlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczU1IHtcbiAgd2lkdGg6IDU1JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM1NiB7XG4gIHdpZHRoOiA1NiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNTcge1xuICB3aWR0aDogNTclO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczU4IHtcbiAgd2lkdGg6IDU4JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM1OSB7XG4gIHdpZHRoOiA1OSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNjAge1xuICB3aWR0aDogNjAlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczYxIHtcbiAgd2lkdGg6IDYxJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM2MiB7XG4gIHdpZHRoOiA2MiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNjMge1xuICB3aWR0aDogNjMlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczY0IHtcbiAgd2lkdGg6IDY0JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM2NSB7XG4gIHdpZHRoOiA2NSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNjYge1xuICB3aWR0aDogNjYlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczY3IHtcbiAgd2lkdGg6IDY3JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM2OCB7XG4gIHdpZHRoOiA2OCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNjkge1xuICB3aWR0aDogNjklO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczcwIHtcbiAgd2lkdGg6IDcwJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM3MSB7XG4gIHdpZHRoOiA3MSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNzIge1xuICB3aWR0aDogNzIlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczczIHtcbiAgd2lkdGg6IDczJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM3NCB7XG4gIHdpZHRoOiA3NCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNzUge1xuICB3aWR0aDogNzUlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczc2IHtcbiAgd2lkdGg6IDc2JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM3NyB7XG4gIHdpZHRoOiA3NyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzNzgge1xuICB3aWR0aDogNzglO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczc5IHtcbiAgd2lkdGg6IDc5JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM4MCB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzODEge1xuICB3aWR0aDogODElO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczgyIHtcbiAgd2lkdGg6IDgyJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM4MyB7XG4gIHdpZHRoOiA4MyU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzODQge1xuICB3aWR0aDogODQlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczg1IHtcbiAgd2lkdGg6IDg1JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM4NiB7XG4gIHdpZHRoOiA4NiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzODcge1xuICB3aWR0aDogODclO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczg4IHtcbiAgd2lkdGg6IDg4JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM4OSB7XG4gIHdpZHRoOiA4OSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzOTAge1xuICB3aWR0aDogOTAlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczkxIHtcbiAgd2lkdGg6IDkxJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM5MiB7XG4gIHdpZHRoOiA5MiU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzOTMge1xuICB3aWR0aDogOTMlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczk0IHtcbiAgd2lkdGg6IDk0JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM5NSB7XG4gIHdpZHRoOiA5NSU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzOTYge1xuICB3aWR0aDogOTYlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczk3IHtcbiAgd2lkdGg6IDk3JTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC55ZHM5OCB7XG4gIHdpZHRoOiA5OCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAueWRzOTkge1xuICB3aWR0aDogOTklO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnlkczEwMCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKi8vLy8vLy8vLy8gVEVBTSBDT0xPUlMgLy8vLy8vLy8vLyovXG4uaG9tZVRlYW0sXG4uYXdheVRlYW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xufVxuXG4vKi8vLy8vLy8vLy8gRFJJVkUgQkFSUyBha2EgR1JPVVAgT0YgUExBWVMgLy8vLy8vLy8vLyovXG5ib2R5LmZvb3RiYWxsICNGT1AgLmRyaXZlQ29udGFpbmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDEwcHggOC4yJTtcbiAgd2lkdGg6IDgzLjYlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDNweCAwO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnBsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTVweDtcbiAgbWFyZ2luOiAzcHggMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5kcml2ZUJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3V0aWxzL2JsYWNrLTMwLnBuZ1wiKTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBwYWRkaW5nOiA5OTk5cHggMzBweDtcbiAgbWFyZ2luOiAtOTk5OXB4IC0zMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuY3VycmVudCAuZHJpdmVCYXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTEwMDAycHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuY3VycmVudCAuZHJpdmVCYXIgKiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuY3VycmVudCAuZHJpdmVCYXIgLnRlYW1sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZHJpdmVCYXIgLmJhcixcbmJvZHkuZm9vdGJhbGwgI0ZPUCAucGxheSAuYmFyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMjkyOTY5KSAwcHggMXB4IDZweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDBweCAtMnB4IDEwcHggLTZweCBpbnNldDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMjkyOTY5KSAwcHggMXB4IDZweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDBweCAtMnB4IDEwcHggLTZweCBpbnNldDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjI5Mjk2OSkgMHB4IDFweCA2cHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwcHggLTJweCAxMHB4IC02cHggaW5zZXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5wbGF5LmN1cnJlbnQgLmJhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb290YmFsbC9wbGF5X2Jhci5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIC8qIGZpcnN0IHR3byBydWxlcyBhcmUgZm9yIElFIDctOSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDUxJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkpLCBjb2xvci1zdG9wKDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpKSwgY29sb3Itc3RvcCg1MSUsIHJnYmEoMCwgMCwgMCwgMC4yKSksIGNvbG9yLXN0b3AoMTAwJSwgdHJhbnNwYXJlbnQpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgNTElLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgNTElLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogT3BlcmExMS4xMCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDUxJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDUxJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIFczQyAqL1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KSAwcHggMnB4IDEwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwcHggLTJweCAxMHB4IDJweCBpbnNldDtcbiAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikgMHB4IDJweCAxMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMHB4IC0ycHggMTBweCAycHggaW5zZXQ7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KSAwcHggMnB4IDEwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwcHggLTJweCAxMHB4IDJweCBpbnNldDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAzMDBtcyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAzMDBtcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBsaW5lYXI7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCBkaXYucGxheSBkaXYuaWNvbl9yaWdodCB7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZHJpdmViYXIvYXJyb3ctcmlnaHQucG5nXCIpIG5vLXJlcGVhdCByaWdodCB0b3A7XG4gIGxlZnQ6IDEwMCU7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCBkaXYuZHJpdmVCYXIgZGl2Lmljb25fcmlnaHQge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9kcml2ZWJhci9hcnJvdy1yaWdodC5wbmdcIikgbm8tcmVwZWF0O1xuICByaWdodDogMTVweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIGRpdi5wbGF5IGRpdi5pY29uX2xlZnQge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9kcml2ZWJhci9hcnJvdy1sZWZ0LnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgdG9wO1xuICBsZWZ0OiAtMTVweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIGRpdi5kcml2ZUJhciBkaXYuaWNvbl9sZWZ0IHtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZHJpdmViYXIvYXJyb3ctbGVmdC5wbmdcIikgbm8tcmVwZWF0O1xuICBsZWZ0OiAxOHB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnRlYW1sb2dvIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDk5OTlweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC50ZWFtbG9nby5hd2F5VGVhbSB7XG4gIGxlZnQ6IDVweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC50ZWFtbG9nby5ob21lVGVhbSB7XG4gIHJpZ2h0OiA1cHg7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZHJpdmVDb250YWluZXIuY3VycmVudC5leHBhbmRlZCBkaXYucGxheSxcbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZHJpdmVDb250YWluZXIuY3VycmVudC5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi8vLy8vLy8vLy8gUEVSU1BFQ1RJVkUgLy8vLy8vLy8vLy8vKi9cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuZm9vdGJhbGwgI0ZPUC52aWV3XzNkIC5maWVsZCB7XG4gIC8qIHJpZ2h0IG5vdywgb25seSB3ZWJraXQgc3VwcG9ydHMgM2QgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDYwMCkgcm90YXRlWCgzNWRlZykgdHJhbnNsYXRlM2QoMCwgLTEwMnB4LCAtODBweCk7XG4gIC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg2MDApIHJvdGF0ZVgoMzVkZWcpIHRyYW5zbGF0ZTNkKDAsIC0xMDJweCwgLTgwcHgpO1xuICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDYwMCkgcm90YXRlWCgzNWRlZykgdHJhbnNsYXRlM2QoMCwgLTEwMnB4LCAtODBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDYwMCkgcm90YXRlWCgzNWRlZykgdHJhbnNsYXRlM2QoMCwgLTEwMnB4LCAtODBweCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNjAwKSByb3RhdGVYKDM1ZGVnKSB0cmFuc2xhdGUzZCgwLCAtMTAycHgsIC04MHB4KTtcbn1cblxuLyogV2UgbmVlZCB0byB0ZW1wb3JhcmlseSByZW1vdmUgM2QgdHJhbnNmb3JtcyB3aGVuIGNhbGN1bGF0aW5nIHBvc2l0aW9uaW5nIGZvciBzY3JvbGxpbmcgKi9cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuZm9vdGJhbGwgI0ZPUCAubm9UcmFuc2Zvcm0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmZvb3RiYWxsICNGT1AgLm5vVHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLW8tdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJlbW92ZSB3aGVuIGN1cnJlbnQgcGxheSBpcyByZWFkeSAqL1xuYm9keS5ob2NrZXlpc2ggI0ZPUCAuY3VycmVudF9wbGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheV9hcmVhIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QLnZpZXdfM2QgLnBsYXlfYXJlYSB7XG4gIG1hcmdpbi10b3A6IC04MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJlbW92ZSB3aGVuIFBvd2VyIFBsYXlzIHN0YXR1cyBpcyBpbXBsZW1lbnRlZCAqL1xuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAucG9zc2Vzc2lvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vIFNDT1JFQk9BUkQgLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cbi8qIFNIT1RTIE9OIEdPQUwgKi9cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgbGkuc29nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2xpLXNvZy5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIG1hcmdpbjogMCAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLnNvZyBzcGFuIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLnNvZyBkaXYuc29nIHtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCBsaS5zb2cgZGl2LmxvZ28tbWluaSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIG1hcmdpbjogNXB4O1xufVxuXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLnNvZyBkaXYubG9nby1taW5pIGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTZweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLyogUE9TU0VTU0lPTiAvIFBPV0VSIFBMQVkgKi9cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLmF3YXlfdGVhbSAucG9zZXNzaW9uIC5wcCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgbm8tcmVwZWF0IDUwJSA1MCU7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLmhvbWVfdGVhbSAucG9zZXNzaW9uIC5wcCB7XG4gIGJhY2tncm91bmQ6IG5vbmUgbm8tcmVwZWF0IDUwJSA1MCU7XG59XG5cbi8qIFRJTUUgT1VUUyAqL1xuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL2JnLXRpbWVvdXRzLWF3YXkucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDc2cHg7XG4gIGxlZnQ6IDExMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwcHg7XG4gIHdpZHRoOiAxNjRweDtcbiAgei1pbmRleDogMTEzO1xufVxuXG4vKiBTd2l0Y2ggdG8gZGlzcGxheTpibG9jayB3aGVuIGltcGxlbWVudGVkICovXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvYmctdGltZW91dHMtaG9tZS5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogNzZweDtcbiAgcmlnaHQ6IDExMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwcHg7XG4gIHdpZHRoOiAxNjRweDtcbiAgei1pbmRleDogMTEzO1xufVxuXG4vKiBTd2l0Y2ggdG8gZGlzcGxheTpibG9jayB3aGVuIGltcGxlbWVudGVkICovXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0F3YXkgLnRpbWVvdXRzLXJlbWFpbmluZyB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy1ob2NrZXkucG5nXCIpIG5vLXJlcGVhdCAyNXB4IC0xcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxlZnQ6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAyM3B4O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IC03NXB4IC0xcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHJpZ2h0OiAtMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDIzcHg7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcuemVybyB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy1ob2NrZXkucG5nXCIpIG5vLXJlcGVhdCAyNXB4IC0xcHg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nLnplcm8ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMtaG9ja2V5LnBuZ1wiKSBuby1yZXBlYXQgLTc1cHggLTFweDtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcub25lIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IDI1cHggLTUxcHg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nLm9uZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy1ob2NrZXkucG5nXCIpIG5vLXJlcGVhdCAtNzVweCAtNTFweDtcbn1cblxuLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8gRklFTEQgT0YgUExBWSAvLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8qL1xuLyovLy8vLy8vLy8vIFRJTUVMSU5FIFNMSURFUiAvLy8vLy8vLy8vLy8qL1xuI0ZPUC10aW1lbGluZS1jb250YWluZXIge1xuICBoZWlnaHQ6IDExMHB4O1xuICBtYXJnaW46IC02MHB4IC0yNXB4IDcwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNjhweDtcbiAgei1pbmRleDogMTAxO1xufVxuXG4jRk9QLXRpbWVsaW5lIHtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICMwMDA7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjNjY2O1xuICBoZWlnaHQ6IDZweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogOHB4O1xuICBtYXJnaW46IDZweCAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2hvY2tleWlzaC9zbGlkZXItaGFuZGxlLnBuZ1wiKSBuby1yZXBlYXQgNTAlIGJvdHRvbTtcbiAgYm90dG9tOiAtNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzNXB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMzBweDtcbiAgei1pbmRleDogMTA7XG59XG5cbiNGT1AtdGltZWxpbmUgLnVpLXNsaWRlci1oYW5kbGUubGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbn1cblxuI0ZPUC10aW1lbGluZSAudWktc3RhdGUtZm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiAjNmM2MDJkO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItcGF0dGVybiB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9ob2NrZXlpc2gvc2xpZGVyLXBhdHRlcm4ucG5nXCIpIHJlcGVhdC14IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItcGF0dGVybjpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaG9ja2V5aXNoL3NsaWRlci1ncm9vdmVzLnBuZ1wiKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0zcHg7XG4gIGxlZnQ6IC03MHB4O1xufVxuXG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItcGF0dGVybjphZnRlciB7XG4gIGNvbnRlbnQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9ob2NrZXlpc2gvc2xpZGVyLWdyb292ZXMucG5nXCIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTNweDtcbiAgcmlnaHQ6IC03MHB4O1xufVxuXG4jRk9QLXRpbWVsaW5lIC5pbnRlcnZhbCB7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9ob2NrZXlpc2gvaW50ZXJ2YWwtZGl2aWRlci5wbmdcIikgbm8tcmVwZWF0IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMyU7XG4gIHRvcDogLTFweDtcbiAgei1pbmRleDogNTtcbn1cblxuLyovIFRpbWUgTWFya2VycyAvKi9cbiNGT1AtdGltZWxpbmUtc3RhcnQsXG4jRk9QLXRpbWVsaW5lLXN0b3Age1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IC0zMHB4O1xuICB3aWR0aDogMzBweDtcbn1cblxuI0ZPUC10aW1lbGluZS1zdGFydCB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG5cbi51aS1zbGlkZXItaGFuZGxlLmxlZnQgLmFycm93LFxuLnVpLXNsaWRlci1oYW5kbGUucmlnaHQgLmFycm93IHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMHB4O1xuICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMzBweDtcbiAgd2lkdGg6IDBweDtcbn1cblxuLnVpLXNsaWRlci1oYW5kbGUucmlnaHQgLmFycm93IHtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG59XG5cbi8qLy8vLy8vLy8vLyBQTEFZIE1BUktFUlMgLy8vLy8vLy8vLy8vKi9cbiNGT1AtdGltZWxpbmUtbWFya2VycyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxOHB4O1xuICBtYXJnaW46IDAgMTAwcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyovLy8vLy8vLy8vIEZJTFRFUlMgLy8vLy8vLy8vLy8vKi9cbiNGT1AtdGltZWxpbmUtZmlsdGVycyB7XG4gIGhlaWdodDogNTFweDtcbiAgbGluZS1oZWlnaHQ6IDMxcHg7XG4gIG1hcmdpbjogLTIxcHggNTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAyMXB4O1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgZGl2IHtcbiAgbWFyZ2luOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgc3Bhbi5maWx0ZXJzLFxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIHNwYW4uZmlsdGVycyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGNvbG9yOiAjY2NjO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsLmRlc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBjb2xvcjogIzc3Nztcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsLmRlc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzQ0NDtcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbC5ob21lVGVhbSBzcGFuLFxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsLmF3YXlUZWFtIHNwYW4ge1xuICBoZWlnaHQ6IDI2cHg7XG59XG5cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbCBzcGFuLmZpbHRlckljb24ge1xuICBoZWlnaHQ6IDMwcHg7XG59XG5cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbC5ob21lVGVhbSBzcGFuIGEsXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgbGFiZWwuYXdheVRlYW0gc3BhbiBhIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OXB4O1xufVxuXG4vKi8vLy8vLy8gVElNRUxJTkUgQ0FQUyAvLy8vLy8vLyovXG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciAuY2FwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA4NHB4O1xufVxuXG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciAuY2FwLmxlZnQge1xuICBsZWZ0OiAtNXB4O1xufVxuXG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciAuY2FwLnJpZ2h0IHtcbiAgcmlnaHQ6IC05cHg7XG59XG5cbiNGT1AtdGltZWxpbmUtY29udGFpbmVyIC5jYXAgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDgwcHg7XG59XG5cbiNGT1AtdGltZWxpbmUtY29udGFpbmVyIC5jYXAucmlnaHQgc3BhbiB7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKi8vLy8vLy8vLy8gUExBWSBBUkVBIC8vLy8vLy8vLy8vLyovXG5ib2R5LmhvY2tleWlzaCAjRk9QIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1Age1xuICBwYWRkaW5nOiAyNHB4IDE2cHggMDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEpIDEwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDMyJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMTAlLCByZ2JhKDAsIDAsIDAsIDAuMSkpLCBjb2xvci1zdG9wKDMyJSwgcmdiYSgwLCAwLCAwLCAwLjIpKSwgY29sb3Itc3RvcCgxMDAlLCB0cmFuc3BhcmVudCkpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEpIDEwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDMyJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgMzIlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogT3BlcmExMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgMzIlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogSUUxMCsgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwMDAnLEdyYWRpZW50VHlwZT0wICk7XG4gIC8qIElFNi05ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAlLCByZ2JhKDAsIDAsIDAsIDAuMikgMzIlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogVzNDICovXG4gIHotaW5kZXg6IDEwMDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlfYXJlYSB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNTBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBoZWlnaHQ6IDQ1MnB4O1xuICBtYXJnaW46IDgwcHggMCAwIDA7XG4gIG1hcmdpbjogMDtcbiAgLyogdGVtcCB1bnRpbCBjdXJyZW50IHBsYXkgaXMgYWRkZWQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuNjk5MjE5KSAwcHggNnB4IDhweCAtNHB4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlzLFxuYm9keS5ob2NrZXlpc2ggI0ZPUCAudGV4dHVyZTIsXG5ib2R5LmhvY2tleWlzaCAjRk9QIC50ZXh0dXJlMSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlzIHtcbiAgei1pbmRleDogMztcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAudGV4dHVyZTIge1xuICB6LWluZGV4OiAyO1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QIC5zcG9uc29yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyovLy8vLy8vLy8vIEhPQ0tFWSBQTEFZIElDT05TIC8vLy8vLy8vLy8vLyovXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5nb2FsIGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9nb2FsLnBuZ1wiKTtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24uc2hvdCBiIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvc2hvdC5wbmdcIik7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLnNob3RvbmdvYWwgYiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3Nob3QucG5nXCIpO1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5zaG90b2ZmdGFyZ2V0IGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvbGFjcm9zc2UvbWlzc2VkLXNob3QucG5nXCIpO1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5ibG9ja2Vkc2hvdCBiIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvYmxvY2sucG5nXCIpO1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5wZW5hbHR5IGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9wZW5hbHR5LnBuZ1wiKTtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24uaGl0IGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9oaXQucG5nXCIpO1xufVxuXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5mYWNlb2ZmIGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9mYWNlb2ZmLnBuZ1wiKTtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24ubG9vc2ViYWxsIGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvbGFjcm9zc2UvbG9vc2UtYmFsbC5wbmdcIik7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLnR1cm5vdmVyIGIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS90dXJub3Zlci5wbmdcIik7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLmdvYWxpZWNoYW5nZSBiIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvZ29hbGllLWNoYW5nZS5wbmdcIik7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLmdvYWwgYiB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24ge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtbW96LWJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiA0NSU7XG4gIHdpZHRoOiAyMDBweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTExMHB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogLjg7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uIGIge1xuICBwYWRkaW5nOiA1cHggMCA1cHggMjFweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG59XG5cbi8qLy8vLy8vLy8vLyBQRVJTUEVDVElWRSAvLy8vLy8vLy8vLy8qL1xuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDcwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlOiA3MDBweDtcbiAgLW8tcGVyc3BlY3RpdmU6IDcwMDtcbiAgLW1zLXBlcnNwZWN0aXZlOiA3MDA7XG4gIHBlcnNwZWN0aXZlOiA3MDA7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkubmV3IC5zaGFkb3cge1xuICBvcGFjaXR5OiAwO1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5X2FyZWEsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5zaGFkb3cge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheV9hcmVhIHtcbiAgbWFyZ2luOiAwIDAgLTEzMHB4O1xuICBtYXJnaW46IC04MHB4IDAgLTEzMHB4O1xuICAvKiB0ZW1wIHVudGlsIGN1cnJlbnQgcGxheSBpcyBhZGRlZCAqL1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKDUwZGVnKSBzY2FsZSgwLjkpIHRyYW5zbGF0ZTNkKDAsIC0xNTBweCwgLTUwcHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCg1MGRlZykgc2NhbGUoMC45KSB0cmFuc2xhdGUzZCgwLCAtMTUwcHgsIC01MHB4KTtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDUwZGVnKSBzY2FsZSgwLjkpIHRyYW5zbGF0ZTNkKDAsIC0xNTBweCwgLTUwcHgpO1xufVxuXG4vKi8vLy8vLy8vLy8gRk9QIFBPUCBVUFMgLy8vLy8vLy8vLy8vKi9cbi5OR0lOX3RpcC5ob2NrZXlpc2hfZm9wX3BvcHVwIC5jb250YWluZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLmhvY2tleWlzaF9mb3BfcG9wdXAgLk5HSU5fdGlwIC5jbG9zZV90aXAge1xuICBmb250OiAxMXB4IGJvbGQgVmVyZGFuYSwgQXJpYWwsIHNhbnMtZXJzaWY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNnB4O1xuICByaWdodDogLTZweDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4uaG9ja2V5aXNoX2ZvcF9wb3B1cCAuY2xvc2VfdGlwIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiAtMTBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbi5mb3BQb3BVcCB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW8tdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvZGlhZ29uYWxfc3RyaXBlcy5wbmdcIikgbGVmdCBib3R0b207XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMjBweCAwO1xuICB3aWR0aDogMTIwcHg7XG59XG5cbi5mb3BQb3BVcC5leHBhbmRlZCB7XG4gIHdpZHRoOiAzNTBweDtcbiAgbWFyZ2luLWxlZnQ6IC0xMTVweDtcbn1cblxuLmZvcFBvcFVwIC5jYXJyb3QtdG9wLFxuLmZvcFBvcFVwIC5jYXJyb3QtYm90dG9tIHtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwcHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi5mb3BQb3BVcCAuY2Fycm90LXRvcCB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZm9wUG9wVXAgLmNhcnJvdC1ib3R0b20ge1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJOYW1lIC5jYXJyb3QtYm90dG9tIHtcbiAgYm9yZGVyLXdpZHRoOiAycHggNHB4IDRweCA0cHg7XG59XG5cbi8qLy8vLy8gUGxheSBEZXRhaWxzIC8vLy8vKi9cbi5mb3BQb3BVcCAucGxheUluZm8ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3N0YXRfY29tcGFyaXNvbi1zaGluZS5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDRweCAwIDdweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cblxuLmZvcFBvcFVwIC5wbGF5SW5mbyAucGxheVR5cGUge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi5mb3BQb3BVcCAudGltZVN0YW1wIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmZmO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG4gIG1hcmdpbjogN3B4IDAgMCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZm9wUG9wVXAgLnRpbWVTdGFtcCAuaW50ZXJ2YWwsXG4uZm9wUG9wVXAgLnRpbWVTdGFtcCAuY2xvY2sge1xuICBmb250LXNpemU6IDhweDtcbiAgbGluZS1oZWlnaHQ6IDhweDtcbn1cblxuLmZvcFBvcFVwIC50aW1lU3RhbXAgLmludGVydmFsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5mb3BQb3BVcCAuYmFja1RvUGxheSB7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogI0VFRTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtNHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG1hcmdpbjogMCAzcHggMCAtM3B4O1xuICAtd2Via2l0LXNoYWRvdzogaW5zZXQgMCAtMXB4IDVweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpLCBpbnNldCAwIDBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgLTFweCA1cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSwgaW5zZXQgMCAwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDVweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpLCBpbnNldCAwIDBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQ6IDlweCBub3JtYWwgXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxMXB4O1xufVxuXG4uZm9wUG9wVXAgLmJhY2tUb1BsYXk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xufVxuXG4uZm9wUG9wVXAgLmJhY2tUb1BsYXkgc3BhbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwOi8vYXBwLWFzc2V0czEuc3BvcnRuZ2luLmNvbS9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9iYWNrVG9QbGF5LnBuZ1wiKSAtMnB4IDJweCBuby1yZXBlYXQ7XG4gIHBhZGRpbmctbGVmdDogMThweDtcbn1cblxuLyogVHdvLVBsYXllciBQb3B1cHMgKi9cbi5mb3BQb3BVcC50d28tcGxheWVyIHtcbiAgd2lkdGg6IDI0N3B4O1xufVxuXG4uZm9wUG9wVXAudHdvLXBsYXllci5leHBhbmRlZCB7XG4gIHdpZHRoOiAzNTBweDtcbiAgbWFyZ2luLWxlZnQ6IC01MXB4O1xufVxuXG4uZm9wUG9wVXAuRmFjZW9mZiAud2lubmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvZmFjZU9mZi13b24ucG5nXCIpIG5vLXJlcGVhdCA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDI2cHg7XG4gIHdpZHRoOiA0NXB4O1xufVxuXG4uZm9wUG9wVXAuRmFjZW9mZiAucGxheUluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIFBMQVlFUiBDQVJEICovXG4uZm9wUG9wVXAgLnBsYXllckNhcmQge1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCAxMXB4IDExcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDExcHggMTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDExcHggMTFweDtcbiAgbWFyZ2luOiAwIC02cHggLTZweDtcbiAgYm9yZGVyOiA2cHggc29saWQgI0ZGRjtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvcGxheWVyRGV0YWlscy1iZy5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGZsb2F0OiBsZWZ0O1xuICAvKiByZXF1aXJlZCBmb3IgYW5pbWF0aW9uICovXG4gIGhlaWdodDogNzhweDtcbiAgd2lkdGg6IDEyMHB4O1xufVxuXG4uZm9wUG9wVXAgLnBsYXllckNhcmQgKyAucGxheWVyQ2FyZCB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIG1hcmdpbi1yaWdodDogLTUwJTtcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLmNvbGxhcHNlZCArIC5wbGF5ZXJDYXJkIHtcbiAgbWFyZ2luLWxlZnQ6IC02cHg7XG59XG5cbi5mb3BQb3BVcCAucGxheWVyQ2FyZCA+IC5wbGF5ZXJOYW1lIHtcbiAgY29sb3I6ICMyMjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgaGVpZ2h0OiAxOHB4O1xuICBwYWRkaW5nOiA2cHggNnB4IDA7XG4gIG1hcmdpbjogMCAtNnB4O1xufVxuXG4uZm9wUG9wVXAgLnBsYXllckluZm8ge1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDExcHggMTFweCAwIDA7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTFweCAxMXB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogMTFweCAxMXB4IDAgMDtcbiAgbWFyZ2luOiAtNnB4O1xuICBib3JkZXI6IDZweCBzb2xpZCAjRkZGO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBwYWRkaW5nOiA3cHggN3B4IDZweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtaW4td2lkdGg6IDEwNnB4O1xuICBoZWlnaHQ6IDQxcHg7XG59XG5cbi5mb3BQb3BVcCAucGxheWVySW5mbyA+IC5wbGF5ZXJOYW1lIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWluZGVudDogN3B4O1xufVxuXG4uZm9wUG9wVXAgLnBsYXllckluZm8gPiAucGxheWVyTmFtZSAuZmlyc3ROYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvID4gLnBsYXllck5hbWUgLmxhc3ROYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjZweDtcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJQaG90byB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZDogIzY2NiBub25lIGNlbnRlciBjZW50ZXI7XG59XG5cbi5mb3BQb3BVcCAucGxheWVySW5mbyAudGVhbUxvZ28tc21hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvIC5wbGF5ZXJOdW1iZXIge1xuICBmb250LXNpemU6IDUzcHg7XG4gIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHRleHQtaW5kZW50OiAtNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZsb2F0OiByaWdodDtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyU3BlY3Mge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNHB4O1xufVxuXG4uZm9wUG9wVXAgLnBsYXllckluZm8gLnBsYXllclNwZWNzLnNtYWxsIHtcbiAgd2lkdGg6IDYwcHg7XG4gIG1hcmdpbjogMCAwIDAgYXV0bztcbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvIC5wbGF5ZXJTcGVjcy5sYXJnZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBHYW1lIFN0YXRzICovXG4uZm9wUG9wVXAgLnBsYXllclN0YXRzIHtcbiAgaGVpZ2h0OiAwO1xufVxuXG4uZm9wUG9wVXAgLnBsYXllclN0YXRMaW5lIHtcbiAgcGFkZGluZzogN3B4IDdweCAwO1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IHtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgd2lkdGg6IDc0JTtcbn1cblxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IHRhYmxlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEycHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9wUG9wVXAgLmdhbWVTdGF0c0xpc3QgdGQge1xuICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICBjb2xvcjogI0ZGRjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IHRkLmdhbWVTdGF0cyB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxJTtcbn1cblxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IHRkLmdhbWVTdGF0cyBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICBwYWRkaW5nOiAwIDVweCAwIDEwcHg7XG59XG5cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCB0ZC5zZXBhcmF0b3Igc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDtcbiAgYm9yZGVyLXdpZHRoOiAxM3B4IDAgMTNweCA3cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCAuc3RhdENhdGVnb3J5IHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IC5zaW5nbGVTdGF0IHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4uZm9wUG9wVXAgLnByb2ZpbGVCdXR0b24ge1xuICB3aWR0aDogMjQlO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmZvcFBvcFVwIC5wcm9maWxlQnV0dG9uIGEge1xuICBsaW5lLWhlaWdodDogMTNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb20vYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvYnRuLW91dC5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDdweDtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5mb3BQb3BVcCAucHJvZmlsZUJ1dHRvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbn1cblxuLyogR2FtZSBQbGF5cyAqL1xuLmZvcFBvcFVwIC5nYW1lUGxheXMge1xuICBjb2xvcjogI0ZGRjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgbWFyZ2luLWJvdHRvbTogN3B4O1xufVxuXG4uZm9wUG9wVXAgLnBsYXlMaXN0IHtcbiAgbWFyZ2luOiAwIDdweDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4uZm9wUG9wVXAgLnRvdGFsUGxheXMge1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMCA4cHggNHB4O1xufVxuXG4uZm9wUG9wVXAgLnNpbmdsZVBsYXkge1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmZvcFBvcFVwIC5zaW5nbGVQbGF5IC5wbGF5VHlwZSB7XG4gIGJhY2tncm91bmQ6ICNjODIwMjc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvYmxhY2sucG5nXCIpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA5MHB4O1xufVxuXG4uZm9wUG9wVXAgLnNpbmdsZVBsYXkgLnJvbGUge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmZvcFBvcFVwIC5zaW5nbGVQbGF5IC50aW1lIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi8qLy8vLy8vLy8vLy8gRVhQQU5ERUQgLy8vLy8vLy8vLy8qL1xuLmZvcFBvcFVwLm5vVHJhbnNpdGlvbnMge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBUcmFuc2l0aW9ucyAqL1xuLmZvcFBvcFVwLFxuLmZvcFBvcFVwIC5wbGF5SW5mbyxcbi5mb3BQb3BVcCAucGxheWVySW5mbzIsXG4uZm9wUG9wVXAgLnBsYXllckluZm8gPiAucGxheWVyTmFtZSxcbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyTnVtYmVyLFxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLFxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkID4gLnBsYXllck5hbWUsXG4uZm9wUG9wVXAgLnBsYXllclN0YXRzLFxuLmZvcFBvcFVwIC5nYW1lUGxheXMsXG4uZm9wUG9wVXAgLnBsYXlMaXN0LFxuLmZvcFBvcFVwIC5iYWNrVG9QbGF5IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogSGlkZW4gV2hlbiBFeHBhbmRlZCAqL1xuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5SW5mbyxcbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVyQ2FyZCA+IC5wbGF5ZXJOYW1lIHtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVySW5mbyAucGxheWVyU3BlY3Muc21hbGwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXllckNhcmQge1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMjU1cHg7XG59XG5cbi5mb3BQb3BVcCAucGxheWVyQ2FyZC5jb2xsYXBzZWQge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKiBWaXNpYmxlIFdoZW4gRXhwYW5kZWQgKi9cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVyU3RhdHMge1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5mb3BQb3BVcC5leHBhbmRlZCAuZ2FtZVBsYXlzIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXlMaXN0IHtcbiAgaGVpZ2h0OiAxNDBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVySW5mbyAucGxheWVyU3BlY3MubGFyZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5ZXJJbmZvID4gLnBsYXllck5hbWUge1xuICB3aWR0aDogMjAwcHg7XG4gIG1hcmdpbi1yaWdodDogLTIwMHB4O1xufVxuXG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXllckluZm8gLnBsYXllck51bWJlciB7XG4gIHRleHQtaW5kZW50OiA1cHg7XG59XG5cbi5mb3BQb3BVcC5leHBhbmRlZCAuZ2FtZVBsYXlzIC5jYXJyb3QtdG9wLFxuLmZvcFBvcFVwLmV4cGFuZGVkIC5nYW1lUGxheXMgLmNhcnJvdC1ib3R0b20ge1xuICBib3JkZXItd2lkdGg6IDVweDtcbn1cblxuLmZvcFBvcFVwLmV4cGFuZGVkIC5iYWNrVG9QbGF5IHtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuXG4vKiBIT1ZFUiBTVEFURSAqL1xuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLmV4cGFuZGFibGU6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXpNaVVpSUhOMGIzQXRZMjlzYjNJOUlpTmpOR00wWXpRaUlITjBiM0F0YjNCaFkybDBlVDBpTUNJdlBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSTJOeVVpSUhOMGIzQXRZMjlzYjNJOUlpTm1aR1prWm1RaUlITjBiM0F0YjNCaFkybDBlVDBpTUM0ME5pSXZQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0kyT0NVaUlITjBiM0F0WTI5c2IzSTlJaU5tWm1abVptWWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1DNHlNeUl2UGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJMk9TVWlJSE4wYjNBdFkyOXNiM0k5SWlObVptWm1abVlpSUhOMGIzQXRiM0JoWTJsMGVUMGlNQ0l2UGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJeE1EQWxJaUJ6ZEc5d0xXTnZiRzl5UFNJalptWm1abVptSWlCemRHOXdMVzl3WVdOcGRIazlJakF1TXpZaUx6NEtJQ0E4TDJ4cGJtVmhja2R5WVdScFpXNTBQZ29nSUR4eVpXTjBJSGc5SWpBaUlIazlJakFpSUhkcFpIUm9QU0l4SWlCb1pXbG5hSFE5SWpFaUlHWnBiR3c5SW5WeWJDZ2paM0poWkMxMVkyZG5MV2RsYm1WeVlYUmxaQ2tpSUM4K0Nqd3ZjM1puUGc9PSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgxOTYsIDE5NiwgMTk2LCAwKSAzMiUsIHJnYmEoMjUzLCAyNTMsIDI1MywgMC40NikgNjclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjMpIDY4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA2OSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNikgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDMyJSwgcmdiYSgxOTYsIDE5NiwgMTk2LCAwKSksIGNvbG9yLXN0b3AoNjclLCByZ2JhKDI1MywgMjUzLCAyNTMsIDAuNDYpKSwgY29sb3Itc3RvcCg2OCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMykpLCBjb2xvci1zdG9wKDY5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KSkpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDE5NiwgMTk2LCAxOTYsIDApIDMyJSwgcmdiYSgyNTMsIDI1MywgMjUzLCAwLjQ2KSA2NyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMykgNjglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDY5JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KSAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgxOTYsIDE5NiwgMTk2LCAwKSAzMiUsIHJnYmEoMjUzLCAyNTMsIDI1MywgMC40NikgNjclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjMpIDY4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA2OSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNikgMTAwJSk7XG4gIC8qIE9wZXJhIDExLjEwKyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgxOTYsIDE5NiwgMTk2LCAwKSAzMiUsIHJnYmEoMjUzLCAyNTMsIDI1MywgMC40NikgNjclLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjMpIDY4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA2OSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNikgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMTk2LCAxOTYsIDE5NiwgMCkgMzIlLCByZ2JhKDI1MywgMjUzLCAyNTMsIDAuNDYpIDY3JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIzKSA2OCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNjklLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzYpIDEwMCUpO1xuICAvKiBXM0MgKi9cbn1cblxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLmV4cGFuZGFibGU6aG92ZXIgLnBsYXllckluZm8ge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCAxNXB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAwIDE1cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDE1cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cblxuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5ZXJDYXJkLmV4cGFuZGFibGU6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3BsYXllckRldGFpbHMtYmcucG5nXCIpO1xufVxuXG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXllckNhcmQuZXhwYW5kYWJsZTpob3ZlciAucGxheWVySW5mbyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMzVweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwbXMgbGluZWFyO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTcuNXB4LCAxNXB4LCAxcHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE3LjVweCwgMTVweCwgMXB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTcuNXB4LCAxNXB4LCAxcHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIGJhY2tncm91bmQ6IHVybChcImh0dHA6Ly9hcHAtYXNzZXRzMS5zcG9ydG5naW4uY29tL2FwcF9pbWFnZXMvbGl2ZS9ob2NrZXlfaWNvbl9zaGFkb3cucG5nXCIpIGJvdHRvbSBuby1yZXBlYXQ7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoIC5zdmctcGluIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCA0OHB4IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA0OHB4IDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgNDhweCAwO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZykgdHJhbnNsYXRlM2QoMXB4LCAwLCAtMTVweCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZykgdHJhbnNsYXRlM2QoMXB4LCAwLCAtMTVweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZTNkKDFweCwgMCwgLTE1cHgpO1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAuc3ZnLXBpbiBzdmcge1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHdpZHRoOiAzNXB4O1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAuc3ZnLXBpbiBzdmcgLnBvc2l0aW9uLXBpbiB7XG4gIHN0cm9rZTogIzAwMDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggLnN2Zy1waW4uaG9tZVRlYW0sIC5zdmctcGluLmF3YXlUZWFtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFBsYXkgQWN0aW9uIEFjdGl2YXRpb24gb24gU1ZHICovXG5ib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAucGxheSBzdmcgLmFjdGlvbi1pY29uIHtcbiAgb3BhY2l0eTogMDtcbiAgZmlsbDogI2ZmZjtcbiAgc3Ryb2tlOiAjMDAwO1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMsXG4uZm9wUG9wVXAsXG4uZm9wUG9wVXAgLnBsYXlJbmZvLFxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvLFxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvMixcbi5mb3BQb3BVcCAucGxheWVySW5mbyA+IC5wbGF5ZXJOYW1lLFxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvIC5wbGF5ZXJOdW1iZXIsXG4uZm9wUG9wVXAgLnBsYXllckNhcmQsXG4uZm9wUG9wVXAgLnBsYXllckNhcmQgPiAucGxheWVyTmFtZSxcbi5mb3BQb3BVcCAucGxheWVyU3RhdHMsXG4uZm9wUG9wVXAgLmdhbWVQbGF5cyxcbi5mb3BQb3BVcCAucGxheUxpc3QsXG4uZm9wUG9wVXAgLmJhY2tUb1BsYXkge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheS5wZW5hbHR5IHN2ZyAucGVuYWx0eSxcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkuaGl0IHN2ZyAuaGl0LFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheS5zaG90IHN2ZyAuc2hvdCxcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkuYmxvY2tlZHNob3Qgc3ZnIC5ibG9jayxcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkuZmFjZW9mZiBzdmcgLmZhY2VvZmYsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LnR1cm5vdmVyIHN2ZyAudHVybm92ZXIsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LmdvYWwgc3ZnIC5nb2FsIHtcbiAgb3BhY2l0eTogMS4wO1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5Lm5ldyAuc3ZnLXBpbiB7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMHB4IDEwMHB4O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwcHggMTAwcHg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwcHggMTAwcHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlfYXJlYSxcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlzLFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheSAuc2hhZG93IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXIuZmlsdGVyX3Nob3cuc2xpZGVyX3Nob3cudGVhbV9zaG93LFxuYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheS5maWx0ZXJfc2hvdy5zbGlkZXJfc2hvdy50ZWFtX3Nob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogTUFSS0VSUyAqL1xuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYm90dG9tOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW4tbGVmdDogLTNweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNsaXZlR2FtZVNpbXBsZTpob3ZlciAubWFya2VyIHN2ZyxcbiNsaXZlR2FtZVNpbXBsZS5kaW1fcGxheXMgLm1hcmtlciBzdmcsXG5ib2R5LmhvY2tleWlzaCAjbGl2ZUdhbWVTaW1wbGUuZGltX3BsYXlzIC5wbGF5IC5zdmctcGluLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlOmhvdmVyIC5wbGF5IC5zdmctcGluIHtcbiAgb3BhY2l0eTogLjI7XG59XG5cbmJvZHkuaG9ja2V5aXNoICNsaXZlR2FtZVNpbXBsZS5kaW1fcGxheXMgLnBsYXkuYWN0aXZlIC5zdmctcGluLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlOmhvdmVyIC5wbGF5IC5zdmctcGluOmhvdmVyLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlLmRpbV9wbGF5cyAubWFya2VyLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDQ5OTtcbn1cblxuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXI6aG92ZXIgc3ZnLFxuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXIuYWN0aXZlIHN2ZyB7XG4gIG9wYWNpdHk6IDEuMDtcbn1cblxuI2xpdmVHYW1lU2ltcGxlLm5vLW5lc3RlZC0zZC10cmFuc2Zvcm1zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdhbWVzLXNsaWRlciBsaS5zZWxlY3RlZCBhLCAuZ2FtZXMtc2xpZGVyIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBib3gtc2hhZG93OiAwIDJweCAjMDA1NEE2IGluc2V0LCAwIC0ycHggIzAwNTRBNiBpbnNldDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZ2FtZXMtc2xpZGVyIGxpLnNlbGVjdGVkIGEgKiwgLmdhbWVzLXNsaWRlciBhOmhvdmVyICoge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmdhbWVzLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiA1cHggMCAxNXB4O1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5nYW1lcy1zbGlkZXIgdWwge1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ2FtZXMtc2xpZGVyIGxpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLmdhbWVzLXNsaWRlciBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDJweDtcbn1cblxuLmdhbWVzLXNsaWRlciBsaTpsYXN0LWNoaWxkIGEge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbn1cblxuLmdhbWVzLXNsaWRlciBhIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAycHggI2I1YjViNSBpbnNldCwgMCAtMnB4ICNiNWI1YjUgaW5zZXQ7XG4gIGJvcmRlci1jb2xvcjogI2I1YjViNTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICM2NjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDYzcHg7XG4gIHBhZGRpbmc6IDlweCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNXMsIGJvcmRlciAuMjVzLCBib3gtc2hhZG93IC4yNXMsIGNvbG9yIC4yNXM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI1cywgYm9yZGVyIC4yNXMsIGJveC1zaGFkb3cgLjI1cywgY29sb3IgLjI1cztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDUwcHg7XG59XG5cbi5nYW1lcy1zbGlkZXItaW5uZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLmdhbWVzLXNsaWRlci1ncm91cCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctbGVmdDogMTdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FtZXMtc2xpZGVyLW1vbnRoIHtcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgaGVpZ2h0OiAxN3B4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgcGFkZGluZzogMXB4IDAgMXB4IDZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRleigtOTBkZWcpIHRyYW5zbGF0ZSgtMTAwJSwgLTEwMCUpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZXooLTkwZGVnKSB0cmFuc2xhdGUoLTEwMCUsIC0xMDAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDYzcHg7XG59XG5cbi5nYW1lcy1zbGlkZXItZGF0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIHBhZGRpbmc6IDRweCAwO1xufVxuXG4uZ2FtZXMtc2xpZGVyLWRheSxcbi5nYW1lcy1zbGlkZXItY291bnQsXG4uZ2FtZXMtc2xpZGVyLXRpbWUsXG4uZ2FtZXMtc2xpZGVyLW91dGNvbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAuN2VtO1xufVxuXG4uZ2FtZXMtc2xpZGVyLWRheSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmdhbWVzLXNsaWRlci1jb3VudCxcbi5nYW1lcy1zbGlkZXItdGltZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5nYW1lcy1zbGlkZXItb3V0Y29tZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICMwMDU0QTY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5nYW1lLWhlYWRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nYW1lLWhlYWRlciA+ICoge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5nYW1lLWhlYWRlciAuZ2FtZS10aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmdhbWUtaGVhZGVyIC5kYXRldGltZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICBwYWRkaW5nLXRvcDogLjNlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmdhbWUtaGVhZGVyIC5kYXRldGltZSAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtZmxleDogMSAxIDUwJTtcbiAgLW1zLWZsZXg6IDEgMSA1MCU7XG4gIGZsZXg6IDEgMSA1MCU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1heC1oZWlnaHQ6IDIuNGVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUgfiAudGVhbS1uYW1lIHtcbiAgcGFkZGluZzogMCAwIDAgMTVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmdhbWUtaGVhZGVyIC52cyxcbi5nYW1lLWhlYWRlciAuc2NvcmVzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQ6IDM2cHggXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3Ige1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW46IDAgLTAuMWVtO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnN0YXR1cyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tbG9nbyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tbG9nbzpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWZsZXg6IDAgMCAxMDZweDtcbiAgLW1zLWZsZXg6IDAgMCAxMDZweDtcbiAgZmxleDogMCAwIDEwNnB4O1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QuYXdheSAudGVhbS1sb2dvIHtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi5nYW1lLWhlYWRlciAudGVhbS1jcmVzdC5hd2F5IC50ZWFtLWxvZ286YmVmb3JlIHtcbiAgcmlnaHQ6IC02cHg7XG59XG5cbi5nYW1lLWhlYWRlciAudGVhbS1jcmVzdC5ob21lIC50ZWFtLWxvZ28ge1xuICBtYXJnaW4tbGVmdDogNnB4O1xufVxuXG4uZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QuaG9tZSAudGVhbS1sb2dvOmJlZm9yZSB7XG4gIGxlZnQ6IC02cHg7XG59XG5cbi5nYW1lLWhlYWRlciAuZ2FtZS1oZWFkZXItY2VudGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mbGV4OiAwIDAgMTFlbTtcbiAgLW1zLWZsZXg6IDAgMCAxMWVtO1xuICBmbGV4OiAwIDAgMTFlbTtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4uZ2FtZS1oZWFkZXIgfiAuYm94c2NvcmUtaW5uZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAudGVhbS1uYW1lLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uLTMgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtNTAtNTAgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uLTMgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC01MC01MCAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbi0zIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCxcbiAgLmxheW91dC01MC01MCAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDEgMTA2cHg7XG4gICAgLW1zLWZsZXg6IDAgMSAxMDZweDtcbiAgICBmbGV4OiAwIDEgMTA2cHg7XG4gIH1cbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIsXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2x1bW46bm90KC5jb2x1bW4tMykgLmdhbWUtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygzNiUgKyAxNHB4ICsgOHB4KTtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlLFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDM2JSArIDI0cHggKyAxNHB4ICsgOHB4KTtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlIC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlIC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlIC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUgLnRlYW0tY3Jlc3Qge1xuICAgIHRvcDogMjRweDtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLmdhbWUtaGVhZGVyLWNlbnRlcixcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC5nYW1lLWhlYWRlci1jZW50ZXIsXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC5nYW1lLWhlYWRlci1jZW50ZXIsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLmdhbWUtaGVhZGVyLWNlbnRlcixcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpIC5nYW1lLWhlYWRlciAuZ2FtZS1oZWFkZXItY2VudGVyLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2x1bW46bm90KC5jb2x1bW4tMykgLmdhbWUtaGVhZGVyIC5nYW1lLWhlYWRlci1jZW50ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAudGVhbS1uYW1lLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpIC5nYW1lLWhlYWRlciAudGVhbS1uYW1lLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0yKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0cHgpO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QgfiAudGVhbS1jcmVzdCxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0IH4gLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0IH4gLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QgfiAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCB+IC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2x1bW46bm90KC5jb2x1bW4tMykgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0IH4gLnRlYW0tY3Jlc3Qge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLmdhbWUtdGl0bGUsXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2x1bW46bm90KC5jb2x1bW4tMykgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAuc2NvcmVzLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnNjb3JlcyxcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnNjb3JlcyxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpIC5nYW1lLWhlYWRlciAuc2NvcmVzLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyIC5zY29yZXMsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3R0b206IDIycHg7XG4gIH1cbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5hd2F5LFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmF3YXksXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmF3YXksXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5hd2F5LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMikgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0yKSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuYXdheSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTI1LTI1LTUwIC5jb2x1bW46bm90KC5jb2x1bW4tMykgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmF3YXkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDRweCk7XG4gIH1cbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0yKSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5zY29yZXMgLnNlcGFyYXRvcixcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC5zY29yZXMgLnNlcGFyYXRvcixcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuc2VwYXJhdG9yLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyIC5zY29yZXMgLnNlcGFyYXRvcixcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3IsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuc2VwYXJhdG9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5kYXRldGltZSxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLnN0YXR1cyxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLmRhdGV0aW1lLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuc3RhdHVzLFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5kYXRldGltZSxcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuc3RhdHVzLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLmRhdGV0aW1lLFxuICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW46bm90KC5jb2x1bW4tMSkgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLnN0YXR1cyxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5kYXRldGltZSxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5zdGF0dXMsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuZGF0ZXRpbWUsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuc3RhdHVzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlcixcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygzNiUgKyAxNHB4ICsgOHB4KTtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzYlICsgMjRweCArIDE0cHggKyA4cHgpO1xuICB9XG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSAudGVhbS1jcmVzdCxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyLmhhcy10aXRsZSAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlIC50ZWFtLWNyZXN0IHtcbiAgICB0b3A6IDI0cHg7XG4gIH1cbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLmdhbWUtaGVhZGVyLWNlbnRlcixcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5nYW1lLWhlYWRlci1jZW50ZXIsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuZ2FtZS1oZWFkZXItY2VudGVyLFxuICAubGF5b3V0LTI1LTUwLTI1IC5nYW1lLWhlYWRlciAuZ2FtZS1oZWFkZXItY2VudGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG4gICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2LFxuICAubGF5b3V0LTI1LTUwLTI1IC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAudGVhbS1uYW1lLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNHB4KTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QgfiAudGVhbS1jcmVzdCxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLWNyZXN0IH4gLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCB+IC50ZWFtLWNyZXN0LFxuICAubGF5b3V0LTI1LTUwLTI1IC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCB+IC50ZWFtLWNyZXN0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIC5sYXlvdXQtMzMtMzMtMzMgLmdhbWUtaGVhZGVyIC5nYW1lLXRpdGxlLFxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLmdhbWUtdGl0bGUsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuZ2FtZS10aXRsZSxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXIgLmdhbWUtdGl0bGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXIgLnNjb3JlcyxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5zY29yZXMsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuc2NvcmVzLFxuICAubGF5b3V0LTI1LTUwLTI1IC5nYW1lLWhlYWRlciAuc2NvcmVzIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvdHRvbTogMjJweDtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5hd2F5LFxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC0zMy02NiAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmF3YXksXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTY2LTMzIC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuYXdheSxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuYXdheSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNHB4KTtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyIC5zY29yZXMgLmhvbWUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3IsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3IsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3IsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyIC5zY29yZXMgLnNlcGFyYXRvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubGF5b3V0LTMzLTMzLTMzIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5kYXRldGltZSxcbiAgLmxheW91dC0zMy0zMy0zMyAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuc3RhdHVzLFxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuZGF0ZXRpbWUsXG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5zdGF0dXMsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yIC5nYW1lLWhlYWRlcjpub3QoOmxhc3QtY2hpbGQpIC5kYXRldGltZSxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLnN0YXR1cyxcbiAgLmxheW91dC0yNS01MC0yNSAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuZGF0ZXRpbWUsXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLnN0YXR1cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC02Ni0zMyAuY29sdW1uLTEgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtNTAtNTAgLmdhbWUtaGVhZGVyIC50ZWFtLW5hbWUsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSxcbiAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpIC5nYW1lLWhlYWRlciAudGVhbS1uYW1lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0yIC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYsXG4gIC5sYXlvdXQtNTAtNTAgLmdhbWUtaGVhZGVyIC50ZWFtLWFiYnJldixcbiAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpIC5nYW1lLWhlYWRlciAudGVhbS1hYmJyZXYsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMiAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0xIC5nYW1lLWhlYWRlciAudGVhbS1jcmVzdCxcbiAgLmxheW91dC01MC01MCAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtMjUtMjUtNTAgLmNvbHVtbjpub3QoLmNvbHVtbi0zKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QsXG4gIC5sYXlvdXQtNTAtMjUtMjUgLmNvbHVtbjpub3QoLmNvbHVtbi0xKSAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDEgMTA2cHg7XG4gICAgLW1zLWZsZXg6IDAgMSAxMDZweDtcbiAgICBmbGV4OiAwIDEgMTA2cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDEgMTA2cHg7XG4gICAgLW1zLWZsZXg6IDAgMSAxMDZweDtcbiAgICBmbGV4OiAwIDEgMTA2cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAuZ2FtZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDM2JSArIDE0cHggKyA4cHgpO1xuICB9XG4gIC5nYW1lLWhlYWRlci5oYXMtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDM2JSArIDI0cHggKyAxNHB4ICsgOHB4KTtcbiAgfVxuICAuZ2FtZS1oZWFkZXIuaGFzLXRpdGxlIC50ZWFtLWNyZXN0IHtcbiAgICB0b3A6IDI0cHg7XG4gIH1cbiAgLmdhbWUtaGVhZGVyIC5nYW1lLWhlYWRlci1jZW50ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tYWJicmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tbmFtZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA0cHgpO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnRlYW0tY3Jlc3QgfiAudGVhbS1jcmVzdCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLmdhbWUtdGl0bGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLmdhbWUtaGVhZGVyIC5zY29yZXMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm90dG9tOiAyMnB4O1xuICB9XG4gIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5ob21lLFxuICAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuYXdheSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNHB4KTtcbiAgfVxuICAuZ2FtZS1oZWFkZXIgLnNjb3JlcyAuaG9tZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5nYW1lLWhlYWRlciAuc2NvcmVzIC5zZXBhcmF0b3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmdhbWUtaGVhZGVyOm5vdCg6bGFzdC1jaGlsZCkgLmRhdGV0aW1lLFxuICAuZ2FtZS1oZWFkZXI6bm90KDpsYXN0LWNoaWxkKSAuc3RhdHVzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiNwb3N0TGlzdCBkaXYucG9zdEVsZW1lbnQge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZGQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xufVxuXG4jcG9zdExpc3QgZGl2LnBvc3RFbGVtZW50Omxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCAucG9zdFVzZXIgaW1nIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2RkZDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW4tbGVmdDogLTgwcHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4jcG9zdExpc3QgZGl2LnBvc3RFbGVtZW50IC5wb3N0VXNlciBpbWc6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNwb3N0TGlzdCBkaXYucG9zdEVsZW1lbnQgLnBvc3RVc2VyIC5uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xufVxuXG4jcG9zdExpc3QgZGl2LnBvc3RFbGVtZW50IC5wb3N0VXNlciAuZGF0ZSB7XG4gIGNvbG9yOiAjNjY2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW46IC4yNWVtIDAgMS41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNwb3N0TGlzdCBkaXYucG9zdEVsZW1lbnQgLmJ1dHRvbi1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCAuYnV0dG9uLWNvbnRlbnQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCAuYnV0dG9uLWltYWdlLXJpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50IHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gICNwb3N0TGlzdCBkaXYucG9zdEVsZW1lbnQge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG4gICNwb3N0TGlzdCBkaXYucG9zdEVsZW1lbnQgLnBvc3RVc2VyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbiAgI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCAucG9zdENvbnRlbnQge1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG59XG5cbi50b29sc0xpZ2h0Ym94ICNwb3N0Q29udGVudCB7XG4gIHBhZGRpbmc6IDE1cHggMTVweCAwO1xufVxuXG4udG9vbHNMaWdodGJveCAjcG9zdENvbnRlbnQgLnBvc3RFbGVtZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRvb2xzTGlnaHRib3ggI3Bvc3RDb21tZW50cyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDAgMTVweCAxNXB4O1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSBbaWRePVwibXVsdGlfc3RhdFwiXSB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIFtpZF49XCJtdWx0aV9zdGF0XCJdICsgZGl2IHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZGRkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogNnB4IDEycHg7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIFtpZF49XCJtdWx0aV9zdGF0XCJdICsgZGl2IGEge1xuICBjb2xvcjogIzBEQjE0QztcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIFtpZF49XCJtdWx0aV9zdGF0XCJdICsgZGl2IGE6YWZ0ZXIge1xuICBjb2xvcjogIzAwNTRBNjtcbiAgY29udGVudDogJ1xcZjA2MSc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIG1hcmdpbjogLS4xZW0gMCAwIC40ZW07XG4gIGZvbnQtc2l6ZTogLjllbTtcbn1cblxuLndpZGdldC1tdWx0aS1zdGF0LWZpbHRlcmFibGUgLnNwb3J0VGFibGVMYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnkge1xuICBsZWZ0OiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTRweDtcbn1cblxuLndpZGdldC1tdWx0aS1zdGF0LWZpbHRlcmFibGUgLnNwb3J0VGFibGVMYWJlbCAqIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zcG9ydFRhYmxlTGFiZWwgaDQudGVhbU5hbWUge1xuICBmb250LXNpemU6IDI0cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSAuc3BvcnRUYWJsZUxhYmVsIC5zZWFzb25EaXNwbGF5LFxuLndpZGdldC1tdWx0aS1zdGF0LWZpbHRlcmFibGUgLnNwb3J0VGFibGVMYWJlbCAuZXhwYW5kZWRWaWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zcG9ydFRhYmxlTGFiZWwgLmxpbmtUZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zcG9ydFRhYmxlTGFiZWwgLnNlYXNvbi1zZXBhcmF0b3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSAuc3RhdFRhYmxlIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSAuc3RhdFRhYmxlIHRoIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zdGF0VGFibGUgdGg6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSAuc3RhdFRhYmxlIHRkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ud2lkZ2V0LW11bHRpLXN0YXQtZmlsdGVyYWJsZSAuc3RhdFRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLndpZGdldC1tdWx0aS1zdGF0LWZpbHRlcmFibGUgLnN0YXRUYWJsZSAuc3RhdFBsYXllciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi53aWRnZXQtbXVsdGktc3RhdC1maWx0ZXJhYmxlIC5zdGF0VGFibGUgLnN0YXRQbGF5ZXIgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDE4MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC0zIFtpZF49XCJtdWx0aV9zdGF0XCJdIC5zcG9ydFRhYmxlTGFiZWwsXG4gIC5jb2wtbWQtNCBbaWRePVwibXVsdGlfc3RhdFwiXSAuc3BvcnRUYWJsZUxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5jb2wtbWQtMyBbaWRePVwibXVsdGlfc3RhdFwiXSAuc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby10aW55LFxuICAuY29sLW1kLTQgW2lkXj1cIm11bHRpX3N0YXRcIl0gLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tdGlueSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29sLW1kLTMgW2lkXj1cIm11bHRpX3N0YXRcIl0gLnNwb3J0VGFibGVMYWJlbCBoNCA+ICosXG4gIC5jb2wtbWQtNCBbaWRePVwibXVsdGlfc3RhdFwiXSAuc3BvcnRUYWJsZUxhYmVsIGg0ID4gKiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyBbaWRePVwibXVsdGlfc3RhdFwiXSAuc3BvcnRUYWJsZUxhYmVsLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiBbaWRePVwibXVsdGlfc3RhdFwiXSAuc3BvcnRUYWJsZUxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIFtpZF49XCJtdWx0aV9zdGF0XCJdIC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnksXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IFtpZF49XCJtdWx0aV9zdGF0XCJdIC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgW2lkXj1cIm11bHRpX3N0YXRcIl0gLnNwb3J0VGFibGVMYWJlbCBoNCA+ICosXG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC02IFtpZF49XCJtdWx0aV9zdGF0XCJdIC5zcG9ydFRhYmxlTGFiZWwgaDQgPiAqIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbi8qIFdpZGdldCAtIFN0YXQgTGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0LWxlYWRlciAuc3BvcnRUYWJsZUxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA5cHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDJweCAwICNmZmYsIDdweCAwICMwREIxNEM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndpZGdldC1sZWFkZXIgLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tdGlueSB7XG4gIGxlZnQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xufVxuXG4ud2lkZ2V0LWxlYWRlciAuc3BvcnRUYWJsZUxhYmVsICoge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLndpZGdldC1sZWFkZXIgLnNwb3J0VGFibGVMYWJlbCBoNC50ZWFtTmFtZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5zcG9ydFRhYmxlTGFiZWwgLnNlYXNvbkRpc3BsYXksXG4ud2lkZ2V0LWxlYWRlciAuc3BvcnRUYWJsZUxhYmVsIC5leHBhbmRlZFZpZXcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLndpZGdldC1sZWFkZXIgLnNwb3J0VGFibGVMYWJlbCAubGlua1RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndpZGdldC1sZWFkZXIgLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uLXNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5zdGF0VGFibGUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLndpZGdldC1sZWFkZXIgLnN0YXRUYWJsZSB0aDpudGgtY2hpbGQoMSksIC53aWRnZXQtbGVhZGVyIC5zdGF0VGFibGUgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud2lkZ2V0LWxlYWRlciAuc3RhdFRhYmxlIHRoOm50aC1jaGlsZCgyKSwgLndpZGdldC1sZWFkZXIgLnN0YXRUYWJsZSB0ZDpudGgtY2hpbGQoMikge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ud2lkZ2V0LWxlYWRlciAuc3RhdFRhYmxlIHRoOm50aC1jaGlsZCgzKSwgLndpZGdldC1sZWFkZXIgLnN0YXRUYWJsZSB0ZDpudGgtY2hpbGQoMykge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5zdGF0VGFibGUgdGg6bnRoLWNoaWxkKDEpIHtcbiAgd2lkdGg6IDMwcHg7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5zdGF0VGFibGUgdGQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ud2lkZ2V0LWxlYWRlciAuc3RhdFRhYmxlIHRkOm50aC1jaGlsZCgxKSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5sZWFkZXJOYW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ud2lkZ2V0LWxlYWRlciAubGVhZGVyLWhpZ2hsaWdodCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5zdGF0cyB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLW1zLWZsZXg6IDE7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud2lkZ2V0LWxlYWRlciAuc3RhdHMtbWFqb3IsXG4ud2lkZ2V0LWxlYWRlciAuc3RhdHMtbWlub3Ige1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5wbGF5ZXJfcGhvdG8ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDcwcHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMwMDU0QTY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDN0M3Qzc7XG59XG5cbi53aWRnZXQtbGVhZGVyIC5wbGF5ZXJfcGhvdG8gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA3MHB4O1xufVxuXG5baWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwsXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IC5zcG9ydFRhYmxlTGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU0QTY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYm94LXNoYWRvdzogMnB4IDAgI2ZmZiwgN3B4IDAgIzBEQjE0QztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5baWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnksXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnkge1xuICBsZWZ0OiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTRweDtcbn1cblxuW2lkXj1cIndpZGdldF9zdGFuZGluZ3Nfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsICosXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IC5zcG9ydFRhYmxlTGFiZWwgKiB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5baWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgaDQudGVhbU5hbWUsXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IC5zcG9ydFRhYmxlTGFiZWwgaDQudGVhbU5hbWUge1xuICBmb250LXNpemU6IDI0cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG5baWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgLnNlYXNvbkRpc3BsYXksXG5baWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgLmV4cGFuZGVkVmlldyxcbiN0YWJfZGl2aXNpb25fc3RhbmRpbmdzX2NvbnRlbnQgLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uRGlzcGxheSxcbiN0YWJfZGl2aXNpb25fc3RhbmRpbmdzX2NvbnRlbnQgLnNwb3J0VGFibGVMYWJlbCAuZXhwYW5kZWRWaWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbltpZF49XCJ3aWRnZXRfc3RhbmRpbmdzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAubGlua1RleHQsXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IC5zcG9ydFRhYmxlTGFiZWwgLmxpbmtUZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltpZF49XCJ3aWRnZXRfc3RhbmRpbmdzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uLXNlcGFyYXRvcixcbiN0YWJfZGl2aXNpb25fc3RhbmRpbmdzX2NvbnRlbnQgLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uLXNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltpZF49XCJ3aWRnZXRfc3RhbmRpbmdzX3dpZGdldF9cIl0gdWwgdWwsXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IHVsIHVsIHtcbiAgcGFkZGluZy10b3A6IDJweDtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbltpZF49XCJ3aWRnZXRfc3RhbmRpbmdzX3dpZGdldF9cIl0gdWwgdWw6YmVmb3JlLFxuI3RhYl9kaXZpc2lvbl9zdGFuZGluZ3NfY29udGVudCB1bCB1bDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjOTk5O1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cHgpO1xuICBsZWZ0OiAycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDNweDtcbn1cblxuW2lkXj1cIndpZGdldF9zdGFuZGluZ3Nfd2lkZ2V0X1wiXSB1bCB1bCBoNC50ZWFtTmFtZTpiZWZvcmUsXG4jdGFiX2RpdmlzaW9uX3N0YW5kaW5nc19jb250ZW50IHVsIHVsIGg0LnRlYW1OYW1lOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICM5OTk7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDNweDtcbiAgbGVmdDogLTIycHg7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgW2lkXj1cIndpZGdldF9zdGFuZGluZ3Nfd2lkZ2V0X1wiXSB1bCB1bCxcbiAgI3RhYl9kaXZpc2lvbl9zdGFuZGluZ3NfY29udGVudCB1bCB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIH1cbiAgW2lkXj1cIndpZGdldF9zdGFuZGluZ3Nfd2lkZ2V0X1wiXSB1bCB1bCBoNC50ZWFtTmFtZTpiZWZvcmUsXG4gICN0YWJfZGl2aXNpb25fc3RhbmRpbmdzX2NvbnRlbnQgdWwgdWwgaDQudGVhbU5hbWU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbltpZF49XCJ3aWRnZXRfc3RhbmRpbmdzX3dpZGdldF9cIl0gdGg6bm90KC5uYW1lKSxcbiN0YWJfZGl2aXNpb25fc3RhbmRpbmdzX2NvbnRlbnQgdGg6bm90KC5uYW1lKSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudHJbaWRePVwic3RhbmRpbmdfXCJdIHRkLm5hbWUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50cltpZF49XCJzdGFuZGluZ19cIl0gLnRlYW1Mb2dvLXRpbnkge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxudHJbaWRePVwic3RhbmRpbmdfXCJdIC50ZWFtTG9nby10aW55OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzBEQjE0QztcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTVweDtcbiAgd2lkdGg6IDNweDtcbn1cblxuLk5naW5UYWJsZUNvbnRyb2xzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gOXB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTRBNjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OiAycHggMCAjZmZmLCA3cHggMCAjMERCMTRDO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tdGlueSB7XG4gIGxlZnQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xufVxuXG5baWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsICoge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCBoNC50ZWFtTmFtZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbltpZF49XCJ3aWRnZXRfdGVhbV9zdGF0c193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgLnNlYXNvbkRpc3BsYXksXG5baWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsIC5leHBhbmRlZFZpZXcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAubGlua1RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAuc2Vhc29uLXNlcGFyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltpZF49XCJ3aWRnZXRfdGVhbV9zdGF0c193aWRnZXRfXCJdIC5zdGF0VGFibGUgdGQ6Zmlyc3QtY2hpbGQsXG5baWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3RhdFRhYmxlIHRyOm50aC1jaGlsZCgyKSB0aDpmaXJzdC1jaGlsZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyBbaWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsLFxuICAuY29sLW1kLTQgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuICAuY29sLW1kLTMgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCAudGVhbUxvZ28tdGlueSxcbiAgLmNvbC1tZC00IFtpZF49XCJ3aWRnZXRfdGVhbV9zdGF0c193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dvLXRpbnkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbC1tZC0zIFtpZF49XCJ3aWRnZXRfdGVhbV9zdGF0c193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgaDQgPiAqLFxuICAuY29sLW1kLTQgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCBoNCA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTMgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCxcbiAgLmxheW91dC0yNS01MC0yNSAuY29sLW1kLTYgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0gLnNwb3J0VGFibGVMYWJlbCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtMyBbaWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby10aW55LFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiBbaWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsIC50ZWFtTG9nby10aW55IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIFtpZF49XCJ3aWRnZXRfdGVhbV9zdGF0c193aWRnZXRfXCJdIC5zcG9ydFRhYmxlTGFiZWwgaDQgPiAqLFxuICAubGF5b3V0LTI1LTUwLTI1IC5jb2wtbWQtNiBbaWRePVwid2lkZ2V0X3RlYW1fc3RhdHNfd2lkZ2V0X1wiXSAuc3BvcnRUYWJsZUxhYmVsIGg0ID4gKiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG5ib2R5LmFkbWluIC5yZXBvcnQtY29udGFpbmVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudCB7XG4gIG1hcmdpbjogMCAwIDMwcHg7XG59XG5cbiNob21lICNzaXRlQ29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG59XG5cbiNob21lIC50aGVtZS1zdWItbmF2IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4jaG9tZSAjdG9wTmF2UGxhY2Vob2xkZXIge1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuXG4jaG9tZSAjdG9wTmF2Lmhhcy1zaXRlLWxvZ28gLm91dGVyTmF2IC50aGVtZS1tYWluLW5hdiB7XG4gIG1heC13aWR0aDogMTEyNXB4O1xufVxuXG4jdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0uaG9tZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lZGl0X21vZGUgI3RvcE5hdiAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duID4gLnRoZW1lLW5hdi1pdGVtLmhvbWUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5hdi1maXhlZCAjdG9wTmF2Lmhhcy1zaXRlLWxvZ28gLm91dGVyTmF2LFxuLmhhcy1tb2JpbGUtbmF2ICN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYge1xuICBoZWlnaHQ6IDQ1cHg7XG59XG5cbiN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYge1xuICBiYWNrZ3JvdW5kOiAjMDA1NEE2IHVybChcImh0dHA6Ly9hc3NldHMubmdpbi5jb20uczMuYW1hem9uYXdzLmNvbS9zaXRlX2ZpbGVzLzEyNDI1L19zaXRlL2ltYWdlcy9wYXR0ZXJuLnBuZ1wiKSByZXBlYXQteDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwcHg7XG59XG5cbiN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYgLnRoZW1lLW1haW4tbmF2IHtcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG59XG5cbiN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYgLnRoZW1lLW1haW4tbmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi50aGVtZS1uYXYtZm9yd2FyZC5wYWdlX25vZGVfMjUwNzczMyxcbiNQYWdlU2VhcmNoQm94TW9iaWxlTmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI21vYmlsZUxvZ28ge1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHdpZHRoOiA0NXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTEwMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDkwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4jbW9iaWxlVGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBsZWZ0OiAxMDIlO1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZlYXR1cmUgLnNuLW1lZGlhLXNsaWRlciAuc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uZmVhdHVyZSAuc24tbWVkaWEtc2xpZGVyIC5zbGlkZXMgLnNsaWRlIC5zbGlkZS1vdmVybGF5IHtcbiAgcGFkZGluZzogNSU7XG59XG5cbi5mZWF0dXJlIC5zbi1tZWRpYS1zbGlkZXIgLnNsaWRlLXRpdGxlIHtcbiAgbWFyZ2luOiA1JSAwIDElO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zaXplOiAyMzAlO1xufVxuXG4uZmVhdHVyZSAuc24tbWVkaWEtc2xpZGVyIC5zbGlkZS1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMCAwIDElO1xuICBmb250LXNpemU6IDEwMCU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBtYXgtd2lkdGg6IDU1JTtcbn1cblxuLnVzZXJfbW9kZSAuZmVhdHVyZSAubGlua1dyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiAwIDUlIDglO1xufVxuXG4udXNlcl9tb2RlIC5mZWF0dXJlIC5saW5rV3JhcCAucGFnZUVsZW1lbnQubGlua0VsZW1lbnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBjbGVhcjogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAzJTtcbn1cblxuLmhvbWVDdGEgLnNuLWNhbGwtdG8tYWN0aW9uIC5zbi1jYWxsLXRvLWFjdGlvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5ob21lQ3RhIC5zbi1jYWxsLXRvLWFjdGlvbiAuc24tY2FsbC10by1hY3Rpb24tdGl0bGU6YmVmb3JlLCAuaG9tZUN0YSAuc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlOmFmdGVyIHtcbiAgY29udGVudDogJy0nO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmhyLmhyRWxlbWVudCB7XG4gIG1hcmdpbjogMCAwIDMwcHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZGRkO1xuICBoZWlnaHQ6IDA7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbSB7XG4gIHdpZHRoOiAzMC4zMzMzMzMzMzMzMzMzJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAzJTtcbn1cblxuLmN1c3RvbUFnZyAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IC5pdGVtLmV4dGVuZGVkT3B0aW9ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uY3VzdG9tQWdnIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0uZXh0ZW5kZWRPcHRpb25zIGEucnNzTGluayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbS5leHRlbmRlZE9wdGlvbnMgYS5nb1RvTGluay5pY29uIHtcbiAgcGFkZGluZzogMTVweCA2MHB4O1xuICBib3JkZXI6IHNvbGlkIDJweCAjZGRkZGRkO1xuICBjb2xvcjogI2RkZGRkZDtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFpbXBvcnRhbnQ7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbS5leHRlbmRlZE9wdGlvbnMgYS5nb1RvTGluay5pY29uOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbS5leHRlbmRlZE9wdGlvbnMgYS5nb1RvTGluay5pY29uOmFmdGVyIHtcbiAgY29udGVudDogJ1xcZjEwNSc7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY3VzdG9tQWdnIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0uZXh0ZW5kZWRPcHRpb25zIGEuZ29Ub0xpbmsuaWNvbjpob3ZlciB7XG4gIGJvcmRlcjogc29saWQgMnB4ICMwREIxNEM7XG4gIGJhY2tncm91bmQ6ICMwREIxNEM7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY3VzdG9tQWdnIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmFydGljbGVIYXNJbWFnZSAubmV3c0l0ZW1IZWFkZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuYXJ0aWNsZUhhc0ltYWdlIC5uZXdzSXRlbUhlYWRlciA+IGEge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY3VzdG9tQWdnIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLmNvbW1lbnRzQW5kTW9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b21BZ2cgLm5ld3NEYXRlLFxuLmN1c3RvbUFnZyAubmV3c0F1dGhvciB7XG4gIGNvbG9yOiAjQTBBOUIxO1xufVxuXG4uY3VzdG9tQWdnIC5jb25kZW5zZWQgPiBhIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmN1c3RvbUFnZyAuY29uZGVuc2VkIC5kZXRhaWxzIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uY3VzdG9tQWdnIC5jb25kZW5zZWQgPiB1bCBoNCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmN1c3RvbUFnZyAuY29uZGVuc2VkIC50ZWFzZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5jdXN0b21BZ2cgLmV4cGFuZGVkIC5uZXdzVGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b21BZ2cgLmV4cGFuZGVkIC5uZXdzSXRlbUhlYWRlciBoMiB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmN1c3RvbUFnZyAuZXhwYW5kZWQgLm5ld3NJdGVtRWxlbWVudCBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgdGV4dC13ZWlnaHQ6IDYwMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuZmVhdHVyZSAuc24tbWVkaWEtc2xpZGVyIC5zbGlkZS10aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMSU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgLnVzZXJfbW9kZSAuZmVhdHVyZSAubGlua0VsZW1lbnQgaDQgYSB7XG4gICAgcGFkZGluZzogMTVweCAzMHB4O1xuICB9XG4gIC51c2VyX21vZGUgLmZlYXR1cmUgLmxpbmtFbGVtZW50LmFsdExpbmsgaDQgYSB7XG4gICAgcGFkZGluZzogMTNweCAzMHB4O1xuICB9XG4gIC51c2VyX21vZGUgLmZlYXR1cmUgLmxpbmtXcmFwIHtcbiAgICBtYXJnaW46IDAgNSUgNSU7XG4gIH1cbiAgLnVzZXJfbW9kZSAuZmVhdHVyZSAubGlua1dyYXAgLnBhZ2VFbGVtZW50LmxpbmtFbGVtZW50IHtcbiAgICBtYXgtd2lkdGg6IDQ2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICB9XG4gIC5mZWF0dXJlIC5zbi1tZWRpYS1zbGlkZXIgLnNsaWRlLWRlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDg1JTtcbiAgfVxuICAuY3VzdG9tQWdnIC5uZXdzQWdncmVnYXRvckVsZW1lbnQgLml0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5lZGl0X21vZGUgLnNwb25zb3JzIC5oZXJvUGhvdG9FbGVtZW50IGltZyB7XG4gIG1heC13aWR0aDogMTUwcHg7XG59XG5cbi51c2VyX21vZGUgLnNwb25zb3JzIC5zcG9uc29yV3JhcCB7XG4gIG1hcmdpbjogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udXNlcl9tb2RlIC5zcG9uc29ycyAucGFnZUVsIHtcbiAgcGFkZGluZzogMCAzMHB4O1xuICBtaW4td2lkdGg6IDE2LjY2NjY2NjY2NjY2NyUgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udXNlcl9tb2RlIC5zcG9uc29ycyAucGFnZUVsIC5oZXJvUGhvdG9FbGVtZW50IGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICBvcGFjaXR5OiAuNTtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4udXNlcl9tb2RlIC5zcG9uc29ycyAucGFnZUVsIC5oZXJvUGhvdG9FbGVtZW50IGltZzpob3ZlciB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5sYXlvdXRDb250YWluZXIgLnBhZ2VFbGVtZW50IHtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICB9XG4gIC51c2VyX21vZGUgLmZlYXR1cmUgLmxpbmtXcmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMnB4IDAgMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnVzZXJfbW9kZSAuZmVhdHVyZSAubGlua1dyYXAgLnBhZ2VFbGVtZW50LmxpbmtFbGVtZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDAgMnB4IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnVzZXJfbW9kZSAuZmVhdHVyZSAuc24tbWVkaWEtc2xpZGVyIC5zbGlkZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNTAlO1xuICB9XG4gIC51c2VyX21vZGUgLmZlYXR1cmUgLnNuLW1lZGlhLXNsaWRlciAuc2xpZGUtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG4gIC5saW5rRWxlbWVudC5hbHRMaW5rIGg0IGEge1xuICAgIGJvcmRlcjogc29saWQgMnB4ICMwREIxNEM7XG4gICAgY29sb3I6ICMwREIxNEM7XG4gIH1cbiAgLmxpbmtFbGVtZW50LmFsdExpbmsgaDQgYTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC5jdXN0b21BZ2cgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAuaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC51c2VyX21vZGUgLnNwb25zb3JzIC5wYWdlRWwge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVzZXJfbW9kZSAuc3BvbnNvcnMgLnBhZ2VFbCBpbWcge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5sYXlvdXRDb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAjcGFuZWxUd28ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIC51c2VyX21vZGUgLmZlYXR1cmUgLnNuLW1lZGlhLXNsaWRlciAuc2xpZGUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgfVxuICAudXNlcl9tb2RlIC5mZWF0dXJlIC5zbi1tZWRpYS1zbGlkZXIgLnNsaWRlLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDcwJTtcbiAgfVxufVxuIiwiLyogVmFyaWFibGVzICovXG4vLyAxLiBJbXBvcnRzXG4vLyAyLiBGdW5jdGlvbnNcbi8vIDMuIERlZmF1bHRzXG4vLyA0LiBDb2xvcnNcbi8vIDUuIE1peGluc1xuLy8gNi4gQW5pbWF0aW9uc1xuXG4vL0FEREVEXG4kYXNzZXQtcGF0aC1mb3I6IFwiaHR0cDovL2FwcC1hc3NldHMxLnNwb3J0bmdpbi5jb21cIjtcblxuLy8gMS4gQ29sb3JzXG4kYWNjZW50LWNvbG9yOiAjMERCMTRDO1xuJGhpZ2hsaWdodC1jb2xvcjogIzBEQjE0QztcbiRidXR0b24taGlnaGxpZ2h0X3RleHQ6ICMwMDQwN0Y7XG4kYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiRsaW5rLWNvbG9yOiAjMDA1NEE2O1xuJGhvdmVyLWNvbG9yOiAjMERCMTRDO1xuXG4kZGFyazogIzMzMzMzMztcbiRncmF5OiAjQTBBOUIxO1xuJGxpZ2h0LWdyYXk6ICNFMUU4RUQ7XG5cbiRsaW5rLWNvbG9yLW9wYWNpdHk6IHJnYmEoJGxpbmstY29sb3IsMC43KTtcblxuLy8gTGluayBjb2xvcnNcbiRsaW5rLWNvbG9yLWRhcmtlbi01OiBkYXJrZW4oJGxpbmstY29sb3IsIDUlKTtcbiRsaW5rLWNvbG9yLWRhcmtlbi0xMDogZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpO1xuJGxpbmstY29sb3ItZGFya2VuLTE1OiBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSk7XG4kbGluay1jb2xvci1kYXJrZW4tMjA6IGRhcmtlbigkbGluay1jb2xvciwgMjAlKTtcbiRsaW5rLWNvbG9yLWRhcmtlbi0yNTogZGFya2VuKCRsaW5rLWNvbG9yLCAyNSUpO1xuJGxpbmstY29sb3ItZGFya2VuLTMwOiBkYXJrZW4oJGxpbmstY29sb3IsIDMwJSk7XG4kbGluay1jb2xvci1kYXJrZW4tMzU6IGRhcmtlbigkbGluay1jb2xvciwgMzUlKTtcbiRsaW5rLWNvbG9yLWRhcmtlbi00MDogZGFya2VuKCRsaW5rLWNvbG9yLCA0MCUpO1xuJGxpbmstY29sb3ItZGFya2VuLTQ1OiBkYXJrZW4oJGxpbmstY29sb3IsIDQ1JSk7XG4kbGluay1jb2xvci1kYXJrZW4tNTA6IGRhcmtlbigkbGluay1jb2xvciwgNTAlKTtcblxuJGxpbmstY29sb3ItbGlnaHRlbi01OiBsaWdodGVuKCRsaW5rLWNvbG9yLCA1JSk7XG4kbGluay1jb2xvci1saWdodGVuLTEwOiBsaWdodGVuKCRsaW5rLWNvbG9yLCAxMCUpO1xuJGxpbmstY29sb3ItbGlnaHRlbi0xNTogbGlnaHRlbigkbGluay1jb2xvciwgMTUlKTtcbiRsaW5rLWNvbG9yLWxpZ2h0ZW4tMjA6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDIwJSk7XG4kbGluay1jb2xvci1saWdodGVuLTI1OiBsaWdodGVuKCRsaW5rLWNvbG9yLCAyNSUpO1xuJGxpbmstY29sb3ItbGlnaHRlbi0zMDogbGlnaHRlbigkbGluay1jb2xvciwgMzAlKTtcbiRsaW5rLWNvbG9yLWxpZ2h0ZW4tMzU6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDM1JSk7XG4kbGluay1jb2xvci1saWdodGVuLTQwOiBsaWdodGVuKCRsaW5rLWNvbG9yLCA0MCUpO1xuJGxpbmstY29sb3ItbGlnaHRlbi00NTogbGlnaHRlbigkbGluay1jb2xvciwgNDUlKTtcbiRsaW5rLWNvbG9yLWxpZ2h0ZW4tNTA6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDUwJSk7XG5cbi8vIEJhY2tncm91bmQgY29sb3JzXG4kYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tNTogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLCA1JSk7XG4kYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tMTA6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvciwgMTAlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWRhcmtlbi0xNTogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLCAxNSUpO1xuJGJhY2tncm91bmQtY29sb3ItZGFya2VuLTIwOiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3IsIDIwJSk7XG4kYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tMjU6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvciwgMjUlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWRhcmtlbi0zMDogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLCAzMCUpO1xuJGJhY2tncm91bmQtY29sb3ItZGFya2VuLTM1OiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3IsIDM1JSk7XG4kYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tNDA6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvciwgNDAlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWRhcmtlbi00NTogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLCA0NSUpO1xuJGJhY2tncm91bmQtY29sb3ItZGFya2VuLTUwOiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3IsIDUwJSk7XG5cbiRiYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0ZW4tNTogbGlnaHRlbigkYmFja2dyb3VuZC1jb2xvciwgNSUpO1xuJGJhY2tncm91bmQtY29sb3ItbGlnaHRlbi0xMDogbGlnaHRlbigkYmFja2dyb3VuZC1jb2xvciwgMTAlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0ZW4tMTU6IGxpZ2h0ZW4oJGJhY2tncm91bmQtY29sb3IsIDE1JSk7XG4kYmFja2dyb3VuZC1jb2xvci1saWdodGVuLTIwOiBsaWdodGVuKCRiYWNrZ3JvdW5kLWNvbG9yLCAyMCUpO1xuJGJhY2tncm91bmQtY29sb3ItbGlnaHRlbi0yNTogbGlnaHRlbigkYmFja2dyb3VuZC1jb2xvciwgMjUlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0ZW4tMzA6IGxpZ2h0ZW4oJGJhY2tncm91bmQtY29sb3IsIDMwJSk7XG4kYmFja2dyb3VuZC1jb2xvci1saWdodGVuLTM1OiBsaWdodGVuKCRiYWNrZ3JvdW5kLWNvbG9yLCAzNSUpO1xuJGJhY2tncm91bmQtY29sb3ItbGlnaHRlbi00MDogbGlnaHRlbigkYmFja2dyb3VuZC1jb2xvciwgNDAlKTtcbiRiYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0ZW4tNDU6IGxpZ2h0ZW4oJGJhY2tncm91bmQtY29sb3IsIDQ1JSk7XG4kYmFja2dyb3VuZC1jb2xvci1saWdodGVuLTUwOiBsaWdodGVuKCRiYWNrZ3JvdW5kLWNvbG9yLCA1MCUpO1xuXG4vLyBBY2NlbnQgY29sb3JzXG4kYWNjZW50LWNvbG9yLWRhcmtlbi01OiBkYXJrZW4oJGFjY2VudC1jb2xvciwgNSUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMTA6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAxMCUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMTU6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAxNSUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMjA6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAyMCUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMjU6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAyNSUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMzA6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAzMCUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tMzU6IGRhcmtlbigkYWNjZW50LWNvbG9yLCAzNSUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tNDA6IGRhcmtlbigkYWNjZW50LWNvbG9yLCA0MCUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tNDU6IGRhcmtlbigkYWNjZW50LWNvbG9yLCA0NSUpO1xuJGFjY2VudC1jb2xvci1kYXJrZW4tNTA6IGRhcmtlbigkYWNjZW50LWNvbG9yLCA1MCUpO1xuXG4kYWNjZW50LWNvbG9yLWxpZ2h0ZW4tNTogbGlnaHRlbigkYWNjZW50LWNvbG9yLCA1JSk7XG4kYWNjZW50LWNvbG9yLWxpZ2h0ZW4tMTA6IGxpZ2h0ZW4oJGFjY2VudC1jb2xvciwgMTAlKTtcbiRhY2NlbnQtY29sb3ItbGlnaHRlbi0xNTogbGlnaHRlbigkYWNjZW50LWNvbG9yLCAxNSUpO1xuJGFjY2VudC1jb2xvci1saWdodGVuLTIwOiBsaWdodGVuKCRhY2NlbnQtY29sb3IsIDIwJSk7XG4kYWNjZW50LWNvbG9yLWxpZ2h0ZW4tMjU6IGxpZ2h0ZW4oJGFjY2VudC1jb2xvciwgMjUlKTtcbiRhY2NlbnQtY29sb3ItbGlnaHRlbi0zMDogbGlnaHRlbigkYWNjZW50LWNvbG9yLCAzMCUpO1xuJGFjY2VudC1jb2xvci1saWdodGVuLTM1OiBsaWdodGVuKCRhY2NlbnQtY29sb3IsIDM1JSk7XG4kYWNjZW50LWNvbG9yLWxpZ2h0ZW4tNDA6IGxpZ2h0ZW4oJGFjY2VudC1jb2xvciwgNDAlKTtcbiRhY2NlbnQtY29sb3ItbGlnaHRlbi00NTogbGlnaHRlbigkYWNjZW50LWNvbG9yLCA0NSUpO1xuJGFjY2VudC1jb2xvci1saWdodGVuLTUwOiBsaWdodGVuKCRhY2NlbnQtY29sb3IsIDUwJSk7XG5cbi8vIEhvdmVyIGNvbG9yc1xuJGhvdmVyLWNvbG9yLWRhcmtlbi01OiBkYXJrZW4oJGhvdmVyLWNvbG9yLCA1JSk7XG4kaG92ZXItY29sb3ItZGFya2VuLTEwOiBkYXJrZW4oJGhvdmVyLWNvbG9yLCAxMCUpO1xuJGhvdmVyLWNvbG9yLWRhcmtlbi0xNTogZGFya2VuKCRob3Zlci1jb2xvciwgMTUlKTtcbiRob3Zlci1jb2xvci1kYXJrZW4tMjA6IGRhcmtlbigkaG92ZXItY29sb3IsIDIwJSk7XG4kaG92ZXItY29sb3ItZGFya2VuLTI1OiBkYXJrZW4oJGhvdmVyLWNvbG9yLCAyNSUpO1xuJGhvdmVyLWNvbG9yLWRhcmtlbi0zMDogZGFya2VuKCRob3Zlci1jb2xvciwgMzAlKTtcbiRob3Zlci1jb2xvci1kYXJrZW4tMzU6IGRhcmtlbigkaG92ZXItY29sb3IsIDM1JSk7XG4kaG92ZXItY29sb3ItZGFya2VuLTQwOiBkYXJrZW4oJGhvdmVyLWNvbG9yLCA0MCUpO1xuJGhvdmVyLWNvbG9yLWRhcmtlbi00NTogZGFya2VuKCRob3Zlci1jb2xvciwgNDUlKTtcbiRob3Zlci1jb2xvci1kYXJrZW4tNTA6IGRhcmtlbigkaG92ZXItY29sb3IsIDUwJSk7XG5cbiRob3Zlci1jb2xvci1saWdodGVuLTU6IGxpZ2h0ZW4oJGhvdmVyLWNvbG9yLCA1JSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0xMDogbGlnaHRlbigkaG92ZXItY29sb3IsIDEwJSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0xNTogbGlnaHRlbigkaG92ZXItY29sb3IsIDE1JSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0yMDogbGlnaHRlbigkaG92ZXItY29sb3IsIDIwJSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0yNTogbGlnaHRlbigkaG92ZXItY29sb3IsIDI1JSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0zMDogbGlnaHRlbigkaG92ZXItY29sb3IsIDMwJSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi0zNTogbGlnaHRlbigkaG92ZXItY29sb3IsIDM1JSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi00MDogbGlnaHRlbigkaG92ZXItY29sb3IsIDQwJSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi00NTogbGlnaHRlbigkaG92ZXItY29sb3IsIDQ1JSk7XG4kaG92ZXItY29sb3ItbGlnaHRlbi01MDogbGlnaHRlbigkaG92ZXItY29sb3IsIDUwJSk7XG5cbi8vIEhpZ2hsaWdodCBjb2xvcnNcbiRoaWdobGlnaHQtY29sb3ItZGFya2VuLTU6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0xMDogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDEwJSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0xNTogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDE1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0yMDogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDIwJSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0yNTogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDI1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0zMDogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDMwJSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi0zNTogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDM1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi00MDogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDQwJSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi00NTogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDQ1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWRhcmtlbi01MDogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDUwJSk7XG5cbiRoaWdobGlnaHQtY29sb3ItbGlnaHRlbi01OiBsaWdodGVuKCRoaWdobGlnaHQtY29sb3IsIDUlKTtcbiRoaWdobGlnaHQtY29sb3ItbGlnaHRlbi0xMDogbGlnaHRlbigkaGlnaGxpZ2h0LWNvbG9yLCAxMCUpO1xuJGhpZ2hsaWdodC1jb2xvci1saWdodGVuLTE1OiBsaWdodGVuKCRoaWdobGlnaHQtY29sb3IsIDE1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWxpZ2h0ZW4tMjA6IGxpZ2h0ZW4oJGhpZ2hsaWdodC1jb2xvciwgMjAlKTtcbiRoaWdobGlnaHQtY29sb3ItbGlnaHRlbi0yNTogbGlnaHRlbigkaGlnaGxpZ2h0LWNvbG9yLCAyNSUpO1xuJGhpZ2hsaWdodC1jb2xvci1saWdodGVuLTMwOiBsaWdodGVuKCRoaWdobGlnaHQtY29sb3IsIDMwJSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWxpZ2h0ZW4tMzU6IGxpZ2h0ZW4oJGhpZ2hsaWdodC1jb2xvciwgMzUlKTtcbiRoaWdobGlnaHQtY29sb3ItbGlnaHRlbi00MDogbGlnaHRlbigkaGlnaGxpZ2h0LWNvbG9yLCA0MCUpO1xuJGhpZ2hsaWdodC1jb2xvci1saWdodGVuLTQ1OiBsaWdodGVuKCRoaWdobGlnaHQtY29sb3IsIDQ1JSk7XG4kaGlnaGxpZ2h0LWNvbG9yLWxpZ2h0ZW4tNTA6IGxpZ2h0ZW4oJGhpZ2hsaWdodC1jb2xvciwgNTAlKTtcblxuLy8gQnV0dG9uIGhpZ2hsaWdodCB0ZXh0IGNvbG9yc1xuJGJ1dHRvbi1oaWdobGlnaHQtdGV4dC1kYXJrZW4tNTogZGFya2VuKCRidXR0b24taGlnaGxpZ2h0X3RleHQsIDUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTEwOiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMTAlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTE1OiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMTUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTIwOiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMjAlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTI1OiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMjUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTMwOiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMzAlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTM1OiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMzUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTQwOiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgNDAlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTQ1OiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgNDUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtZGFya2VuLTUwOiBkYXJrZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgNTAlKTtcblxuJGJ1dHRvbi1oaWdobGlnaHQtdGV4dC1saWdodGVuLTU6IGxpZ2h0ZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgNSUpO1xuJGJ1dHRvbi1oaWdobGlnaHQtdGV4dC1saWdodGVuLTEwOiBsaWdodGVuKCRidXR0b24taGlnaGxpZ2h0X3RleHQsIDEwJSk7XG4kYnV0dG9uLWhpZ2hsaWdodC10ZXh0LWxpZ2h0ZW4tMTU6IGxpZ2h0ZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMTUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtbGlnaHRlbi0yMDogbGlnaHRlbigkYnV0dG9uLWhpZ2hsaWdodF90ZXh0LCAyMCUpO1xuJGJ1dHRvbi1oaWdobGlnaHQtdGV4dC1saWdodGVuLTI1OiBsaWdodGVuKCRidXR0b24taGlnaGxpZ2h0X3RleHQsIDI1JSk7XG4kYnV0dG9uLWhpZ2hsaWdodC10ZXh0LWxpZ2h0ZW4tMzA6IGxpZ2h0ZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgMzAlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtbGlnaHRlbi0zNTogbGlnaHRlbigkYnV0dG9uLWhpZ2hsaWdodF90ZXh0LCAzNSUpO1xuJGJ1dHRvbi1oaWdobGlnaHQtdGV4dC1saWdodGVuLTQwOiBsaWdodGVuKCRidXR0b24taGlnaGxpZ2h0X3RleHQsIDQwJSk7XG4kYnV0dG9uLWhpZ2hsaWdodC10ZXh0LWxpZ2h0ZW4tNDU6IGxpZ2h0ZW4oJGJ1dHRvbi1oaWdobGlnaHRfdGV4dCwgNDUlKTtcbiRidXR0b24taGlnaGxpZ2h0LXRleHQtbGlnaHRlbi01MDogbGlnaHRlbigkYnV0dG9uLWhpZ2hsaWdodF90ZXh0LCA1MCUpO1xuXG5cbi8vIDEuIEltcG9ydHNcbi8vXG5cbi8vIDIuIEZ1bmN0aW9uc1xuQGZ1bmN0aW9uIGVtKCR0YXJnZXQpIHtcbiAgQHJldHVybiAkdGFyZ2V0ICogMXB4O1xufVxuQGZ1bmN0aW9uIHJlbSgkdGFyZ2V0KSB7XG4gIEByZXR1cm4gJHRhcmdldCAqIDFweDtcbn1cblxuLy8gMy4gRGVmYXVsdHNcbiR0aGVtZTogY3VzdG9tO1xuXG5AaW1wb3J0IHVybCgvL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TGF0bzo0MDAsNzAwLDQwMGl0YWxpYyw3MDBpdGFsaWMsMTAwLDEwMGl0YWxpYywzMDAsMzAwaXRhbGljLDkwMCw5MDBpdGFsaWN8VGl0aWxsaXVtK1dlYjo0MDAsMjAwLDIwMGl0YWxpYywzMDAsMzAwaXRhbGljLDQwMGl0YWxpYyw2MDAsNjAwaXRhbGljLDcwMCw3MDBpdGFsaWMsOTAwKTtcblxuJGZvbnRPbmU6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiRmb250VHdvOiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiRwYWdlLWhlYWRpbmctZm9udDogYm9sZCAzOHB4LzEuMjUgJGZvbnRPbmU7XG4kYmFzZS1mb250LXNpemU6IDE2O1xuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNTtcbiRiYXNlLWZvbnQtd2VpZ2h0OiA0MDA7XG5cbiR0cmFuc2l0aW9uLXN0YW5kYXJkOiAuMnMgZWFzZS1pbjtcbiR0cmFuc2l0aW9uLWxpbmVhcjogLjJzIGxpbmVhcjtcblxuJGJhc2UtcGFkZGluZzogcmVtKDI1KTtcbiRiYXNlLXBhZGRpbmctc206IHJlbSgxMCk7XG4kYm9vdHN0cmFwLXBhZGRpbmctc206IDEwO1xuJGJvb3RzdHJhcC1wYWRkaW5nLW1kOiAxNTtcblxuJHNuQWRtaW5CYXJIZWlnaHQ6IDMwcHg7XG4kc2l0ZS1mb290ZXItaGVpZ2h0OiA0NnB4O1xuXG4kbWF4V2lkdGg6MTAwMHB4O1xuJGRlc2t0b3BfbmF2SGVpZ2h0OjE0MHB4O1xuJGRlc2t0b3BfbmF2SGVpZ2h0X3NsaW06MTIwcHg7XG4kdGFibGV0X25hdkhlaWdodDo4MHB4O1xuJG1vYmlsZV9uYXZIZWlnaHQ6NjBweDtcbiR0b3AtbmF2LWhlaWdodDo1NXB4O1xuJHRvcC1uYXYtaGVpZ2h0LXNsaW06NDVweDtcblxuJGJvZHlDb3B5Q29sb3JPbmU6IzMzMztcbiRib2R5Q29weUNvbG9yVHdvOiM2NjY7XG4kYm9keUNvcHlDb2xvclRocmVlOiM5OTk7XG5cbiRib3JkZXJDb2xvcjojZGRkO1xuJGJvcmRlcldpZHRoOjJweDtcblxuXG4vLyA0LiBDb2xvcnNcbiRuYXZfc2Vjb25kX2xldmVsOiAkYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tNTtcbiRuYXZfdGhpcmRfbGV2ZWw6ICRiYWNrZ3JvdW5kLWNvbG9yLWRhcmtlbi0xMDtcbiRuYXZfZm91cnRoX2xldmVsOiAkYmFja2dyb3VuZC1jb2xvci1kYXJrZW4tMTU7XG5cbiR0YWJsZS1ib2R5LWJhY2tncm91bmQ6ICNlZWU7XG4kdGFibGUtY2VsbC1zcGFjaW5nOiAycHg7XG4kdGFibGUtaGVhZGVyLXBhZGRpbmctdmVydGljYWw6IDNweDtcbiR0YWJsZS1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAxMnB4O1xuJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbDogMnB4O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsOiAxMnB4O1xuJHRhYmxlLXNvcnQtaWNvbi1zaXplOiAxNHB4O1xuJHRhYmxlLXNvcnQtaWNvbi1wYWRkaW5nOiAkdGFibGUtc29ydC1pY29uLXNpemUgKyA0cHg7XG4kdGFibGUtcm93LW1pbi1oZWlnaHQ6IDMwcHg7XG5cblxuLy8gNS4gTWl4aW5zXG5cbi8vIFBhZ2UgRWxlbWVudCBCcmVha3BvaW50c1xuLy8gTWl4aW4gZm9yIGFueSBwYWdlIGVsZW1lbnQgdGhhdCBsaXZlcyB3aXRoaW4gdGhlIGJvb3RzdHJhcCBjb2x1bW5zLlxuLy8gVG8gdXNlIHBhc3MgdGhlIHBpeGVsIHZhbHVlIG9mIHRoZSBicmVha3BvaW50KHMpIGJlbG93IDc2OCB0aGF0IHlvdSB3YW50IHRvIHRhcmdldC5cbi8vIFRoaXMgd2lsbCBnZW5lcmF0ZSB0aGUgbmVjY2Vzc2FyeSBtZWRpYSBxdWVyaWVzIGZvciBhbGwgcG9zc2libGUgY29sdW1uIHNjZW5hcmlvcyxcbi8vIGFuZCB3aWxsIGlnbm9yZSBhbnkgdGhhdCBkb24ndCBuZWVkIHRvIGJlIHVzZWQuXG5AbWl4aW4gcGFnZS1lbGVtZW50LWJyZWFrKCRicmVhayl7XG4gIC8vIE1hcCBkZWZpbmluZyBjb2x1bW4gc2l6ZXMgd2l0aGluIHRoZSBcIm1kXCIgYm9vdHN0cmFwIHJhbmdlXG4gICRjb2x1bW5zOiAoXG4gICAgOTogKCgkYnJlYWsvLjc1KSArICgkYm9vdHN0cmFwLXBhZGRpbmctbWQgKiAyKSksXG4gICAgODogKCgkYnJlYWsvLjY2NjY2NjY2NjY2KSArICgkYm9vdHN0cmFwLXBhZGRpbmctbWQgKiAyKSksXG4gICAgNjogKCgkYnJlYWsvLjUwKSArICgkYm9vdHN0cmFwLXBhZGRpbmctbWQgKiAyKSksXG4gICAgNDogKCgkYnJlYWsvLjMzMzMzMzMzMzMpICsgKCRib290c3RyYXAtcGFkZGluZy1tZCAqIDIpKSxcbiAgICAzOiAoKCRicmVhay8uMjUpICsgKCRib290c3RyYXAtcGFkZGluZy1tZCAqIDIpKVxuICApO1xuICAvLyBJbml0aWFsIGJyZWFrcG9pbnQgKHR5cGljYWxseSB3aXRoaW4gdGhlIFwic21cIiBib290c3RyYXAgcmFuZ2UpXG4gIC8vIE5vdGU6IEluaXRhbCBicmVha3BvaW50IGFsc28gaW5jbHVkZXMgdGhlIHBhbmVsIHBhZGRpbmcsIHNvIGFueSB2YWx1ZSB5b3UgcGFzcyBpbnRvICRicmVhayB3aWxsIGhhdmUgdGhlIHBhbmVsIHBhZGRpbmcgYWRkZWQgdG8gaXQuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogKCgkYnJlYWsgKyAoJGJvb3RzdHJhcC1wYWRkaW5nLXNtICogMikpICogMXB4KSl7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgLy8gQ3ljbGUgdGhyb3VnaCBjb2x1bW5zIG1hcCBjaGVja2luZyBpZiB2YWx1ZXMgYXJlIHdpdGhpbiB0aGUgXCJtZFwiIHJhbmdlIGFuZCBleHBvcnRpbmcgbWVkaWEgcXVlcmllcyBmb3IgdGhvc2UgdGhhdCBtYXRjaFxuICBAZWFjaCAkY29sdW1uLCAkdmFsdWUgaW4gJGNvbHVtbnMge1xuICAgIEBpZiAkdmFsdWUgPiA3NjggYW5kICR2YWx1ZSA8IDEwMjUge1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6ICgkdmFsdWUgKiAxcHgpKXtcbiAgICAgICAgLmNvbC1tZC0jeyRjb2x1bW59e1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkdmFsdWUgPiAxMDI1IHsgLy8gTmVlZCB0byBmaW5kIGEgd2F5IHRvIGxvcHAgdGhlc2UgaW50byBvbmUgY2hhaW5lZCBzZWxlY3Rvciwgbm90IG11bHRpcGxlIG1lZGlhIHF1ZXJpZXMuXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KXtcbiAgICAgICAgLmNvbC1tZC0jeyRjb2x1bW59e1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBkaXNwbGF5Q2VudGVyKCRtYXhXaWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC13aWR0aDogJG1heFdpZHRoO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHJhdGlvLW9yLXdpZHRoLCAkaGVpZ2h0OiBudWxsKSB7XG4gICRwYWRkaW5nOiBpZigkaGVpZ2h0LCBwZXJjZW50YWdlKCRoZWlnaHQvJHJhdGlvLW9yLXdpZHRoKSwgcGVyY2VudGFnZSgxLyRyYXRpby1vci13aWR0aCkpO1xuICAmOmJlZm9yZSB7IGNvbnRlbnQ6Jyc7IGZsb2F0OiBsZWZ0OyBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7ICB9XG4gICY6YWZ0ZXIgIHsgY29udGVudDonJzsgZGlzcGxheTogdGFibGU7IGNsZWFyOiBib3RoOyAgfVxufVxuQG1peGluIG1vdmUtdG8tYm90dG9te1xuICB0b3A6IGluaXRpYWw7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xufVxuQG1peGluIHZlcnRpY2FsLWFsaWduIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbkBtaXhpbiB0cnVuY2F0ZS10ZXh0e1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgLW8tdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5AZnVuY3Rpb24gZHluYW1pYy10ZXh0LWNvbG9yKCRjb2xvcikge1xuICBAaWYgKGxpZ2h0bmVzcygkY29sb3IpID4gNTApIHtcbiAgICBAcmV0dXJuICMwMDAwMDA7IC8vIExpZ2h0ZXIgYmFja2dyb3VuZCwgcmV0dXJuIGRhcmsgY29sb3JcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAjZmZmZmZmOyAvLyBEYXJrZXIgYmFja2dyb3VuZCwgcmV0dXJuIGxpZ2h0IGNvbG9yXG4gIH1cbn1cbkBtaXhpbiBsaW5lLXBhdHRlcm4oJGxpbmUtY29sb3I6I2FhYSwkZ2FwLWNvbG9yOnRyYW5zcGFyZW50KSB7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxNjJkZWcsICRsaW5lLWNvbG9yIDBweCwgJGdhcC1jb2xvciAxcHgsICRnYXAtY29sb3IgM3B4LCAkbGluZS1jb2xvciA0cHgpO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KC03MmRlZywgJGxpbmUtY29sb3IgMHB4LCAkZ2FwLWNvbG9yIDFweCwgJGdhcC1jb2xvciAzcHgsICRsaW5lLWNvbG9yIDRweCk7XG59XG5AbWl4aW4gbGluZS1wYXR0ZXJuLWJvcmRlcigkaGVpZ2h0OjEsICRwb3M6dG9wKXtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwOyAvLyBzdGFydCBieSBrbm9ja2luZyBvdXQgYWxsIHRoZSBib3JkZXJzXG4gIGJvcmRlci0jeyRwb3N9LWNvbG9yOiAjZGRkO1xuICBib3JkZXItI3skcG9zfS13aWR0aDogKCRoZWlnaHQgKiAxcHgpICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gc3BlY2lhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDlweCk7IC8vIEVuc3VyZXMgdGhhdCB0aGUgYm94IHNoYWRvdyBzaG93cyBhdCBzbWFsbCBzaXplc1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBib3gtc2hhZG93OlxuICAgIDJweCAwICNmZmYsXG4gICAgN3B4IDAgJGFjY2VudC1jb2xvcjtcbn1cbkBtaXhpbiBjb250ZW50LXRhYi1pdGVtKCkge1xuICB0cmFuc2l0aW9uOiBib3JkZXIgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AbWl4aW4gY29udGVudC10YWIoKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IC45ZW07XG4gIGZvbnQ6IDQwMCAxM3B4LzEuNSAkZm9udE9uZTtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggd2hpdGU7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggd2hpdGU7XG4gIGJvcmRlci1yaWdodDogc29saWQgMXB4IHdoaXRlO1xuICBjb2xvcjogJGRhcms7XG59XG5AbWl4aW4gdGFibGUge1xuICAvLyBBZGQgdHJhbnNwYXJlbnQgc3BhY2luZyBiZXR3ZWVuIGNlbGxzIHVzaW5nIGJvcmRlcnNcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IC8vIE92ZXJyaWRlIHNldHRpbmcgZnJvbSBlbHNld2hlcmVcbiAgbWFyZ2luLXRvcDogJHRhYmxlLWNlbGwtc3BhY2luZztcbiAgLy8gQXBwbHkgdHJhbnNwYXJlbnQgYm9yZGVyIHRvIHJpZ2h0IGFuZCBib3R0b20gb2YgZXZlcnkgY2VsbCBhbmQgaGVhZGluZ1xuICB0ZCwgdGgge1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3ggIWltcG9ydGFudDsgLy8gIWltcG9ydGFudCBpcyBuZWNlc3NhcnkgYnV0IEkgZG9uJ3Qga25vdyB3aHlcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1jZWxsLXNwYWNpbmcgJHRhYmxlLWNlbGwtc3BhY2luZyAwO1xuICAgIC8vIERvbid0IGFwcGx5IHJpZ2h0IGJvcmRlciB0byBsYXN0IGNlbGwgb3IgaGVhZGluZyBpbiBhIHJvd1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIC8vIERvbid0IGFwcGx5IGJvdHRvbSBib3JkZXIgdG8gY2VsbHMgaW4gbGFzdCByb3cgKGFzc3VtZXMgVEhzIGFyZSBuZXZlciBpbiBsYXN0IHJvdylcbiAgdHI6bGFzdC1jaGlsZCB7XG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBib3JkZXItY29sbGFwc2U6IGluaXRpYWw7IC8vIFNvbWV3aGVyZSB0aGlzIGlzIHNldCB0byBkZWZhdWx0IHRvICdjb2xsYXBzZScuIFNob3VsZCByZW1vdmUgZGVmYXVsdD9cbiAgd2lkdGg6IDEwMCU7XG5cbiAgdGJvZHkgdGQgeyBiYWNrZ3JvdW5kOiAkdGFibGUtYm9keS1iYWNrZ3JvdW5kOyB9XG59XG5AbWl4aW4gdGFibGUtdGQge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6ICR0YWJsZS1yb3ctbWluLWhlaWdodDsgLy8gQWN0cyBhcyBtaW4taGVpZ2h0IG9uIHRhYmxlIGNlbGxzXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNFMUU4RUQ7XG5cbiAgJi5oaWdobGlnaHQgeyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG59XG5AbWl4aW4gdGFibGUtdGgge1xuICBoZWlnaHQ6ICR0YWJsZS1yb3ctbWluLWhlaWdodDsgLy8gQWN0cyBhcyBtaW4taGVpZ2h0IG9uIHRhYmxlIGNlbGxzXG4gIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7IC8vIFJlcGxhY2UgYWxsIGluc3RhbmNlcyBvZiB0aGlzIHdpdGggdGhlbWUgY29sb3IgdmFyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogbm9uZTtcbn1cbkBtaXhpbiB0YWJsZS10aC10ZXh0IHtcbiAgY29sb3I6ICRkYXJrO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBmb250OiA2MDAgMTJweC8xLjIgJGZvbnRPbmU7XG59XG5AbWl4aW4gdGFibGUtdGVhbS1sb2dvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBtYXJnaW46IDJweCA2cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cbkBtaXhpbiBidXR0b24tc3R5bGV7XG4gIGJhY2tncm91bmQ6JGxpbmstY29sb3I7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkbGluay1jb2xvci1kYXJrZW4tMjA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICBmb250LWZhbWlseTokZm9udE9uZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tICR0cmFuc2l0aW9uLXN0YW5kYXJkLCBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDokbGluay1jb2xvci1kYXJrZW4tMjA7XG4gIH1cbn1cbkBtaXhpbiB0ZXh0LWZpZWxkLXN0eWxle1xuICBoZWlnaHQ6MjhweDtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGZvbnQtZmFtaWx5OiRmb250VHdvO1xuICBmb250LXNpemU6Ljc1ZW07XG4gIGJhY2tncm91bmQ6I2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuMXMgZWFzZTtcbiAgJjpob3ZlcntcbiAgICBib3gtc2hhZG93Omluc2V0IDAgMXB4IDNweCAkYm9yZGVyQ29sb3I7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvZHlDb3B5Q29sb3JUd287XG4gIH1cbiAgJjpmb2N1c3tcbiAgICBib3gtc2hhZG93Omluc2V0IDAgMXB4IDNweCAkYm9yZGVyQ29sb3I7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGxpbmstY29sb3I7XG4gICAgb3V0bGluZTowO1xuICB9XG59XG5AbWl4aW4gZHJvcGRvd24tc3R5bGV7XG4gIGhlaWdodDoyOHB4O1xuICBmb250LWZhbWlseTokZm9udFR3bztcbiAgZm9udC1zaXplOi43NWVtO1xuICBiYWNrZ3JvdW5kOiNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIC4xcyBlYXNlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAmOmhvdmVye1xuICAgIGJveC1zaGFkb3c6MCAxcHggM3B4ICRib3JkZXJDb2xvcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9keUNvcHlDb2xvclR3bztcbiAgfVxuICAmOmZvY3Vze1xuICAgIGJveC1zaGFkb3c6MCAxcHggM3B4ICRib3JkZXJDb2xvcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGluay1jb2xvcjtcbiAgICBvdXRsaW5lOjA7XG4gIH1cbn1cbkBtaXhpbiBjYXB0aW9uLXN0eWxlIHtcbiAgY29sb3I6ICRib2R5Q29weUNvbG9yVHdvO1xuICBmb250LXNpemU6IHJlbSgxMik7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBtaXhpbiBsaXN0LWl0ZW0ge1xuICBwYWRkaW5nOiAkYmFzZS1wYWRkaW5nIDA7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoKTtcbiAgJjpudGgtb2YtdHlwZSgxKXtib3JkZXI6bm9uZTt9XG59XG5AbWl4aW4gbGluay1pY29uLWxlZnQge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6cmVtKDE0KTtcbiAgdG9wOjA7XG4gIGxlZnQ6NXB4O1xufVxuQG1peGluIHNwb3J0LXRhYmxlLWxhYmVsIHtcbiAgQGluY2x1ZGUgc3BlY2lhbC1oZWFkZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJGljb24tc2l6ZTogMjBweDtcbiAgJGljb24tc3BhY2luZzogMTBweDtcblxuICAudGVhbUxvZ28tdGlueSB7XG4gICAgbGVmdDogMTRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNHB4O1xuICB9XG5cbiAgKiB7IGNvbG9yOiBpbmhlcml0OyB9XG5cbiAgaDQudGVhbU5hbWUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAkaWNvbi1zaXplICsgJGljb24tc3BhY2luZztcbiAgfVxuXG4gIC5zZWFzb25EaXNwbGF5LFxuICAuZXhwYW5kZWRWaWV3IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5saW5rVGV4dCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zZWFzb24tc2VwYXJhdG9yIHsgZGlzcGxheTogbm9uZTsgfVxufVxuQG1peGluIHNwb3J0LXRhYmxlLWxhYmVsLXNob3J0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgLnRlYW1Mb2dvLXRpbnkgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgaDQgPiAqIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5AbWl4aW4gbGluay13aXRoLWFycm93KCkge1xuICBjb2xvcjogJGFjY2VudF9jb2xvcjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbG9yOiAkbGlua19jb2xvcjtcbiAgICBjb250ZW50OiAnXFxmMDYxJzsgLy8gZmEtYXJyb3ctcmlnaHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgbWFyZ2luOiAtLjFlbSAwIDAgLjRlbTtcbiAgICBmb250LXNpemU6IC45ZW07XG4gIH1cbn1cbiVjbGVhcmZpeCB7XG4gICp6b29tOiAxO1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbkBtaXhpbiB3b3JkLXdyYXAoKSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuQG1peGluIGZvbnQtc21vb3RoaW5nKCl7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyA2LiBBbmltYXRpb25zXG5ALXdlYmtpdC1rZXlmcmFtZXMgZHJvcGRvd24tc2Vhc29uIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiA5MCU7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDEwMCU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZHJvcGRvd24tc2Vhc29uIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiA5MCU7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDEwMCU7XG4gIH1cbn1cblxuLy9BRE1JTlxuLy8gTUlYSU5TXG5cbkBtaXhpbiBuby1zZWxlY3Qge1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuXG4vLyBJQ09OU1xuQG1peGluIGZhLWljb24ge1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG59XG5AbWl4aW4gZmEtaWNvbi1sZyB7XG4gIEBpbmNsdWRlIGZhLWljb247XG4gIGZvbnQtc2l6ZTogMS4zMzMzMzMzM2VtO1xufVxuQG1peGluIGZhLWljb24tMngge1xuICBAaW5jbHVkZSBmYS1pY29uO1xuICBmb250LXNpemU6IDJlbTtcbn1cbkBtaXhpbiBmYS1pY29uLTN4IHtcbiAgQGluY2x1ZGUgZmEtaWNvbjtcbiAgZm9udC1zaXplOiAzZW07XG59XG5AbWl4aW4gZmEtaWNvbi00eCB7XG4gIEBpbmNsdWRlIGZhLWljb247XG4gIGZvbnQtc2l6ZTogNGVtO1xufVxuQG1peGluIGZhLWljb24tNXgge1xuICBAaW5jbHVkZSBmYS1pY29uO1xuICBmb250LXNpemU6IDVlbTtcbn1cblxuXG4vLyBGT05UUyAtIGp1c3QgZ3Vlc3NpbmcgdW50aWwgd2UgaGF2ZSBXaGl0bmV5XG4kc24tZm9udC13ZWlnaHQtbGlnaHQ6IDEwMDtcbiRzbi1mb250LXdlaWdodC1ub3JtYWw6IDMwMDtcbiRzbi1mb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiRzbi1mb250LXdlaWdodC1oZWF2eTogNzAwO1xuXG4kc24tZm9udC1zaXplLXhzOiAxMHB4O1xuJHNuLWZvbnQtc2l6ZS1zbTogMTJweDtcbiRzbi1mb250LXNpemUtbWQ6IDE0cHg7XG4kc24tZm9udC1zaXplLWxnOiAxNnB4O1xuJHNuLWZvbnQtc2l6ZS14bDogMThweDtcblxuQG1peGluIHNuLWRlZmF1bHQtZm9udCB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyAvLyB0ZW1wIHVudGlsIHdlIGdldCBXaGl0bmV5IGluc3RhbGxlZFxufVxuXG4vLyBTSEFET1dTXG5cblxuLy8gR1JBRElFTlRTXG5cbkBtaXhpbiBzbi1jbGlja2FibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSwgI2YxZjNmNCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiOWMxYzY7XG59XG5cbkBtaXhpbiBzbi1jbGlja2FibGUtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2YxZjNmNCwgd2hpdGUpO1xuICBib3JkZXItY29sb3I6ICM4MDhmOTg7XG59XG5cbkBtaXhpbiBzbi1jbGlja2FibGUtYWN0aXZlIHtcbiAgQGluY2x1ZGUgc24tY2xpY2thYmxlLWJnLWhvdmVyO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwwLDAsMC41KTtcbn1cblxuQG1peGluIHNuLWNsaWNrYWJsZS1kaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICNkNWRhZGQ7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlci1jb2xvcjogI2Q1ZGFkZDtcbn1cblxuLy9cbiRhY2NvdW50LW5hdi1oZWlnaHQtZGVza3RvcDogNDBweDtcbiRhY2NvdW50LW5hdi1oZWlnaHQtbW9iaWxlOiA0NHB4O1xuJGFjY291bnQtbmF2LWJhY2tncm91bmQ6ICMyMzI4MmI7XG4kYWNjb3VudC1uYXYtY29sb3I6ICNGRkY7XG4kYWNjb3VudC1uYXYtei1pbmRleDogMzk5O1xuJGFjY291bnQtbmF2LWljb24td2lkdGg6IDMycHg7XG5cbi8vIFNFQVJDSCBCT1hcbiRzaXRlLXNlYXJjaC1oZWlnaHQ6IDI2cHg7XG4kc2l0ZS1zZWFyY2gtc3BhY2luZzogOHB4O1xuJHNpdGUtc2VhcmNoLWJvcmRlci13aWR0aDogMXB4O1xuJHNpdGUtc2VhcmNoLWlucHV0LWZvbnQtc2l6ZTogMTRweDtcbiRzaXRlLXNlYXJjaC1pbnB1dC1jb2xvcjogIzY2NjtcbiRzaXRlLXNlYXJjaC1pbnB1dC1ib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcbiRzaXRlLXNlYXJjaC1pbnB1dC1iYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuOCk7XG4kc2l0ZS1zZWFyY2gtaW5wdXQtYmFja2dyb3VuZC1mb2N1czogcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiRzaXRlLXNlYXJjaC1zdWJtaXQtY29sb3I6ICNmZmY7XG4kc2l0ZS1zZWFyY2gtc3VibWl0LWJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuJHNpdGUtc2VhcmNoLXN1Ym1pdC1iYWNrZ3JvdW5kOiAkbGluay1jb2xvci1kYXJrZW4tMTA7XG4kc2l0ZS1zZWFyY2gtc3VibWl0LWJhY2tncm91bmQtZm9jdXM6ICRsaW5rLWNvbG9yLWRhcmtlbi0yMDtcbiRzaXRlLXNlYXJjaC1zdWJtaXQtZm9udC1zaXplOiAxMnB4O1xuXG4vLyBTVElFIFRBR0xJTkVcbiRzaXRlLXRhZ2xpbmUtdGV4dC1jb2xvciA6I2ZmZjtcbiRzaXRlLXRhZ2xpbmUtY29sb3I6ICRsaW5rLWNvbG9yO1xuJHNpdGUtdGFnbGluZS1zcGFjaW5nOiAxNXB4O1xuJHNpdGUtdGFnbGluZS1zZXBhcmF0b3Itc2l6ZTogMXB4O1xuJHNpdGUtdGFnbGluZS1zZXBhcmF0b3I6ICRzaXRlLXRhZ2xpbmUtc2VwYXJhdG9yLXNpemUgc29saWQgJGxpZ2h0LWdyYXk7XG4kc2l0ZS10YWdsaW5lLWhlaWdodDogNDBweDtcbiRzaXRlLXRhZ2xpbmUtaGVpZ2h0LWZpeGVkOiAuMDFweDsgLy8gaGlkZSBpdCAoMHB4IGRvZXMgbm90IGFuaW1hdGUpXG5cbi8vIE1BSU4gTkFWXG4kbWFpbi1uYXYtZm9udC1zaXplOiAxNHB4O1xuJG1haW4tbmF2LXRleHQtY29sb3I6ICNmZmY7XG4kbWFpbi1uYXYtc2VsZWN0ZWQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4xNSk7XG4kbWFpbi1uYXYtaG92ZXItY29sb3I6ICRsaW5rLWNvbG9yO1xuJG1haW4tbmF2LXRleHQtZGlzYWJsZWQ6ICM5OTk7XG4kbWFpbi1uYXYtdGV4dC1kaXNhYmxlZC1ob3ZlcjogI0NDQztcbiRtYWluLW5hdi1jb2xvcjogJGxpbmstY29sb3I7XG4kbWFpbi1uYXYtc3BhY2luZzogMTJweDtcbiRtYWluLW5hdi1zZXBhcmF0b3I6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7XG4kbWFpbi1uYXYtaXRlbS1zZXBhcmF0b3I6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4kbWFpbi1uYXYtaGVpZ2h0OiAxMDBweDtcbiRtYWluLW5hdi1oZWlnaHQtZml4ZWQ6IDQ1cHg7XG5cbi8vIFNVQiBOQVZcbiRzdWItbmF2LWZvbnQtc2l6ZTogMTJweDtcbiRzdWItbmF2LXRpdGxlLWNvbG9yOiAjNjY2O1xuJHN1Yi1uYXYtY29sb3I6ICNlNmU0ZTQ7XG4kc3ViLW5hdi1zZWxlY3RlZDogI0VFRTtcbiRzdWItbmF2LWhvdmVyLWNvbG9yOiAjZWVlZWVlO1xuJHN1Yi1uYXYtdGV4dC1jb2xvcjogJGxpbmstY29sb3I7XG4kc3ViLW5hdi10ZXh0LWRpc2FibGVkOiAjQUFBO1xuJHN1Yi1uYXYtdGV4dC1kaXNhYmxlZC1ob3ZlcjogIzk5OTtcbiRzdWItbmF2LXRpdGxlLXNwYWNpbmc6IDE1cHg7XG4kc3ViLW5hdi1zcGFjaW5nOiAxNXB4O1xuJHN1Yi1uYXYtc2VwYXJhdG9yOiBub25lO1xuJHN1Yi1uYXYtaXRlbS1zZXBhcmF0b3I6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4kc3ViLW5hdi1oZWlnaHQ6IDQwcHg7XG4kc3ViLW5hdi1oZWlnaHQtZml4ZWQ6IDM1cHg7XG5cbi8vIE1BSU4vU1VCIE5BViBEUk9QRE9XTlNcbiRkcm9wZG93bi1mb250LXNpemU6IDEycHg7XG4kZHJvcGRvd24tdGV4dC1jb2xvcjogJGxpbmstY29sb3I7XG4kZHJvcGRvd24tdGV4dC1kaXNhYmxlZDogIzk5OTtcbiRkcm9wZG93bi10ZXh0LWRpc2FibGVkLWhvdmVyOiAjQ0NDO1xuJGRyb3Bkb3duLWNvbG9yOiB3aGl0ZTtcbiRkcm9wZG93bi1zZWxlY3RlZDogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtcbiRkcm9wZG93bi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd24tc3BhY2luZzogMTJweDtcbiRkcm9wZG93bi1pdGVtLWhlaWdodDogMzVweDtcbiRkcm9wZG93bi1zaGlmdC1ob3JpejogMjBweDtcbiRkcm9wZG93bi1zaGlmdC12ZXJ0OiAyMHB4O1xuXG4vLyBTSVRFIExPR09cbiRzaXRlLWxvZ28tc2l6ZTogJHNpdGUtdGFnbGluZS1oZWlnaHQgKyAkbWFpbi1uYXYtaGVpZ2h0ICsgJHN1Yi1uYXYtaGVpZ2h0ICsgMztcbiRzaXRlLWxvZ28tc2l6ZS1maXhlZDogJHNpdGUtdGFnbGluZS1oZWlnaHQtZml4ZWQgKyAkbWFpbi1uYXYtaGVpZ2h0LWZpeGVkICsgJHN1Yi1uYXYtaGVpZ2h0LWZpeGVkICsgMztcblxuLy8gTUlTQ1xuJG5hdi1wbGFjZWhvbGRlci1oZWlnaHQ6ICRtYWluLW5hdi1oZWlnaHQgKyAkc3ViLW5hdi1oZWlnaHQ7XG4kbmF2LXBsYWNlaG9sZGVyLWhlaWdodC1maXhlZDogJHNpdGUtdGFnbGluZS1oZWlnaHQtZml4ZWQgKyAkbWFpbi1uYXYtaGVpZ2h0LWZpeGVkICsgJHN1Yi1uYXYtaGVpZ2h0LWZpeGVkICsgMjtcbiRuYXYtaXRlbS1iZWZvcmUtc2l6ZTogMTJweDtcblxuLy8gU0xJREUgTkFWIENPTkZJR1xuJHNsaWRlLW5hdi13aWR0aDogMjUwcHg7XG4kc2xpZGUtbmF2LXRhYmxldC13aWR0aDogNDAwcHg7XG4kc2xpZGUtbmF2LWZvbnQtc2l6ZTogMTZweDtcbiRzbGlkZS1uYXYtYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjc1KTtcbiRzbGlkZS1uYXYtYmFja2dyb3VuZC1jb2xsYXBzZWQ6IHJnYmEoMCwwLDAsMC45KTtcblxuJHNsaWRlLW5hdi1jb250ZW50LXNwYWNpbmc6IDEwcHg7XG4kc2xpZGUtbmF2LWNvbnRlbnQtYmFja2dyb3VuZDogJGxpbmtfY29sb3I7XG5cbiRzbGlkZS1uYXYtdG9nZ2xlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJHNsaWRlLW5hdi10b2dnbGUtY29sb3I6ICNGRkY7XG4kc2xpZGUtbmF2LXRvZ2dsZS1iYWNrZ3JvdW5kLWNvbGxhcHNlZDogJGFjY291bnQtbmF2LWJhY2tncm91bmQ7XG4kc2xpZGUtbmF2LXRvZ2dsZS1jb2xvci1jb2xsYXBzZWQ6ICRhY2NvdW50LW5hdi1jb2xvcjtcblxuJHNsaWRlLW5hdi10aXRsZS1jb2xvcjogI2VhZWFlYTtcbiRzbGlkZS1uYXYtdGl0bGUtYmFja2dyb3VuZDogJGxpbmtfY29sb3I7XG4kc2xpZGUtbmF2LXRpdGxlLWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcbiRzbGlkZS1uYXYtdGl0bGUtaGVpZ2h0OiA0NHB4O1xuXG4kc2xpZGUtbmF2LWJhY2staWNvbjogXCJcXGYwNTNcIjtcbiRzbGlkZS1uYXYtYmFjay1jb2xvcjogI0ZGRjtcbiRzbGlkZS1uYXYtYmFjay1iYWNrZ3JvdW5kOiAkbGlua19jb2xvcjtcbiRzbGlkZS1uYXYtYmFjay1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvcjtcbiRzbGlkZS1uYXYtYmFjay1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDUpOyAvLyBzZWVtcyB0byBkb3VibGUgdXAgd2hlbiB0cmFuc3BhcmVudFxuXG4kc2xpZGUtbmF2LWZvcndhcmQtaWNvbjogXCJcXGYwNTRcIjtcbiRzbGlkZS1uYXYtZm9yd2FyZC1jb2xvcjogI0ZGRjtcbiRzbGlkZS1uYXYtZm9yd2FyZC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRzbGlkZS1uYXYtZm9yd2FyZC1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvcjtcbiRzbGlkZS1uYXYtZm9yd2FyZC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDUpOyAvLyBzZWVtcyB0byBkb3VibGUgdXAgd2hlbiB0cmFuc3BhcmVudFxuXG4kc2xpZGUtbmF2LW1lbnUtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiRzbGlkZS1uYXYtaXRlbS1jb2xvcjogI0ZGRjtcbiRzbGlkZS1uYXYtaXRlbS1jb2xvci1kaXNhYmxlZDogIzk5OTtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvcjtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLXNlbGVjdGVkOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpO1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQ6IHRyYW5zcGFyZW50O1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQtaG92ZXI6ICRsaW5rX2NvbG9yO1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQtc2VsZWN0ZWQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcbiRzbGlkZS1uYXYtaXRlbS1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG4kc2xpZGUtbmF2LWl0ZW0taGVpZ2h0OiA0NHB4O1xuIiwiLyogQ3VzdG9tIFRoZW1lIFN0eWxlcyAqL1xuLy8gMS4gQmFzZSBTdHlsZXNcbi8vIDIuIFBhZ2UgVGVtcGxhdGVcbi8vIDMuIE5hdmlnYXRpb24gYW5kIExvZ29cbi8vIDQuIFNpdGUgSGVhZGVyXG4vLyA1LiBTaXRlIEZvb3RlclxuLy8gNi4gUGFnZSBFbGVtZW50IFN0cnVjdHVyZSBhbmQgU3R5bGVcbi8vIDcuIFBpbGwgQnV0dG9uc1xuLy8gOC4gRWRpdCBNb2RlIEZpeGVzXG4vLyA5LiBUaGVtZSBGb3JtIFN0eWxlc1xuLy8gMTAuIFJlc3BvbnNpdmUgR3JpZCBTdHJ1Y3R1cmVcblxuXG4vLyAxLiBCYXNlIFN0eWxlc1xuaHRtbCB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiogeyBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbi8vIEdhbWUgU0hvdyBGaWVsZCBvZiBQbGF5XG4jRk9QIHsgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuaHRtbCxcbmJvZHkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiNwYWdlQ29udGVudENvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5sYXlvdXRDb250YWluZXIgeyBwYWRkaW5nOiAwOyB9XG5cblxuLy8gNS4gU2l0ZSBGb290ZXJcbi5zbkZvb3RlckNvbnRhaW5lcntcbiAgd2lkdGg6MTAwJTtcbiAgbWFyZ2luOjAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjojZWVlO1xuICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3IgdXJsKFwiaHR0cDovL2Fzc2V0cy5uZ2luLmNvbS5zMy5hbWF6b25hd3MuY29tL3NpdGVfZmlsZXMvMTI0MjUvX3NpdGUvaW1hZ2VzL3BhdHRlcm4ucG5nXCIpIHJlcGVhdC14O1xufVxuI2N1c3RvbUZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgLnNuLXNvY2lhbC1tZWRpYS1saXN0IHtcblxuICAgIC5zbi1zb2NpYWwtbWVkaWEtaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIH1cblxuICB9XG5cbn1cbiNzaXRlRm9vdGVyIHtcbiAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDQwcHggMjBweCA2MHB4IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgY2xlYXI6Ym90aDtcbiAgPiB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBkaXNwbGF5Q2VudGVyKCRtYXhXaWR0aCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOjAgLjJlbTtcbiAgICAgIG1pbi1oZWlnaHQ6MjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRPbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgJjpmaXJzdC1vZi10eXBlIHsgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250VHdvO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIH1cbiAgICAgIGEgeyBcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIH1cbiAgfVxufVxuI3NpdGVGb290ZXIgbGkjcG93ZXJlZEJ5TkdJTntcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG5cdGF7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHR3aWR0aDoxMjBweDtcblx0XHRoZWlnaHQ6MjBweDtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBtYXJnaW46IGF1dG87XG5cdFx0JjphZnRlcntcblx0XHRcdGNvbnRlbnQ6dXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvc3BvcnRuZ2luX2Zvb3Rlcl9sb2dvX3doaXRlLnN2ZycpO1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0dG9wOjRweDtcblx0XHRcdGxlZnQ6MDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXHRcdGltZ3tcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNuRm9vdGVyQ29udGFpbmVye1xuICAgIG1heC13aWR0aDoxMDI0cHg7XG4gIH1cbn1cblxuLy8gNi4gUGFnZSBFbGVtZW50IFN0cnVjdHVyZSBhbmQgU3R5bGVcbi5wYWdlRWwge1xuICAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gIC5wYWdlRWxlbWVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBjbGVhcjpib3RoO1xuICB9XG4gIC53aWRnZXRFbGVtZW50e1xuICAgIC53aWRnZXRIaWVyYXJjaHl7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8qIFRleHQgQmxvY2sgRWxlbWVudCAqL1xuICAudGV4dEJsb2NrRWxlbWVudCB7XG5cbiAgICAubGVmdFRleHRJbWFnZSxcbiAgICAub3JpZ2luYWxUZXh0SW1hZ2UsXG4gICAgLnJpZ2h0VGV4dEltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYnIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmN1dGxpbmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy9qd3BsYXllclxuICAudmlkZW8gLmp3cGxheWVyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC5qd3BsYXllciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIENvbnRlbnQgVGFicyAqL1xuICAudGFiYmVkRWxlbWVudCB7XG4gICAgdWwuY29udGVudFRhYnMge1xuICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGEgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJDb250YWluZXIge1xuICAgICAgLmN1cnJlbnQge1xuICAgICAgICAvLyBUaGVyZSBpcyBhbiBpbmxpbmUgd2lkdGggc2V0IGhlcmUuXG4gICAgICAgIC8vIE5lZWQgdG8gdWRkYXRlIHRhYkVsZW1lbnQgdG8gcmVtb3ZlLlxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA3LiBQaWxsIEJ1dHRvbnNcbiNQbGF5ZXJTdGF0c0RpdiAuc3BvcnQtdG9vbHM6bnRoLWNoaWxkKGV2ZW4pIHVsLnBpbGwtYnV0dG9ucyBsaSxcbiNUZWFtU3RhdHNEaXYgLnNwb3J0LXRvb2xzOm50aC1jaGlsZChldmVuKSB1bC5waWxsLWJ1dHRvbnMgbGkge1xuICAmLnNlbGVjdGVkIGEge1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGxpbmstY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gOC4gRWRpdCBNb2RlIEZpeGVzXG4uZWRpdF9tb2Rle1xuICAuY29udGVudFRhYnMucmFwaWRUYWJzQ29uc3RydWN0aW9ue1xuICAgIGxpe1xuICAgICAgc3BhbntcbiAgICAgICAgYXtcbiAgICAgICAgICBjb2xvcjojNjY2O1xuICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWxlY3RlZHtcbiAgICAgIHNwYW4gYXtcbiAgICAgICAgYmFja2dyb3VuZDojRkNDRDIyO1xuICAgICAgICBjb2xvcjojMzMzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA5LiBUaGVtZSBGb3JtIFN0eWxlc1xuLnBhZ2VFbGVtZW50IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAucGFnZUVsZW1lbnQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgd2lkdGg6MTAwJTtcbiAgbWF4LXdpZHRoOjQ4MHB4O1xuICBAaW5jbHVkZSB0ZXh0LWZpZWxkLXN0eWxlO1xufVxuLnBhZ2VFbGVtZW50IHRleHRhcmVhe1xuICBAaW5jbHVkZSB0ZXh0LWZpZWxkLXN0eWxlO1xufVxuLnBhZ2VFbGVtZW50IHNlbGVjdCB7XG5cdEBpbmNsdWRlIGRyb3Bkb3duLXN0eWxlO1xufVxuXG4vLyAxMC4gUmVzcG9uc2l2ZSBHcmlkIFN0cnVjdHVyZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAub25lQ29sdW1uIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC5vbmVDb2x1bW4gLmNvbHVtbjF7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudHdvQ29sdW1uMjU3NSAuY29sdW1uMiwgLnR3b0NvbHVtbjc1MjUgLmNvbHVtbjEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjEsIC50d29Db2x1bW4zMzY2IC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW42NjMzIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW4zMzY2IC5jb2x1bW4ye1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnR3b0NvbHVtbjUwNTAgLmNvbHVtbjEsIC50d29Db2x1bW41MDUwIC5jb2x1bW4yLCAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjEsIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMiwgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4zLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW41MDUwIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW41MDUwIC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4ze1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4xLCAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiwgLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEsIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMiwgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4zLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uMzM2NiAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4ze1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnR3b0NvbHVtbjI1NzUgLmNvbHVtbjEsIC50d29Db2x1bW43NTI1IC5jb2x1bW4yLFxuICAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjIsIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyxcbiAgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4xLCAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjMsXG4gIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSwgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4yLFxuICAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4xLCAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4yLFxuICAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4zLCAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW40LFxuICAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjMsXG4gIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyxcbiAgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4yLFxuICAubGF5b3V0Q29udGFpbmVyIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMixcbiAgLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjJcbiAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC53aWR0aDI1LCAud2lkdGgzMywgLndpZHRoNTAsIC53aWR0aDY2LCAud2lkdGg3NSwgLndpZHRoMTAwIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIC5jb2wteHMtMSwgLmNvbC1zbS0xLCAuY29sLW1kLTEsIC5jb2wtbGctMSwgLmNvbC14cy0yLCAuY29sLXNtLTIsIC5jb2wtbWQtMiwgLmNvbC1sZy0yLCAuY29sLXhzLTMsIC5jb2wtc20tMywgLmNvbC1tZC0zLCAuY29sLWxnLTMsIC5jb2wteHMtNCwgLmNvbC1zbS00LCAuY29sLW1kLTQsIC5jb2wtbGctNCwgLmNvbC14cy01LCAuY29sLXNtLTUsIC5jb2wtbWQtNSwgLmNvbC1sZy01LCAuY29sLXhzLTYsIC5jb2wtc20tNiwgLmNvbC1tZC02LCAuY29sLWxnLTYsIC5jb2wteHMtNywgLmNvbC1zbS03LCAuY29sLW1kLTcsIC5jb2wtbGctNywgLmNvbC14cy04LCAuY29sLXNtLTgsIC5jb2wtbWQtOCwgLmNvbC1sZy04LCAuY29sLXhzLTksIC5jb2wtc20tOSwgLmNvbC1tZC05LCAuY29sLWxnLTksIC5jb2wteHMtMTAsIC5jb2wtc20tMTAsIC5jb2wtbWQtMTAsIC5jb2wtbGctMTAsIC5jb2wteHMtMTEsIC5jb2wtc20tMTEsIC5jb2wtbWQtMTEsIC5jb2wtbGctMTEsIC5jb2wteHMtMTIsIC5jb2wtc20tMTIsIC5jb2wtbWQtMTIsIC5jb2wtbGctMTJ7XG4gICAgcGFkZGluZy1sZWZ0OigkYm9vdHN0cmFwLXBhZGRpbmctc20gKiAxcHgpO1xuICAgIHBhZGRpbmctcmlnaHQ6KCRib290c3RyYXAtcGFkZGluZy1zbSAqIDFweCk7XG4gIH1cbn1cblxuLy8gQXMgc29vbiBhcyBsYXlvdXQgY29udGFpbmVyIHN0YXJ0cyB0byBzcXVpc2gsXG4vLyBtYWtlIHNtYWxsIGNvbHVtbnMgYmlnZ2VyIHVudGlsIHRoZXkgYmVjb21lIGZ1bGxcbi8vIHdpZHRoIGZvciBtb2JpbGUgKDc2OHB4KVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC01MC0yNS0yNSxcbiAgLmxheW91dC0yNS0yNS01MCB7XG4gICAgLmNvbC1tZC0zIHsgd2lkdGg6IDUwJTsgfVxuICAgIC5jb2wtbWQtNiB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cblxuICAubGF5b3V0LTI1LTUwLTI1IHtcbiAgICAuY29sLW1kLTMsXG4gICAgLmNvbC1tZC02IHsgd2lkdGg6IDMzLjMzMzMlIH1cbiAgfVxufVxuXG5cbi8vIFRFTVAgRklYRVMgRk9SIEJST0tFTiBOQVZcbi50aGVtZS1uYXYtc3R5bGUtc2xpZGUgPiAqIHsgd2lkdGg6IDEwMCU7IH1cblxuLy8gT3RoZXIgYmFja2dyb3VuZCBzdHlsZXMgYXJlIHJlbmRlcmVkIGlubGluZSAoYmFzZWQgb24gdXNlciBzZXR0aW5ncylcbi5zaXRlLWJhY2tncm91bmQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiIsIi8qIFR5cGdvZ3JhcGh5ICovXG4vLyAxLiBCYXNlXG4vLyAyLiBIZWFkZXJzXG4vLyAzLiBMaXN0c1xuLy8gNC4gSW5saW5lIG1vZHNcbi8vIDUuIEJsb2NrIG1vZHNcbi8vIDYuIEFuY2hvcnNcbi8vIDcuIFRhYmxlc1xuLy8gOC4gU2libGluZyBydWxlc1xuLy8gOS4gUmVtb3ZhbC9SZWxvY2F0aW9uXG5cblxuLy8gMS4gQmFzZSBcbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnRUd287XG4gIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSkgKiAxcHg7XG4gIGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbiAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd287XG59XG5ib2R5e1xuICBmb250LXNpemU6IDEwMCU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IC8vIGZvciBXZWJLaXQuIEZGIGlzIG9uIGJ5IGRlZmF1bHQuIElFPyBwcm9iYWJseSBkb2Vzbid0IHN1cHBvcnQgaXQuXG59XG5wIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi8vIDIuIEhlYWRlcnMgXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2eyBcbiAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4xMjU7IFxuICBjb2xvcjogJGxpbmstY29sb3I7XG59XG5cbmgxLCBoMiwgaDMgeyBjb2xvcjogJGJ1dHRvbi1oaWdobGlnaHRfdGV4dDsgfVxuXG5oNSB7IGNvbG9yOiAkZGFyazsgfVxuXG5oMXtmb250LXNpemU6IGVtKDQ4KTt9XG5oMntmb250LXNpemU6IGVtKDM2KTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XG5oM3tmb250LXNpemU6IGVtKDMyKTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XG5oNHtmb250LXNpemU6IGVtKDE4KTt9XG5oNXtmb250LXNpemU6IGVtKDE2KTt9XG5oNntmb250LXNpemU6IGVtKDE2KTt9XG5cbi8vIDMuIExpc3RzIFxudWwsIG9sIHtcbiAgLy8gbWFyZ2luLWxlZnQ6IDEuNzVlbTsgLy9SZW1vdmVkIGZyb20gZ2xvYmFsIHNjb3BlIGZvciB0aGVtZSAyLiBTaG91bGQgYmVjb21lIHN0YW5kYXJkIGdvaW5nIGZvcndhcmQuXG4gIC8vIG1hcmdpbi1ib3R0b206IDFlbTsgLy9SZW1vdmVkIGZyb20gZ2xvYmFsIHNjb3BlIGZvciB0aGVtZSAyLiBTaG91bGQgYmVjb21lIHN0YW5kYXJkIGdvaW5nIGZvcndhcmQuXG59XG51bHtsaXN0LXN0eWxlLXR5cGU6IGRpc2M7fVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLy8gNC4gSW5saW5lIG1vZHMgXG5iLCBzdHJvbmcgeyBmb250LXdlaWdodDogYm9sZDsgfVxuaSwgZW0geyBmb250LXN0eWxlOiBpdGFsaWM7IH1cbnNtYWxsIHsgZm9udC1zaXplOiAuNzVlbTsgfVxubWFyayB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsgfVxucywgc3RyaWtlLCBkZWwgeyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxudSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5jb2Rle1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICNjNzI1NGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWYyZjQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLy8gNS4gQmxvY2sgbW9kcyBcbmJsb2NrcXVvdGUge1xuICBmb250LWZhbWlseTogJGZvbnRPbmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiBlbSgyNCk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgzNik7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6ICRkYXJrO1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiAwIDAgMTVweCAxNXB4O1xuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiBcIuKAnFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAjQ0NDO1xuICB9XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogXCLigJ1cIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogI0NDQztcbiAgfVxuICBwe2Rpc3BsYXk6IGlubGluZTt9IC8vIFJldmlzaXQgd2hlbiBsaXF1aWRcbn1cbmNvZGUsIGtiZCwgcHJlLCBzYW1wIHsgZm9udC1mYW1pbHk6IE1lbmxvLE1vbmFjbyxDb25zb2xhcyxcIkNvdXJpZXIgTmV3XCIsbW9ub3NwYWNlOyB9XG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGJhc2UtcGFkZGluZy1zbTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICMzMzM7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7IC8qIGNzcy0zICovXG4gIHdoaXRlLXNwYWNlOiAtbW96LXByZS13cmFwICFpbXBvcnRhbnQ7IC8qIE1vemlsbGEsIHNpbmNlIDE5OTkgKi9cbiAgd2hpdGUtc3BhY2U6IC1wcmUtd3JhcDsgLyogT3BlcmEgNC02ICovXG4gIHdoaXRlLXNwYWNlOiAtby1wcmUtd3JhcDsgLyogT3BlcmEgNyAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5ociB7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybigjQUFBLHRyYW5zcGFyZW50KTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBib3JkZXI6IG5vbmU7XG4gICYuaHJFbGVtZW50e1xuICAgIG1hcmdpbjoxcmVtIDA7XG4gIH1cbn1cblxuLy8gNi4gQW5jaG9yc1xuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgJjpob3ZlciB7IGNvbG9yOiAkbGluay1jb2xvci1kYXJrZW4tMTA7IH1cbn1cblxuLnBhZ2VFbGVtZW50IGEgeyBmb250LXdlaWdodDogNzAwOyB9XG5cbi8vIDcuIFRhYmxlc1xudGFibGV7XG4gIGZvbnQtc2l6ZTogZW0oMTIpO1xufVxuXG4vLyA4LiBTaWJsaW5nIHJ1bGVzXG4udGV4dCwgLnByZXZpZXdUZXh0LCAubmV3c1RleHR7XG4gID57XG4gICAgcCwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgb2wsIHVsLCBibG9ja3F1b3RlLCBwcmV7XG4gICAgICAmOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTogMDt9XG4gICAgfVxuICB9XG4gIHVsLCBvbHtcbiAgICBtYXJnaW4tbGVmdDogMS43NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBsaXtcbiAgICAgID4gdWwsID4gb2x7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8vIDkuIFJlbW92YWwvUmVsb2NhdGlvblxuLy8gVGhlc2Ugc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBfdHlwb2dyYXBoeSBhbmQgYWRkZWQgdG8gdGhlaXIgYXBwcm9wcmlhdGUgbG9jYXRpb25zXG4udG9vbEljb24ge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nOiA1cHggMCAxNXB4IDQwcHg7XG59XG5wLnRhZ3MgeyBmb250LXNpemU6IC43ZW07IH1cbi5zdWJOYXYsXG4ucmVsYXRlZFNlY3Rpb25zIHtcbiAgbGkgYSB7IGZvbnQtc2l6ZTogLjc1ZW07IH1cbn1cbi5lbGxpcHNpcyB7XG4gIC8qIE5lZWRzIGEgZml4ZWQgd2lkdGggdG8gd29yayAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4iLCIvKiBSRVNQT05TSVZFICovXG4vKiBtYXhXaWR0aCBEZXNrdG9wIFNjcmVlbiAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAvKiA+IDEwMjNweCBTdHlsZXMgKi9cblxuICAvKiBDb250ZW50IFRhYnMgKi9cbiAgLnRhYmJlZEVsZW1lbnQge1xuICAgIHVsLmNvbnRlbnRUYWJzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgICAgcGFkZGluZzogMnB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBHYW1lIFNob3cgKi9cbiAgI2xpdmVHYW1lU2ltcGxle1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBGb290ZXIgKi9cbiAgI3NpdGVGb290ZXJ7XG5cdCAgbGl7XG4gIFx0ICBtaW4taGVpZ2h0OjA7XG4gICAgfVxuXHR9XG4gICNzaXRlRm9vdGVyIGxpI3Bvd2VyZWRCeU5HSU57XG4gICAgcGFkZGluZzoxMHB4IDA7d2lkdGg6MTAwJTtcbiAgfVxufVxuLyogVGFibGV0cyAmIFBob25lcyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuXG4gIC8qID4gNzY5cHggU3R5bGVzICovXG5cbiAgLyogQWRtaW4gKi9cbiAgLmFkbWluVG9nZ2xlLFxuICAjYWRtaW5OYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI3NpdGVDb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgI3BhbmVsVHdvIHtcbiAgICAgIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLyogQ29kZSBFbGVtZW50ICovXG4gIC5jb2RlRWxlbWVudHtcbiAgICBvYmplY3QsIGVtYmVkLCBpZnJhbWUgeyB3aWR0aDogMTAwJTsgfVxuICB9XG5cbiAgLyogQ29udGVudCBUYWJzICovXG4gIC50YWJiZWRFbGVtZW50IHtcbiAgICB1bC5jb250ZW50VGFicyBsaSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMnB4O1xuXG4gICAgICBzcGFuIGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBXaWRnZXQgRWxlbWVudHMgKi9cbiAgLndpZGdldEVsZW1lbnQge1xuICAgIC53aWRnZXQtcm9zdGVyLXBsYXllciB7XG4gICAgICB0YWJsZS5zdGF0VGFibGUge1xuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC53aWRnZXQtZ2FtZVRhYmxlIC5zaG93TW9yZUdhbWVzIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG5cbiAgLyogU3VydmV5IFJlcG9ydHMgKi9cbiAgI3N1cnZleV9zdGVwcyB7XG4gICAgLnNpdGVDb250YWluZXIge1xuICAgICAgI2FjY291bnROYXYgeyBtYXJnaW46IGF1dG87IHBhZGRpbmc6IDA7IH1cbiAgICAgIC5hZG1pblRvZ2dsZSB7IHRvcDogMDsgfVxuXG4gICAgICAjcGFnZUNvbnRlbnRDb250YWluZXIge1xuICAgICAgICAjcGFuZWxPbmUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI3BhbmVsVHdvIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuLyogVEVBTSBQQUdFUyAqL1xuLyogR2FtZSBTaG93IENvbnRlbnQgKi9cbiAgI0dhbWVTaG93Q29udGVudCBsaS50YWJfbWVudS10YWJ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAudGVhbVRhZ0ZpbHRlciBsYWJlbHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcblxuICAvKiA+IDY0MHB4IFN0eWxlcyAqL1xuXG4gICNzaXRlRm9vdGVye1xuXHQgIGxpe1xuXHRcdCAgbWluLWhlaWdodDowO1xuXHQgIH1cblx0fVxuXG4gIFx0I3NpdGVGb290ZXIgbGkjcG93ZXJlZEJ5TkdJTntcbiAgXHRcdHBhZGRpbmc6MTBweCAwO1xuXHR9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC8qID4gNDgwcHggU3R5bGVzICovXG5cbiAgIC8qIFN0YXRzICovXG4gIC5TdGF0V2lkZ2V0Q29udGFpbmVye3BhZGRpbmc6MTVweCAwIDAgMDt9XG4gIC5TdGF0V2lkZ2V0e21hcmdpbjowIDAgMjBweCAwO31cbiAgLlN0YXRXaWRnZXRDb250YWluZXIuZ2FtZV9kZXRhaWxze3BhZGRpbmc6MjBweCAxMHB4O31cbiAgLkdhbWVTaG93RGF0YUNvbnRhaW5lciAuU3RhdFdpZGdldEdyb3Vwe21hcmdpbjowIDEwcHggMjBweCAwO31cbiAgI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgbGkgaDJ7Zm9udC1zaXplOjAuNzVlbX1cbiAgI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3Qge2ZvbnQtc2l6ZTowLjhlbTt9XG4gIC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9uYW1le2ZvbnQtc2l6ZToxZW07fVxuICAudGVhbUxvZ28tbWVkaXVtLCAudGVhbUxvZ29yLW1lZGl1bXt3aWR0aDo3MHB4ICFpbXBvcnRhbnQ7IGhlaWdodDoyM3B4ICFpbXBvcnRhbnQ7fVxuXG4gIC8qIGZpbHRlciBzdHlsZXMgKi9cbiAgLnRhZy1maWx0ZXJGb3JtIC50YWctZmlsdGVyV3JhcHtcblx0ICB3aWR0aDoxMDAlO1xuXHQgIHBhZGRpbmc6MTZweCAwO1xuICB9XG4gIC50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAuYnV0dG9ue1xuXHQgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMCwwKTtcblx0ICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwwKTtcbiAgfVxuICAudGFnLWZpbHRlckZvcm0gLmlucHV0Q2hvaWNle1xuXHQgIGZsb2F0OnJpZ2h0O1xuICB9XG4gIC50YWctZmlsdGVyV3JhcC5kcm9wZG93biBsYWJlbHtcblx0ICB3aWR0aDoxMDAlO1xuXHQgIHNlbGVjdHtcblx0XHQgIGZsb2F0OnJpZ2h0O1xuXHRcdCAgd2lkdGg6NzAlO1xuXHQgIH1cbiAgfVxufVxuIiwiXG4kYWQtc3BhY2luZzogMTVweCAhZGVmYXVsdDtcbiRyaWdodC1hZC1jb2x1bW4tYnJlYWtwb2ludDogODAwcHggIWRlZmF1bHQ7XG5cbi5hZC13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjbGVhcjogYm90aDtcblxuICAqOm5vdCgucGFnZUVsZW1lbnQpID4gJiB7XG4gICAgbWFyZ2luOiAwICRhZC1zcGFjaW5nO1xuICAgIHBhZGRpbmc6ICRhZC1zcGFjaW5nIDA7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gID4gKiB7IHRyYW5zZm9ybS1vcmlnaW46IDAgMDsgfVxuXG59XG5cbi8vIFJJR0hUIEFEIENPTFVNTlxuXG4ucmlnaHQtY29sdW1uLWFkLXdyYXBwZXIge1xuICBAZXh0ZW5kICVjbGVhcmZpeDtcbn1cblxuLy8gSGlkZSBhZHMgd2hpbGUgdGFiIGNvbnRlbnQgaXMgbG9hZGluZ1xuI2NvbnRlbnRUYWJzTG9hZGVyOm5vdChbc3R5bGUqPVwiZGlzcGxheTpub25lXCJdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6IG5vbmVcIl0pIH4gLnJpZ2h0LWNvbHVtbi1hZC13cmFwcGVyIC5yaWdodC1jb2x1bW4tYWRzIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ucmlnaHQtY29sdW1uLWFkLWNvbnRlbnQge1xuICB3aWR0aDogNjYuNjY2JTtcbiAgZmxvYXQ6IGxlZnQ7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRyaWdodC1hZC1jb2x1bW4tYnJlYWtwb2ludH0pIHsgd2lkdGg6IDEwMCU7IH1cbn1cblxuLnJpZ2h0LWNvbHVtbi1hZHMge1xuICB3aWR0aDogMzMuMzMzJTtcbiAgZmxvYXQ6IHJpZ2h0O1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogI3skcmlnaHQtYWQtY29sdW1uLWJyZWFrcG9pbnR9KSB7IHdpZHRoOiAxMDAlOyB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRyaWdodC1hZC1jb2x1bW4tYnJlYWtwb2ludCArIDF9KSB7XG4gICAgLmFkLXdyYXBwZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIkcGFnZS1tYW5hZ2VyLXdpZHRoOiA2MHB4O1xuXG5odG1sLnBhZ2UtbWFuYWdlci12aXNpYmxlIHtcbiAgLnNuLXBhZ2VNYW5hZ2VyIHsgZGlzcGxheTogYmxvY2s7IH1cbn1cblxuLnNuLXBhZ2VNYW5hZ2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogJHBhZ2UtbWFuYWdlci13aWR0aDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICAvLyB0b3A6ICRzbkFkbWluQmFySGVpZ2h0O1xuICBiYWNrZ3JvdW5kOiAjZjFmM2Y0O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDVkYWRkO1xuICB0b3A6IDBweDtcbiAgei1pbmRleDogNDk5OyAvL3NhbWUgYXMgYWNjb3VudCBuYXYgZHJvcGRvd25zXG4gIC8vIHotaW5kZXg6IDEzOyAvLyBzaXRzIGFib3ZlIHNpZGUgbmF2IHdyYXBcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICAgIC8vIGFkanVzdCBzaWRlYmFyIGl0ZW1zXG4gICAgLy8gaWRlYWxseSBhZG1pbiB0b2dnbGUgJiBhZG1pbiBuYXYgbGlua3Mgc2hvdWxkIGJlIGxpcXVpZFxuICAgIC5hZG1pblRvZ2dsZSxcbiAgICAjYWRtaW5OYXYsXG4gICAgLnNuLXNpZGViYXJJdGVtIHtcbiAgICAgIGJvcmRlcjogMHB4IHNvbGlkICNENURBREQ7XG4gICAgICBib3JkZXItd2lkdGg6IDBweCAwcHggMXB4IDBweDtcbiAgICB9XG4gICAgLmFkbWluVG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gICAgfVxuICAgIC5hZG1pblRvZ2dsZSxcbiAgICAjYWRtaW5OYXYsXG4gICAgLnNuLXNpZGViYXJJdGVtIHtcbiAgICAgIGhlaWdodDogJHBhZ2UtbWFuYWdlci13aWR0aCArIDEwO1xuICAgIH1cbiAgICAuc24tc2lkZWJhckxpbmsge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA0MDBtcztcbiAgICB9XG4gICAgLmFjdGl2ZSA+IC5zbi1zaWRlYmFyTGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFNUU3RTg7XG4gICAgfVxuICAgIC5nb1RvQWRtaW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9hZG1pbl9nZWFyLnN2ZycpIGNlbnRlciAzNSUgbm8tcmVwZWF0O1xuICAgIH1cbiAgICAjYWRtaW5OYXYgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI2FkbWluTmF2IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvc3dpdGNoX29mZi5zdmcnKSBjZW50ZXIgMzUlIG5vLXJlcGVhdDtcbiAgICB9XG4gICAgLnNuLWVkaXQtbW9kZS1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3BhZ2VNYW5hZ2VyL3N3aXRjaF9vZmZfZGlzYWJsZWQucG5nJykgY2VudGVyIDM1JSBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLnNuLXRvb2x0aXAge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlMDM3NDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMnB4IDFweCByZ2JhKDAsMCwwLC4zKTtcbiAgICAgICAgICAgIGxlZnQ6IDU3cHg7XG4gICAgICAgICAgICBwYWRkaW5nOjEwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgYm9yZGVyOiA2cHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2UwMzc0MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZTAzNzQwO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiAtMXB4IC0xcHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgICAgICAgIGxlZnQ6IC00cHg7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgIHRvcDogMjNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc24tdG9nZ2xlUGFnZXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9wYWdlc19pY29uLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIH1cbiAgICAjYWRtaW5OYXYgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgfVxuICAgIC5hZG1pblRvZ2dsZTpiZWZvcmUsXG4gICAgI2FkbWluTmF2ID4gYTpiZWZvcmUsXG4gICAgLnNuLXNpZGViYXJJdGVtID4gYTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OmluaXRpYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICM4NDkyOWM7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWFyZ2luLXRvcDogNDNweDtcbiAgICB9XG4gICAgLmFkbWluVG9nZ2xlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnQWRtaW4nO1xuICAgIH1cbiAgICAjYWRtaW5OYXYgPiBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnRWRpdCBNb2RlJztcbiAgICB9XG4gICAgLnNuLWVkaXQtbW9kZS1kaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAuNTtcblxuICAgICAgPiBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdFZGl0IE1vZGUnO1xuICAgICAgfVxuICAgIH1cbiAgICAuc24tc3RydWN0dXJlLnNuLXNpZGViYXJJdGVtID4gYTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1BhZ2VzJztcbiAgICB9XG4gICAgLy9zbi10YWJXcmFwcGVyXG4gICAgLnNuLXRhYldyYXBwZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRvcDogMHB4O1xuICAgICAgbGVmdDogLTIwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI0Y5RkFGQjtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYm94LXNoYWRvdzogNXB4IDBweCAxMHB4IC01cHggcmdiYSg1MCw1MCw1MCwuNSk7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gICAgLmFjdGl2ZSAuc24tdGFiV3JhcHBlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDAgMXB4O1xuICAgIH1cbiAgICAvL3NuLXRhYkNvbnRhaW5lclxuICAgIC5zbi10YWJDb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVkZWRlO1xuICAgIH1cbiAgICAvL3NldCBpbml0aWFsIHRhYiBzZXR0aW5nc1xuICAgIC5zbi1uYXY+bGkuc24tdGFiLFxuICAgIC5zbi1uYXYtdGFicz5saS5zbi10YWIsXG4gICAgLnNuLXRhYiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgLnNuLW5hdj5saS5zbi10YWIuYWN0aXZlLFxuICAgIC5zbi1uYXYtdGFicz5saS5zbi10YWIuYWN0aXZlLFxuICAgIC5zbi10YWIuYWN0aXZlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDowO1xuICAgIH1cbiAgICAvL3RpdGxlXG4gICAgLnNuLXRpdGxlIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzOTQxNDY7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLnNuLXRhYi5hY3RpdmUgLnNuLXRpdGxlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzE5OTdjODtcbiAgICB9XG4gICAgLnNuLXRhYi50d28gLnNuLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICAgIH1cbiAgICAuc24tdGFiLnR3by5hY3RpdmUgLnNuLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gICAgfVxuXG4gICAgLy9zbi1zdWJ0aXRsZVxuICAgIC5zbi1zdWJ0aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuICAgIC5zbi1zdWJ0aXRsZSwgLnNuLXN1YnRpdGxlIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDlweDtcbiAgICAgIGNvbG9yOiAjODA4Rjk4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgLnNuLXN1YnRpdGxlIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuICAgIC8vQ2hpbGQgTm9kZSBTdHlsZXNcbiAgICAuc24tcGFnZXMge1xuICAgICAgcGFkZGluZzoxMHB4IDIwcHggNTBweCAyMHB4O1xuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNCOUMxQzY7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDE0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgbWFyZ2luOiAycHggMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjMzk0MTQ2O1xuICAgICAgICAgIGN1cnNvcjptb3ZlO1xuXG4gICAgICAgICAgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICMzOTQxNDY7XG4gICAgICAgICAgbWluLWhlaWdodDogMjRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHBhZ2Ugc3RhdHVzZXNcblxuXG4gICAgICBAbWl4aW4gcGFnZS1zdGF0dXMtaWNvbigkaWNvbi13aWR0aCwgJGJhY2tncm91bmQtaW1hZ2UpIHtcbiAgICAgICAgJGljb24taG9yaXpvbnRhbC1zcGFjaW5nOiA0cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpY29uLXdpZHRoICsgKCRpY29uLWhvcml6b250YWwtc3BhY2luZyAqIDIpO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAkaWNvbi1ob3Jpem9udGFsLXNwYWNpbmc7XG4gICAgICAgICAgd2lkdGg6ICRpY29uLXdpZHRoO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYmFja2dyb3VuZC1pbWFnZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByaXZhdGUgeyBAaW5jbHVkZSBwYWdlLXN0YXR1cy1pY29uKDE1cHgsICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvcGFnZU1hbmFnZXIvcHJpdmF0ZS5wbmcnKTsgfVxuICAgICAgLmRpc2FibGVkIHsgQGluY2x1ZGUgcGFnZS1zdGF0dXMtaWNvbigxNXB4LCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3BhZ2VNYW5hZ2VyL2Rpc2FibGVkLnBuZycpOyB9XG4gICAgICAvLy5wYXl3YWxsZWQgeyBAaW5jbHVkZSBwYWdlLXN0YXR1cy1pY29uKDMycHgsICRwYXl3YWxsSW1hZ2UpOyB9XG5cbiAgICAgIC5wcml2YXRlLFxuICAgICAgLmRpc2FibGVkLFxuICAgICAgLnBheXdhbGxlZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAkaWNvbi1oZWlnaHQ6IDEycHg7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGhlaWdodDogJGljb24taGVpZ2h0O1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kaWNvbi1oZWlnaHQgLyAyOyAvLyB2ZXJ0aWNhbCBjZW50ZXJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGlzYWJsZWQgYSwgLnByaXZhdGUgYSB7IGNvbG9yOiAjODA4Rjk4OyB9XG5cbiAgICAgIC5kcmFnIHtcbiAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9wYWdlTWFuYWdlci9kcmFnLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAycHggY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgfVxuICAgIH1cbn1cbi5zbi1wYWdlTWFuYWdlcjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG59XG4vL2VkaXRtb2RlIHN0eWxlc1xuLmVkaXRfbW9kZSB7XG4gIC5zbi1wYWdlTWFuYWdlciAuY21zTmF2QnV0dG9uIHtcbiAgcGFkZGluZzowO1xuICBtYXJnaW46IDIwcHggMHB4IDBweDtcbiAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgI2FkbWluTmF2IHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3N3aXRjaF9vbi5zdmcnKSBjZW50ZXIgMzUlIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFNUU3RTg7XG4gIH1cbn1cbiIsIi5zbi1wcmV2aWV3IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzg0OTI5YztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDVEQUREO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAjODQ5MjljO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnByZXZpZXctb257XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTVFN0U4O1xuICAgIH1cbiAgICAmLnByZXZpZXctb24sICYucHJldmlldy1vZmZ7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnByZXZpZXctb2ZmOmJlZm9yZXtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZXllLW9mZi5zdmcpO1xuICAgIH1cbiAgICAmLnByZXZpZXctb246YmVmb3Jle1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9leWUtb24uc3ZnKTtcbiAgICB9XG59XG4iLCIvLyBERVNLVE9QIFNUWUxFU1xuXG4jYWNjb3VudE5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMCBjYWxjKDUwJSAtIDUwMHB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6ICRhY2NvdW50LW5hdi16LWluZGV4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogJGFjY291bnQtbmF2LWhlaWdodC1kZXNrdG9wO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZDogJGFjY291bnQtbmF2LWJhY2tncm91bmQ7XG4gIFxuICBodG1sLmhhcy1tb2JpbGUtbmF2ICYgeyBwYWRkaW5nOiAwIDE2cHg7IH1cbiAgaHRtbC5wYWdlLW1hbmFnZXItdmlzaWJsZSAmIHsgcGFkZGluZy1sZWZ0OiBjYWxjKDUwJSAtIDUwMHB4ICsgI3skcGFnZS1tYW5hZ2VyLXdpZHRofSk7IH1cbiAgaHRtbC5oYXMtbW9iaWxlLW5hdi5wYWdlLW1hbmFnZXItdmlzaWJsZSAmIHsgcGFkZGluZy1sZWZ0OiAkcGFnZS1tYW5hZ2VyLXdpZHRoICsgMTZweDsgfVxuXG4gIC8vIG92ZXJyaWRlcyBmb3Igbm9uIHY0IHJlZyBsYXlvdXRcbiAgI3N1cnZleV9zdGVwcyAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICB9XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6ICRhY2NvdW50LW5hdi1oZWlnaHQtZGVza3RvcDtcbiAgICBoZWlnaHQ6ICRhY2NvdW50LW5hdi1oZWlnaHQtZGVza3RvcDtcblxuICAgIC8vIHVzZXIgZHJvcGRvd24gYnV0dG9uXG4gICAgJi5ob21lIHtcblxuICAgICAgLy8gZHJvZG93biBhcnJvd1xuICAgICAgc3Bhbi5yaWdodCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuM2VtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuXG4gICAgICAgICY6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDdcIjsgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgLyogSWNvbnMgKGxpa2UgbWVzc2FnZXMpICovXG4gICAgYSBpbWcgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIH1cblxuICAvLyBhZG1pbiBuYXYgaXRlbSB2aXN1YWwgc3R5bGVcbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbG9yOiAkYWNjb3VudC1uYXYtY29sb3IgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICB9XG5cbiAgLm5naW5Mb2dvIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDI0cHg7XG5cbiAgICBhIHtcbiAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9zcG9ydC1uZ2luLWxvZ28td2hpdGUuc3ZnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICB0ZXh0LWluZGVudDogLTIwMDAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gc21hbGwgbGlua3MgbGlrZSBcImNyZWF0ZSBhY2NvdW50XCJcbiAgLnNlY29uZGFyeSBhIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBjb2xvcjogIzk5OTtcblxuICAgICY6aG92ZXIgeyBjb2xvcjogI2NjYzsgfVxuICB9XG5cbiAgLy8gc2l0ZSBsb2dvIGxpbmtcbiAgLmN1cnJlbnRTaXRlIHtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgLy8gc2l0ZSBpY29uIGxpbmtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgLy9iYWNrZ3JvdW5kOiB1cmwoJGxvZ29HcmFwaGljVGlueSkgcmlnaHQgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyB0aGVtZSAmIHNpdGUgcGlja2VycyAtLSBvdmVycmlkZSBpbmxpbmUgc3R5bGUgOihcbiAgLmxvY2FsLWRldi10b29sIHsgZmxvYXQ6IHJpZ2h0OyBsaW5lLWhlaWdodDogJGFjY291bnQtbmF2LWhlaWdodC1kZXNrdG9wICFpbXBvcnRhbnQ7IH1cbiAgLmxvY2FsLWRldi10b29sIH4gLm5naW5Mb2dvIHsgZGlzcGxheTogbm9uZTsgfVxuXG59XG5cbi8qIE5vdGlmaWNhdGlvbnMgTWVudXMgKi9cbi5kYXNoYm9hcmRfbmF2IC5jb3VudCxcbiNhY2NvdW50TmF2IC5jb3VudCB7XG4gIGJhY2tncm91bmQ6ICNjMDA7XG4gIGJvcmRlcjogMXB4IGluc2V0IHJnYmEoMjAxLCAyMDEsIDIwMSwgMC41KTtcbiAgY29sb3I6ICNlZWU7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udDogYm9sZCAxMHB4ICRmb250T25lO1xuICBtaW4td2lkdGg6IDEuNWVtO1xuICBwYWRkaW5nOiAwIDJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuI2FjY291bnROYXYgLmNvdW50IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB0b3A6IC02cHg7XG59XG5cbiN1c2VyX3Rvb2xzX21lbnVfY2FsbG91dCAuY291bnQgeyBtYXJnaW4tdG9wOiA1cHg7IH1cblxuLyogRHJvcCBEb3duIE1lbnUgKi9cbiNhY2NvdW50TmF2ICN1c2VyX3Rvb2xzX21lbnVfY2FsbG91dCxcbiN1c2VyX3NpdGVzIHVsLFxuI3RzdF9vcHRpb25zIHVsLFxuI2hlbHBfYW5kX3VwZGF0ZXMgdWwgeyBkaXNwbGF5OiBub25lOyB9XG4jdXNlcl9zaXRlc19tZW51IHsgbWF4LWhlaWdodDogNTAwcHg7IG92ZXJmbG93OiBhdXRvOyB9XG5cbiN1c2VyX3NpdGVzIGEge1xuICB0ZXh0LWluZGVudDogLTk5OWVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoICRhc3NldC1wYXRoLWZvcitcIi9hcHBfaW1hZ2VzL2xpbmtfaWNvbnMucG5nXCIpIDhweCAtMzIzMXB4IG5vLXJlcGVhdDtcbiAgd2lkdGg6ICRhY2NvdW50LW5hdi1pY29uLXdpZHRoO1xufVxuXG4jdHN0X29wdGlvbnMgYSB7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIGJhY2tncm91bmQ6IHVybCggJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvbGlua19pY29ucy5wbmdcIikgOHB4IC0yMzA4cHggbm8tcmVwZWF0O1xuICB3aWR0aDogJGFjY291bnQtbmF2LWljb24td2lkdGg7XG59XG5cbi8vIEhFTFAgTUVOVSAobm90IHN1cmUgd2hlcmUvaG93IHRoaXMgZGlzcGxheXMpXG5cbiNoZWxwX2FuZF91cGRhdGVzIGEubmV3X2hlbHBfYW5kX3VwZGF0ZXM6YWZ0ZXIsXG4jaGVscF9hbmRfdXBkYXRlc19tZW51IGEubmV3X2hlbHBfYW5kX3VwZGF0ZXM6YWZ0ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDAgMnB4IDAgMnB4O1xuICBmb250LXNpemU6IDhweDtcbiAgY29udGVudDogJ05FVyc7XG4gIGJhY2tncm91bmQ6IGdyZWVuO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xufVxuXG4jaGVscF9hbmRfdXBkYXRlcyBhLm5ld19oZWxwX2FuZF91cGRhdGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuI2hlbHBfYW5kX3VwZGF0ZXNfbWVudSB7XG4gIGltZyB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICB9XG5cbiAgYS5uZXdfaGVscF9hbmRfdXBkYXRlczphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDNweDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cblxuLy8gTU9CSUxFIFNUWUxFUyAodGhlc2UgYXJlIG5vdCByZWFsbHkgc2xpZGUgbmF2IHN0eWxlcywgYnV0IGEgc3BlY2lmaWMgdmVyc2lvbiBmb3IgbW9iaWxlLi4uIG1heWJlIHNwbGl0IHRoZW0gb3V0PylcblxuaHRtbC5oYXMtbW9iaWxlLW5hdiB7XG5cbiAgLy8gYmFja2dyb3VuZCBmb3Igd2hlbiBcImhpZGUgdXNlciBiYXJcIiBzaXRlIHNldHRpbmcgaXMgZW5hYmxlZFxuICBib2R5OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY291bnQtbmF2LWJhY2tncm91bmQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkYWNjb3VudC1uYXYtaGVpZ2h0LW1vYmlsZTtcbiAgfVxuXG4gICNhY2NvdW50TmF2IHtcbiAgICBoZWlnaHQ6ICRhY2NvdW50LW5hdi1oZWlnaHQtbW9iaWxlO1xuXG4gICAgPiBsaSB7XG4gICAgICBoZWlnaHQ6ICRhY2NvdW50LW5hdi1oZWlnaHQtbW9iaWxlO1xuICAgICAgbGluZS1oZWlnaHQ6ICRhY2NvdW50LW5hdi1oZWlnaHQtbW9iaWxlO1xuICAgIH1cbiAgfVxuXG4gIC5uZ2luTG9nbyB7IGRpc3BsYXk6IG5vbmU7IH1cbn1cblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiB7XG5cbiAgI2FjY291bnROYXYge1xuICAgID4gKjpub3QoI2xvZ2luKTpub3QoI2xvZ291dCkgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cblxuICAjbG9naW4sXG4gICNsb2dvdXQge1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIGEge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgaGVpZ2h0OiAkYWNjb3VudC1uYXYtaGVpZ2h0LW1vYmlsZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkYWNjb3VudC1uYXYtaGVpZ2h0LW1vYmlsZTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gU0VBUkNIIEJPWFxuJHBhZ2Utc2VhcmNoLWJveC1oZWlnaHQ6IDMwcHg7XG4kcGFnZS1zZWFyY2gtYm94LXNwYWNpbmc6IDEwcHg7XG4kcGFnZS1zZWFyY2gtYm94LWJvcmRlci13aWR0aDogMDtcbiRwYWdlLXNlYXJjaC1ib3gtY2xlYXItY29sb3I6ICM5Y2E4YWY7XG4kcGFnZS1zZWFyY2gtYm94LWlucHV0LWZvbnQtc2l6ZTogMTZweDtcbiRwYWdlLXNlYXJjaC1ib3gtaW5wdXQtY29sb3I6ICM2NjY7XG4kcGFnZS1zZWFyY2gtYm94LWlucHV0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4kcGFnZS1zZWFyY2gtYm94LWlucHV0LWJhY2tncm91bmQ6ICNGRkY7XG4kcGFnZS1zZWFyY2gtYm94LWlucHV0LWJhY2tncm91bmQtZm9jdXM6ICNGRkY7XG4kcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC1jb2xvcjogI2ZmZjtcbiRwYWdlLXNlYXJjaC1ib3gtc3VibWl0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4kcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC1iYWNrZ3JvdW5kOiAjQ0VDRUNFO1xuJHBhZ2Utc2VhcmNoLWJveC1zdWJtaXQtYmFja2dyb3VuZC1mb2N1czogI0NFQ0VDRTtcbiRwYWdlLXNlYXJjaC1ib3gtc3VibWl0LWZvbnQtc2l6ZTogMTJweDtcbiRwYWdlLXNlYXJjaC1ib3gtc3VibWl0LXdpZHRoOiA2NXB4O1xuXG4vLyBTRUFSQ0hcbiNQYWdlU2VhcmNoQm94IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcGFkZGluZzogJHBhZ2Utc2VhcmNoLWJveC1zcGFjaW5nO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4gIC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6ICRwYWdlLXNlYXJjaC1ib3gtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFnZS1zZWFyY2gtYm94LWhlaWdodDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC1pbnB1dCxcbiAgLnRoZW1lLXNlYXJjaC1jbG9zZSB7IGZvbnQtc2l6ZTogJHBhZ2Utc2VhcmNoLWJveC1pbnB1dC1mb250LXNpemU7IH1cblxuICAudGhlbWUtc2VhcmNoLWlucHV0IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC13aWR0aH0pO1xuICAgIGJhY2tncm91bmQ6ICRwYWdlLXNlYXJjaC1ib3gtaW5wdXQtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6ICRwYWdlLXNlYXJjaC1ib3gtYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdlLXNlYXJjaC1ib3gtaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBwYWRkaW5nOiAwICgkcGFnZS1zZWFyY2gtYm94LWhlaWdodCAtICRwYWdlLXNlYXJjaC1ib3gtYm9yZGVyLXdpZHRoICogMikgMCAkcGFnZS1zZWFyY2gtYm94LXNwYWNpbmc7XG5cbiAgICAmOjotbXMtY2xlYXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogJHBhZ2Utc2VhcmNoLWJveC1pbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6ICRwYWdlLXNlYXJjaC1ib3gtc3VibWl0LXdpZHRoO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJHBhZ2Utc2VhcmNoLWJveC1zdWJtaXQtY29sb3I7XG4gICAgZm9udC1zaXplOiAkcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC1mb250LXNpemU7XG4gICAgYm9yZGVyOiAkcGFnZS1zZWFyY2gtYm94LWJvcmRlci13aWR0aCBzb2xpZCAkcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC1ib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogMCAkcGFnZS1zZWFyY2gtYm94LXNwYWNpbmc7XG4gICAgYmFja2dyb3VuZDogJHBhZ2Utc2VhcmNoLWJveC1zdWJtaXQtYmFja2dyb3VuZDtcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICRwYWdlLXNlYXJjaC1ib3gtc3VibWl0LWJhY2tncm91bmQtZm9jdXM7IH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRvcDogJHBhZ2Utc2VhcmNoLWJveC1zcGFjaW5nO1xuICAgIHJpZ2h0OiAkcGFnZS1zZWFyY2gtYm94LXNwYWNpbmcgKyAkcGFnZS1zZWFyY2gtYm94LXN1Ym1pdC13aWR0aDtcbiAgICB3aWR0aDogJHBhZ2Utc2VhcmNoLWJveC1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcGFnZS1zZWFyY2gtYm94LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHBhZ2Utc2VhcmNoLWJveC1oZWlnaHQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKclVwiO1xuICAgICAgY29sb3I6ICRwYWdlLXNlYXJjaC1ib3gtY2xlYXItY29sb3I7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6ICRwYWdlLXNlYXJjaC1ib3gtaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuIiwiJHNlYXJjaC1tb2RhbC13aWR0aDogNjAwcHg7XG4kc2VhcmNoLW1vZGFsLWJhY2tncm91bmQ6ICNmZmY7XG4kc2VhcmNoLW1vZGFsLXNwYWNpbmc6IDI0cHg7XG4kc2VhcmNoLW1vZGFsLWJvcmRlcjogMXB4IHNvbGlkICNkNGQ5ZGM7XG4kc2VhcmNoLW1vZGFsLWJvcmRlci1yYWRpdXM6IDRweDtcbiRzZWFyY2gtbW9kYWwtY29sb3I6ICMyMzI4MmI7XG4kc2VhcmNoLW1vZGFsLWNvbG9yLXNlY29uZGFyeTogI2I4YzBjNTtcblxuJHNlYXJjaC1tb2RhbC10aXRsZS1zaXplOiAyMnB4O1xuJHNlYXJjaC1tb2RhbC1jbG9zZS1zaXplOiA0NHB4O1xuJHNlYXJjaC1tb2RhbC1jbG9zZS1jb2xvcjogIzljYThhZjtcblxuJHNlYXJjaC1tb2RhbC1ib3gtZm9udC1zaXplOiAxNnB4O1xuJHNlYXJjaC1tb2RhbC1ib3gtZm9udC1zcGFjaW5nOiAxMnB4O1xuJHNlYXJjaC1tb2RhbC1ib3gtY29sb3I6ICM2NjY7XG4kc2VhcmNoLW1vZGFsLWJveC1iYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiRzZWFyY2gtbW9kYWwtYm94LXNpemU6IDQ0cHg7XG4kc2VhcmNoLW1vZGFsLWJveC1ib3JkZXItd2lkdGg6IDA7XG4kc2VhcmNoLW1vZGFsLWJveC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4kc2VhcmNoLW1vZGFsLXJlc3VsdC1zcGFjaW5nOiA2cHg7XG4kc2VhcmNoLW1vZGFsLXJlc3VsdC1zaXplOiA0NHB4O1xuJHNlYXJjaC1tb2RhbC1yZXN1bHQtYm9yZGVyOiAxcHggc29saWQgI2Q0ZDlkYztcbiRzZWFyY2gtbW9kYWwtcmVzdWx0LWJhY2tncm91bmQtaG92ZXI6ICNmMGYxZjI7XG5cbi50aGVtZS1zZWFyY2gtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC41KTtcbn1cblxuLnRoZW1lLXNlYXJjaC1tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMCU7XG4gIGJvdHRvbTogMTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAkc2VhcmNoLW1vZGFsLXdpZHRoIC8gLTI7XG4gIHdpZHRoOiAkc2VhcmNoLW1vZGFsLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiAkc2VhcmNoLW1vZGFsLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJHNlYXJjaC1tb2RhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWFyY2gtbW9kYWwtYm9yZGVyLXJhZGl1cztcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzZWFyY2gtbW9kYWwtd2lkdGggKyA1MCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC8vIEdlbmVyYXRlIG1vZGFsIHRpdGxlLCBzaW5jZSB0aGUgYWN0dWFsIHRpdGxlIGlzIGluIHRoZSBraWxsIGxpbmtcbiAgLnRoZW1lLXNlYXJjaC10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkc2VhcmNoLW1vZGFsLXRpdGxlLXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzZWFyY2gtbW9kYWwtdGl0bGUtc2l6ZTtcbiAgICBjb2xvcjogJHNlYXJjaC1tb2RhbC1jb2xvcjtcbiAgICBwYWRkaW5nOiAkc2VhcmNoLW1vZGFsLXNwYWNpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHNlYXJjaC1tb2RhbC1zcGFjaW5nICsgJHNlYXJjaC1tb2RhbC1jbG9zZS1zaXplO1xuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkc2VhcmNoLW1vZGFsLWNsb3NlLXNpemU7XG4gICAgaGVpZ2h0OiAkc2VhcmNoLW1vZGFsLWNsb3NlLXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzZWFyY2gtbW9kYWwtY2xvc2Utc2l6ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4pyVXCI7XG4gICAgICBjb2xvcjogJHNlYXJjaC1tb2RhbC1jbG9zZS1jb2xvcjtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cblxuICAudGhlbWUtc2VhcmNoLWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2VhcmNoLW1vZGFsLWJveC1zaXplO1xuICAgIHBhZGRpbmc6IDAgJHNlYXJjaC1tb2RhbC1zcGFjaW5nO1xuICAgIGJhY2tncm91bmQ6ICRzZWFyY2gtbW9kYWwtYm94LWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLXRvcDogJHNlYXJjaC1tb2RhbC1ib3gtYm9yZGVyLXdpZHRoIHNvbGlkICRzZWFyY2gtbW9kYWwtYm94LWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAkc2VhcmNoLW1vZGFsLWJveC1ib3JkZXItd2lkdGggc29saWQgJHNlYXJjaC1tb2RhbC1ib3gtYm9yZGVyLWNvbG9yO1xuICAgIGhlaWdodDogJHNlYXJjaC1tb2RhbC1ib3gtc2l6ZSArICRzZWFyY2gtbW9kYWwtYm94LWJvcmRlci13aWR0aCAqIDI7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG5cbiAgJHNlYXJjaC1pbnB1dC1oZWlnaHQ6ICRzZWFyY2gtbW9kYWwtYm94LWZvbnQtc2l6ZSArICgkc2VhcmNoLW1vZGFsLWJveC1zaXplIC0gJHNlYXJjaC1tb2RhbC1ib3gtZm9udC1zaXplKSAvIDI7XG5cbiAgLnRoZW1lLXNlYXJjaC1pbnB1dCB7XG4gICAgY29sb3I6ICRzZWFyY2gtbW9kYWwtYm94LWNvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAkc2VhcmNoLW1vZGFsLWJveC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzZWFyY2gtaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJHNlYXJjaC1pbnB1dC1oZWlnaHQgMCAkc2VhcmNoLW1vZGFsLWJveC1mb250LXNpemUvMjtcbiAgICBib3JkZXI6ICRzZWFyY2gtbW9kYWwtYm94LWJvcmRlci13aWR0aCBzb2xpZCAkc2VhcmNoLW1vZGFsLWJveC1ib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZDogJHNlYXJjaC1tb2RhbC1iYWNrZ3JvdW5kO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOjotbXMtY2xlYXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgJjpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkc2VhcmNoLW1vZGFsLWJveC1zaXplIC0gJHNlYXJjaC1pbnB1dC1oZWlnaHQpIC8gMjtcbiAgICByaWdodDogJHNlYXJjaC1tb2RhbC1zcGFjaW5nO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6ICRzZWFyY2gtaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc2VhcmNoLWlucHV0LWhlaWdodDtcbiAgICB3aWR0aDogJHNlYXJjaC1pbnB1dC1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4pyVXCI7XG4gICAgICBjb2xvcjogIzljYThhZjtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cblxuICAudGhlbWUtc2VhcmNoLXN0YXR1cyB7XG4gICAgY29sb3I6ICRzZWFyY2gtbW9kYWwtY29sb3Itc2Vjb25kYXJ5O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLSRzZWFyY2gtbW9kYWwtc3BhY2luZy8yO1xuICAgIG1hcmdpbi1ib3R0b206ICRzZWFyY2gtbW9kYWwtc3BhY2luZy8yO1xuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC1yZXN1bHRzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkc2VhcmNoLW1vZGFsLXNwYWNpbmcgKiAyICsgJHNlYXJjaC1tb2RhbC10aXRsZS1zaXplICsgJHNlYXJjaC1tb2RhbC1ib3gtc2l6ZSArICRzZWFyY2gtbW9kYWwtYm94LWJvcmRlci13aWR0aCAqIDI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogJHNlYXJjaC1tb2RhbC1zcGFjaW5nO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRzZWFyY2gtbW9kYWwtYm9yZGVyLXJhZGl1cyAkc2VhcmNoLW1vZGFsLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAudGhlbWUtc2VhcmNoLXJlc3VsdCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXRvcDogJHNlYXJjaC1tb2RhbC1yZXN1bHQtYm9yZGVyO1xuXG4gICAgJjpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogJHNlYXJjaC1tb2RhbC1yZXN1bHQtYm9yZGVyOyB9XG5cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtcmVzdWx0LWluZm8ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwYWRkaW5nOiAkc2VhcmNoLW1vZGFsLXJlc3VsdC1zcGFjaW5nO1xuICAgIGhlaWdodDogJHNlYXJjaC1tb2RhbC1yZXN1bHQtc2l6ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHNlYXJjaC1tb2RhbC1yZXN1bHQtYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAudGhlbWUtc2VhcmNoLXJlc3VsdC1wcmltYXJ5IHsgZGlzcGxheTogYmxvY2s7IH1cblxuICAudGhlbWUtc2VhcmNoLXJlc3VsdC1zZWNvbmRhcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGNvbG9yOiAkc2VhcmNoLW1vZGFsLWNvbG9yLXNlY29uZGFyeTtcbiAgfVxufVxuIiwiJHNsaWRlLW5hdi13aWR0aDogMjUwcHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXRhYmxldC13aWR0aDogNDAwcHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjc1KSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFja2dyb3VuZC1jb2xsYXBzZWQ6IHJnYmEoMCwwLDAsMC45KSAhZGVmYXVsdDtcblxuJHNsaWRlLW5hdi1jb250ZW50LXNwYWNpbmc6IDEwcHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LWNvbnRlbnQtYmFja2dyb3VuZDogJGxpbmtfY29sb3IgIWRlZmF1bHQ7XG5cbiRzbGlkZS1uYXYtdG9nZ2xlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNsaWRlLW5hdi10b2dnbGUtY29sb3I6ICNGRkYgIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXRvZ2dsZS1iYWNrZ3JvdW5kLWNvbGxhcHNlZDogJGFjY291bnQtbmF2LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXRvZ2dsZS1jb2xvci1jb2xsYXBzZWQ6ICRhY2NvdW50LW5hdi1jb2xvciAhZGVmYXVsdDtcblxuJHNsaWRlLW5hdi10aXRsZS1jb2xvcjogI2VhZWFlYSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtdGl0bGUtYmFja2dyb3VuZDogJGxpbmtfY29sb3IgIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXRpdGxlLWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtdGl0bGUtaGVpZ2h0OiA0NXB4ICFkZWZhdWx0O1xuXG4kc2xpZGUtbmF2LWJhY2staWNvbjogXCJcXGYwNTNcIiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFjay1jb2xvcjogI0ZGRiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFjay1iYWNrZ3JvdW5kOiAkbGlua19jb2xvciAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFjay1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvciAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtYmFjay1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDUpICFkZWZhdWx0OyAvLyBzZWVtcyB0byBkb3VibGUgdXAgd2hlbiB0cmFuc3BhcmVudFxuXG4kc2xpZGUtbmF2LWZvcndhcmQtaWNvbjogXCJcXGYwNTRcIiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtZm9yd2FyZC1jb2xvcjogI0ZGRiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtZm9yd2FyZC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtZm9yd2FyZC1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvciAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtZm9yd2FyZC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDUpICFkZWZhdWx0OyAvLyBzZWVtcyB0byBkb3VibGUgdXAgd2hlbiB0cmFuc3BhcmVudFxuXG4kc2xpZGUtbmF2LW1lbnUtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRzbGlkZS1uYXYtaXRlbS1jb2xvcjogI0ZGRiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtaXRlbS1jb2xvci1kaXNhYmxlZDogIzk5OSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlua19jb2xvciAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLXNlbGVjdGVkOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQtaG92ZXI6ICRsaW5rX2NvbG9yICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQtc2VsZWN0ZWQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4xKSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtaXRlbS1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMSkgIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LWl0ZW0taGVpZ2h0OiA0NHB4ICFkZWZhdWx0O1xuXG4vLyBTRUFSQ0ggQk9YXG4kc2xpZGUtbmF2LXNlYXJjaC1oZWlnaHQ6IDMwcHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXNlYXJjaC1zcGFjaW5nOiAxMHB4ICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1zZWFyY2gtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXNlYXJjaC1pbnB1dC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXNlYXJjaC1pbnB1dC1jb2xvcjogIzY2NiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtc2VhcmNoLWlucHV0LWJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1zZWFyY2gtaW5wdXQtYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjgpICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1zZWFyY2gtaW5wdXQtYmFja2dyb3VuZC1mb2N1czogcmdiYSgyNTUsMjU1LDI1NSwxKSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1ib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xKSAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1iYWNrZ3JvdW5kOiAkbGluay1jb2xvci1kYXJrZW4tMTAgIWRlZmF1bHQ7XG4kc2xpZGUtbmF2LXNlYXJjaC1zdWJtaXQtYmFja2dyb3VuZC1mb2N1czogJGxpbmstY29sb3ItZGFya2VuLTIwICFkZWZhdWx0O1xuJHNsaWRlLW5hdi1zZWFyY2gtc3VibWl0LWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC13aWR0aDogNzBweCAhZGVmYXVsdDtcblxuaHRtbC5jb2xsYXBzZWQtbW9iaWxlLW5hdiB7XG5cbiAgLy8gTWFrZSBzdXJlIHRoZSBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgdG9wIG5hdiBjb250YWluZXIgc3RhcnRzIGF0IHRoZSB0b3BcbiAgLy8gd2hlbiB0aGUgbmF2IGlzIGNvbGxhcHNlZCBhbmQgdGhlcmUgaXMgY3VzdG9tIHBhZ2UgaGVhZCBodG1sLlxuICAjdG9wTmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLm5hdi1maXhlZCAudGhlbWUtbW9iaWxlLW5hdiB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIC50aGVtZS1uYXYtc3R5bGUtc2xpZGUge1xuICAgIGZvbnQtc2l6ZTogJHNsaWRlLW5hdi1mb250LXNpemU7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LWJhY2tncm91bmQtY29sbGFwc2VkO1xuICAgIHRyYW5zaXRpb246IHJpZ2h0IDIwMG1zIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgLy8gbWF4IHdpZHRoIHdoZW4gY29sbGFwc2VkIGF0IHRhYmxldCBhbmQgYWJvdmVcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7IHdpZHRoOiAkc2xpZGUtbmF2LXRhYmxldC13aWR0aDsgfVxuXG4gICAgJi5zbGlkZS1uYXYtb3BlbiB7XG4gICAgICAudGhlbWUtbmF2LXN0eWxlLXNsaWRlIHsgcmlnaHQ6IGNhbGMoMTAwdncgLSAjeyRzbGlkZS1uYXYtdGFibGV0LXdpZHRofSkgIWltcG9ydGFudDsgfVxuICAgICAgJi5wYWdlLW1hbmFnZXItdmlzaWJsZSAudGhlbWUtbmF2LXN0eWxlLXNsaWRlIHsgcmlnaHQ6IGNhbGMoMTAwdncgLSAjeyRzbGlkZS1uYXYtdGFibGV0LXdpZHRofSAtICN7JHBhZ2UtbWFuYWdlci13aWR0aH0pICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICAudGhlbWUtc2xpZGUtbmF2LW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogOTk5OXB4O1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWxpbmVhcjtcbiAgfVxuXG4gIC50aGVtZS1zbGlkZS1uYXYtdG9nZ2xlIHsgZGlzcGxheTogYmxvY2s7IH1cblxuICAmLnNsaWRlLW5hdi1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBoaWRlIHNjcm9sbCBiYXJcblxuICAgIC8vIG1ha2Ugc3BhY2UgZm9yIHRoZSBtZW51IHRvZ2dsZSB1bmxlc3MgdGhlcmUgaXMgcHJlLXJlbmRlcmVkIGNvbnRlbnRcbiAgICAqOm5vdCgudGhlbWUtc2xpZGUtbmF2LWNvbnRlbnQpICsgLnRoZW1lLW5hdi10aXRsZSAudGhlbWUtbmF2LXRpdGxlLXRleHQge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNsaWRlLW5hdi10aXRsZS1oZWlnaHQ7XG4gICAgfVxuXG4gICAgLnRoZW1lLW5hdi1zdHlsZS1zbGlkZSB7IHJpZ2h0OiAwOyB9XG4gICAgLnRoZW1lLXNsaWRlLW5hdi1vdmVybGF5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuXG5cbiAgICAvLyBJZiBhIHNlYXJjaCBib3ggaXMgdGhlIGZpcnN0IGNvbnRlbnQsIGFkZCBzcGFjaW5nIHRvIGFsbCBzZWFyY2ggYm94ZXMgdG9cbiAgICAvLyBhbGxvdyBzcGFjZSBmb3IgdGhlIGhhbWJ1cmdlciBpY29uIGFuZCBrZWVwIHRoZW0gYWxpZ25lZCB3aXRoIGVhY2ggb3RoZXIuXG4gICAgLnRoZW1lLXNlYXJjaC1ib3g6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgfiAudGhlbWUtc2VhcmNoLWJveCB7IHBhZGRpbmctcmlnaHQ6ICRzbGlkZS1uYXYtdGl0bGUtaGVpZ2h0OyB9XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLnNsaWRlLW5hdi1vcGVuKSB7XG5cbiAgICAudGhlbWUtbmF2LXN0eWxlLXNsaWRlIHsgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbiAgICAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHJpZ2h0OiAtJHNsaWRlLW5hdi10aXRsZS1oZWlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50LWNvbG9yO1xuICAgICAgY29sb3I6ICRzbGlkZS1uYXYtdG9nZ2xlLWNvbG9yLWNvbGxhcHNlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIHRoZXNlIHN0eWxlcyBhcmUgc2xpZGUgbmF2IHNwZWNpZmljIChjYW4gYmUgc2hhcmVkKVxuXG4udGhlbWUtbmF2LXN0eWxlLXNsaWRlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogJHNsaWRlLW5hdi13aWR0aDtcbiAgQGluY2x1ZGUgZmxleC1ib3goY29sdW1uKTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LWJhY2tncm91bmQ7XG5cbiAgLnBhZ2UtbWFuYWdlci12aXNpYmxlICYgeyBsZWZ0OiAkcGFnZS1tYW5hZ2VyLXdpZHRoOyB9XG5cbiAgYTpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4gIC8vIEhFQURFUiBDT05URU5UXG5cbiAgLnRoZW1lLXNsaWRlLW5hdi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBmbGV4KDApO1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtY29udGVudC1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gU0VBUkNIXG5cbiAgJHNsaWRlLW5hdi1zZWFyY2gtbGluZS1oZWlnaHQ6ICRzbGlkZS1uYXYtc2VhcmNoLWhlaWdodCAtICRzbGlkZS1uYXYtc2VhcmNoLWJvcmRlci13aWR0aCAqIDI7XG5cbiAgLnRoZW1lLXNlYXJjaC1ib3gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogJHNsaWRlLW5hdi1jb250ZW50LXNwYWNpbmc7XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgYm9yZGVyLXRvcDogJHNsaWRlLW5hdi10aXRsZS1ib3JkZXI7IH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4gIC50aGVtZS1zZWFyY2gtc3VibWl0LFxuICAudGhlbWUtc2VhcmNoLWNsZWFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6ICRzbGlkZS1uYXYtc2VhcmNoLWhlaWdodDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICR0cmFuc2l0aW9uLWxpbmVhcjtcbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4gIC50aGVtZS1zZWFyY2gtY2xlYXIgeyBmb250LXNpemU6ICRzbGlkZS1uYXYtc2VhcmNoLWlucHV0LWZvbnQtc2l6ZTsgfVxuXG4gIC50aGVtZS1zZWFyY2gtaW5wdXQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC13aWR0aH0pO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2xpZGUtbmF2LXNlYXJjaC1saW5lLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LXNlYXJjaC1pbnB1dC1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJHNsaWRlLW5hdi1zZWFyY2gtYm9yZGVyLXdpZHRoIHNvbGlkICRzbGlkZS1uYXYtc2VhcmNoLWlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgcGFkZGluZzogMCAoJHNsaWRlLW5hdi1zZWFyY2gtbGluZS1oZWlnaHQpIDAgJHNsaWRlLW5hdi1zZWFyY2gtc3BhY2luZztcblxuICAgICY6Oi1tcy1jbGVhciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LXNlYXJjaC1pbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtc3VibWl0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6ICRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC13aWR0aDtcbiAgICBsaW5lLWhlaWdodDogJHNsaWRlLW5hdi1zZWFyY2gtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAkc2xpZGUtbmF2LXNlYXJjaC1zdWJtaXQtZm9udC1zaXplO1xuICAgIGJvcmRlcjogJHNsaWRlLW5hdi1zZWFyY2gtYm9yZGVyLXdpZHRoIHNvbGlkICRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1ib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogMCAkc2xpZGUtbmF2LXNlYXJjaC1zcGFjaW5nO1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtc2VhcmNoLXN1Ym1pdC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1zZWFyY2gtc3VibWl0LWJhY2tncm91bmQtZm9jdXM7IH1cbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IDAgLSAkc2xpZGUtbmF2LXNlYXJjaC1oZWlnaHQgLSAkc2xpZGUtbmF2LXNlYXJjaC1ib3JkZXItd2lkdGg7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2xpZGUtbmF2LXNlYXJjaC1ib3JkZXItd2lkdGg7XG4gICAgd2lkdGg6ICRzbGlkZS1uYXYtc2VhcmNoLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHNsaWRlLW5hdi1zZWFyY2gtaGVpZ2h0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLinJVcIjtcbiAgICAgIGNvbG9yOiAjOWNhOGFmO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zaXplOiAkc2xpZGUtbmF2LXNlYXJjaC1pbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8vLy9cblxuICAudGhlbWUtc2xpZGUtbmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBmb250LXNpemU6ICRzbGlkZS1uYXYtZm9udC1zaXplICogMS4yNTtcbiAgICBsaW5lLWhlaWdodDogJHNsaWRlLW5hdi10aXRsZS1oZWlnaHQ7XG4gICAgd2lkdGg6ICRzbGlkZS1uYXYtdGl0bGUtaGVpZ2h0O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogJHNsaWRlLW5hdi10b2dnbGUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHNsaWRlLW5hdi10b2dnbGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgY29udGVudDogXCJcXGYwYzlcIjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHsgY29sb3I6ICNlZWU7IH1cbiAgfVxuXG4gIC50aGVtZS1uYXYtdGl0bGUge1xuICAgIEBpbmNsdWRlIGZsZXgoMCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoZWlnaHQ6ICRzbGlkZS1uYXYtdGl0bGUtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtdGl0bGUtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6ICRzbGlkZS1uYXYtdGl0bGUtYm9yZGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAudGhlbWUtbmF2LXRpdGxlLXRleHQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjb2xvcjogJHNsaWRlLW5hdi10aXRsZS1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC50aGVtZS1uYXYtYmFjayxcbiAgLnRoZW1lLW5hdi1mb3J3YXJkIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6ICRzbGlkZS1uYXYtZm9udC1zaXplICogMC42MjU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1saW5lYXI7XG4gIH1cblxuICAudGhlbWUtbmF2LWJhY2sge1xuICAgIGNvbG9yOiAkc2xpZGUtbmF2LWJhY2stY29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAkc2xpZGUtbmF2LWJhY2stYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtYmFjay1iYWNrZ3JvdW5kO1xuICAgIHdpZHRoOiAkc2xpZGUtbmF2LXRpdGxlLWhlaWdodDtcblxuICAgICY6YmVmb3JlIHsgY29udGVudDogJHNsaWRlLW5hdi1iYWNrLWljb247IH1cbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1iYWNrLWJhY2tncm91bmQtaG92ZXI7IH1cbiAgfVxuXG4gIC50aGVtZS1uYXYtZm9yd2FyZCB7XG4gICAgY29sb3I6ICRzbGlkZS1uYXYtYmFjay1jb2xvcjtcbiAgICBib3JkZXItbGVmdDogJHNsaWRlLW5hdi1mb3J3YXJkLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LWZvcndhcmQtYmFja2dyb3VuZDtcbiAgICB3aWR0aDogJHNsaWRlLW5hdi1pdGVtLWhlaWdodDtcblxuICAgICY6YmVmb3JlIHsgY29udGVudDogJHNsaWRlLW5hdi1mb3J3YXJkLWljb247IH1cbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1mb3J3YXJkLWJhY2tncm91bmQtaG92ZXI7IH1cbiAgfVxuXG4gIC5kaXNhYmxlZCA+IC50aGVtZS1uYXYtZm9yd2FyZDpob3ZlciB7IGJhY2tncm91bmQ6IGRhcmtlbigjQ0NDLCA1KTsgfVxuXG4gIC8vIC5tZW51IGRpdiBpbiAjdG9wTmF2XG4gIC50aGVtZS1uYXYtbWVudXMge1xuICAgIEBpbmNsdWRlIGZsZXgoMSwxLDEwMCUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgfVxuXG4gIC50aGVtZS1uYXYtbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1tZW51LWJhY2tncm91bmQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgIHBhZGRpbmctYm90dG9tOiA3MnB4OyAvLyBBZGQgZXh0cmEgc3BhY2luZyBmb3IgaW9zIGNocm9tZSBjb2xsYXBzZS5cbiAgfVxuXG4gIC50aGVtZS1uYXYtcGFyZW50LWluLFxuICAudGhlbWUtbmF2LXBhcmVudC1vdXQgeyBsZWZ0OiAtMTAlOyBvcGFjaXR5OiAwOyB9XG4gIC50aGVtZS1uYXYtY2hpbGRyZW4taW4sXG4gIC50aGVtZS1uYXYtY2hpbGRyZW4tb3V0IHsgbGVmdDogMTAwJTsgfVxuICAudGhlbWUtbmF2LXBhcmVudC1vdXQsXG4gIC50aGVtZS1uYXYtY2hpbGRyZW4tb3V0IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAudGhlbWUtbmF2LWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXI6ICRzbGlkZS1uYXYtaXRlbS1ib3JkZXI7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogJHNsaWRlLW5hdi1pdGVtLWhlaWdodDtcblxuICAgICYucGF5d2FsbGVkIHtcbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCA+IC50aGVtZS1uYXYtbGluayB7IGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLXNlbGVjdGVkOyB9XG4gICAgPiAudGhlbWUtbmF2LWxpbms6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjsgfVxuXG4gICAgJi5kaXNhYmxlZCA+ICoge1xuICAgICAgY29sb3I6ICRzbGlkZS1uYXYtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGJhY2tncm91bmQ6ICRzbGlkZS1uYXYtaXRlbS1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQuc2VsZWN0ZWQgPiAudGhlbWUtbmF2LWxpbmsgeyBiYWNrZ3JvdW5kOiAkc2xpZGUtbmF2LWl0ZW0tYmFja2dyb3VuZC1kaXNhYmxlZC1zZWxlY3RlZDsgfVxuICAgICYuZGlzYWJsZWQgPiAqOmhvdmVyIHsgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtZGlzYWJsZWQtaG92ZXI7IH1cblxuICB9XG5cbiAgLnRoZW1lLW5hdi1saW5rIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBjb2xvcjogJHNsaWRlLW5hdi1pdGVtLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1saW5lYXI7XG5cbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJHNsaWRlLW5hdi1pdGVtLWJhY2tncm91bmQtaG92ZXI7IH1cbiAgfVxuXG59XG4iLCJAbWl4aW4gZmxleC1ib3goJGRpciwgJGlubGluZTpmYWxzZSkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIEBpZiAkaW5saW5lIHtcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfSBAZWxzZSB7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyO1xuICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXI7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyO1xuXG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAaWYgJGRpciA9PSBcInJvd1wiIHtcbiAgICA+ICogeyBoZWlnaHQ6IDEwMCU7IH1cbiAgfSBAZWxzZSB7XG4gICAgPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgfVxufVxuQG1peGluIGlubGluZS1mbGV4LWJveCgkZGlyKSB7XG4gIEBpbmNsdWRlIGZsZXgtYm94KCRkaXIsIHRydWUpXG59XG5cbkBtaXhpbiBmbGV4KCRmbGV4OjEsICRzaHJpbms6MCwgJGJhc2lzOmF1dG8pIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mbGV4OiAkZmxleCAkc2hyaW5rICRiYXNpcztcbiAgLW1zLWZsZXg6ICRmbGV4ICRzaHJpbmsgJGJhc2lzO1xuICBmbGV4OiAkZmxleCAkc2hyaW5rICRiYXNpcztcbn1cblxuXG4vLyBNaXhpbnMgdG8gYWRkIHZlbmRvciBwcmVmaXhlcyBmb3IgaW5kaXZpZHVhbCBmbGV4IHJlbGF0ZWQgc3R5bGVzXG5cbkBtaXhpbiBkaXNwbGF5LWZsZXgge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG5AbWl4aW4gZmxleC1iYXNpcygkYmFzaXM6YXV0bykge1xuICAtd2Via2l0LWZsZXgtYmFzaXM6ICRiYXNpcztcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICRiYXNpcztcbiAgZmxleC1iYXNpczogJGJhc2lzO1xufVxuXG5AbWl4aW4gZmxleC1ncm93KCRncm93OjEpIHtcbiAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAtbXMtZmxleC1wb3NpdGl2ZTogJGdyb3c7XG4gIGZsZXgtZ3JvdzogJGdyb3c7XG59XG5cbkBtaXhpbiBmbGV4LXdyYXAoJHdyYXA6d3JhcCkge1xuICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6ICR3cmFwO1xuICBmbGV4LXdyYXA6ICR3cmFwO1xufVxuIiwiLy8gcmVzZXQgc29tZSBnbG9iYWwgcnVsZXMgdGhhdCBzY3JldyB0aGluZ3MgdXBcbi5nc2MtY29udHJvbC1jc2UsXG4uZ3NjLXNlYXJjaC1ib3gge1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcblxuICAmLCAqIHtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICBib3gtc2l6aW5nOiBpbml0aWFsO1xuICB9XG59XG5cbi8vIHVwZGF0ZSBzZWFyY2ggYm94IGFsaWdubWVudCBpbiB0aGUgbW9kYWxcbi50aGVtZS1zZWFyY2gtbW9kYWwge1xuICBcbiAgLmdzYy1zZWFyY2gtYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgLmdzYy1jbGVhci1idXR0b24geyBkaXNwbGF5OiBub25lOyB9XG59XG4iLCIvKiBUT0RPOiBHZXQgcmlkIG9mIHRoaXMgbG9uZyBhbmQgaGFyZCB0byBtYWludGFpbiBsaXN0IGFuZCBqdXN0IHVzZSBhIGNsZWFyZml4IGNsYXNzICovXG5cbi8qIEludGVybmV0IEV4cGxvcmVyICovXG4uY2xlYXJmaXggeyB6b29tOiAxOyB9XG5cbi8qIEV2ZXJ5dGhpbmcgZWxzZSAqL1xuLmNsZWFyZml4OmFmdGVyLFxuLmJveHNjb3JlLWNvbnRhaW5lcjphZnRlcixcbi5ib3hzY29yZS1leHRyYXM6YWZ0ZXIsXG4uYnJhY2tldC1nYW1lIHA6YWZ0ZXIsXG4jYnJhY2tldC1zZWVkLWxpc3QgcDphZnRlcixcbiNicmFja2V0LXRlYW1zIHA6YWZ0ZXIsXG4uYnJhY2tldC1nYW1lIHA6YWZ0ZXIsXG4uY21zR2FtZVN0YXR1czphZnRlcixcbi5jbXNHYW1lU3RhdHVzIHVsOmFmdGVyLFxuLmNtc1BhZ2VTdGF0dXM6YWZ0ZXIsXG4uY29tbWVudC1jb250YWluZXI6YWZ0ZXIsXG4uY29tbWVudC1mb3JtOmFmdGVyLFxuLmNvbW1lbnQ6YWZ0ZXIsXG4uZ2FtZS1saXN0aW5nOmFmdGVyLFxuLmdhbWVTdGF0dXNDb25zdHJ1Y3Rpb246YWZ0ZXIsXG4ubGVhZGVyLWhpZ2hsaWdodDphZnRlcixcbi5sb2dpbi1vcHRpb25zOmFmdGVyLFxuLmxvZ2luLW9wdGlvbnMtYm9keTphZnRlcixcbi5sb2dpbi1vcHRpb25zLWZvb3RlcjphZnRlcixcbi5sb2dpbi1vcHRpb25zLWhlYWRlcjphZnRlcixcbi5uZXdzSXRlbUVsZW1lbnQ6YWZ0ZXIsXG4jcGhvdG9HYWxsZXJ5Q29udHJvbHM6YWZ0ZXIsXG4jcGhvdG9HYWxsZXJ5Q29udHJvbHMgLmxheW91dENvbnRhaW5lcjphZnRlcixcbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb246YWZ0ZXIsXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQ6YWZ0ZXIsXG4jbWVnYURyb3BEb3duIC5zZWFzb246YWZ0ZXIsXG4uc2Vhc29uLXRpdGxlOmFmdGVyLFxuLnNlYXNvbiAuaGVhZGVyOmFmdGVyLFxuI3Nwb3J0LWNvbG9yczphZnRlcixcbiNzcG9ydC1zbGlkZXI6YWZ0ZXIsXG4uc3BvcnQtdG9vbHM6YWZ0ZXIsXG4uc3BvcnQtdG9vbHMgdWw6YWZ0ZXIsXG4uc3BvcnQtdG9vbHMgdWwgbGk6YWZ0ZXIsXG4uc3ViY29tbWVudDphZnRlcixcbiNtZWdhRHJvcERvd24gLnN1YnNlYXNvbjphZnRlcixcbiNzdXJ2ZXlfc3RlcHMgZm9ybTphZnRlcixcbi5zdXJ2ZXlGb3J3YXJkQnV0dG9uOmFmdGVyLFxuLnRvb2x0aXAtaW5uZXI6YWZ0ZXIsXG4udG9vbHRpcC1vdXRlcjphZnRlcixcbi53aWRnZXRGb290ZXI6YWZ0ZXIsXG4ud2lkZ2V0SGllcmFyY2h5IC5zaW5nbGVMZXZlbDphZnRlcixcbi53aWRnZXQtdGVhbUJ1dHRvbnMgYTphZnRlcixcbi53aWRnZXQtdGVhbUJ1dHRvbnMgLnNwb3J0LWNvbG9yczphZnRlcixcbi53aWRnZXQtbGVhZGVyOmFmdGVyLFxuLndpZGdldC1sZWFkZXIgdGFibGUgbGkgcDphZnRlclxue2NvbnRlbnQ6XCIuXCI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtjbGVhcjpib3RoO3Zpc2liaWxpdHk6aGlkZGVuO31cbiIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuMiAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLyohXG4gKiBUaGlzIGlzIGp1c3QgdGhlIGdyaWQgdXNlLCBJJ3ZlIGRlbGV0ZWQgZXZlcnl0aGluZyBlbHNlIG91dCBhcyB3ZSBkb24ndCBuZWVkIGl0IGFzIHdlIGhhdmUgb3VyIG93biBzdHlsZXMgYW5kIGl0IGVuZHMgdXAgYmVpbmcgY29uZmxpY3RlZC4gMy8xOS8yMDE1IC0gSm9lIEIuXG5cblxuICogR2VuZXJhdGVkIHVzaW5nIHRoZSBCb290c3RyYXAgQ3VzdG9taXplciAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20vY3VzdG9taXplLz9pZD01ZWRiMDAwZWU3OWU3YmIzNjMxNSlcbiAqIENvbmZpZyBzYXZlZCB0byBjb25maWcuanNvbiBhbmQgaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vNWVkYjAwMGVlNzllN2JiMzYzMTVcbiAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4yIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG4uY29udGFpbmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuLyogLk5HSU5fdGlwIC5jb250YWluZXIgKi9cbi5OR0lOX3RpcCAuY29udGFpbmVye1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogNzUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogOTcwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDExNzBweDtcbiAgfVxufVxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbn1cbi5yb3cge1xuXG59XG4uY29sLXhzLTEsIC5jb2wtc20tMSwgLmNvbC1tZC0xLCAuY29sLWxnLTEsIC5jb2wteHMtMiwgLmNvbC1zbS0yLCAuY29sLW1kLTIsIC5jb2wtbGctMiwgLmNvbC14cy0zLCAuY29sLXNtLTMsIC5jb2wtbWQtMywgLmNvbC1sZy0zLCAuY29sLXhzLTQsIC5jb2wtc20tNCwgLmNvbC1tZC00LCAuY29sLWxnLTQsIC5jb2wteHMtNSwgLmNvbC1zbS01LCAuY29sLW1kLTUsIC5jb2wtbGctNSwgLmNvbC14cy02LCAuY29sLXNtLTYsIC5jb2wtbWQtNiwgLmNvbC1sZy02LCAuY29sLXhzLTcsIC5jb2wtc20tNywgLmNvbC1tZC03LCAuY29sLWxnLTcsIC5jb2wteHMtOCwgLmNvbC1zbS04LCAuY29sLW1kLTgsIC5jb2wtbGctOCwgLmNvbC14cy05LCAuY29sLXNtLTksIC5jb2wtbWQtOSwgLmNvbC1sZy05LCAuY29sLXhzLTEwLCAuY29sLXNtLTEwLCAuY29sLW1kLTEwLCAuY29sLWxnLTEwLCAuY29sLXhzLTExLCAuY29sLXNtLTExLCAuY29sLW1kLTExLCAuY29sLWxnLTExLCAuY29sLXhzLTEyLCAuY29sLXNtLTEyLCAuY29sLW1kLTEyLCAuY29sLWxnLTEyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogKCRib290c3RyYXAtcGFkZGluZy1tZCAqIDFweCk7XG4gIHBhZGRpbmctcmlnaHQ6ICgkYm9vdHN0cmFwLXBhZGRpbmctbWQgKiAxcHgpO1xufVxuLmVkaXRfbW9kZSAubGF5b3V0Q29udGFpbmVye1xuICAuY29sLXhzLTEsIC5jb2wtc20tMSwgLmNvbC1tZC0xLCAuY29sLWxnLTEsIC5jb2wteHMtMiwgLmNvbC1zbS0yLCAuY29sLW1kLTIsIC5jb2wtbGctMiwgLmNvbC14cy0zLCAuY29sLXNtLTMsIC5jb2wtbWQtMywgLmNvbC1sZy0zLCAuY29sLXhzLTQsIC5jb2wtc20tNCwgLmNvbC1tZC00LCAuY29sLWxnLTQsIC5jb2wteHMtNSwgLmNvbC1zbS01LCAuY29sLW1kLTUsIC5jb2wtbGctNSwgLmNvbC14cy02LCAuY29sLXNtLTYsIC5jb2wtbWQtNiwgLmNvbC1sZy02LCAuY29sLXhzLTcsIC5jb2wtc20tNywgLmNvbC1tZC03LCAuY29sLWxnLTcsIC5jb2wteHMtOCwgLmNvbC1zbS04LCAuY29sLW1kLTgsIC5jb2wtbGctOCwgLmNvbC14cy05LCAuY29sLXNtLTksIC5jb2wtbWQtOSwgLmNvbC1sZy05LCAuY29sLXhzLTEwLCAuY29sLXNtLTEwLCAuY29sLW1kLTEwLCAuY29sLWxnLTEwLCAuY29sLXhzLTExLCAuY29sLXNtLTExLCAuY29sLW1kLTExLCAuY29sLWxnLTExLCAuY29sLXhzLTEyLCAuY29sLXNtLTEyLCAuY29sLW1kLTEyLCAuY29sLWxnLTEyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLmNvbC14cy0xLCAuY29sLXhzLTIsIC5jb2wteHMtMywgLmNvbC14cy00LCAuY29sLXhzLTUsIC5jb2wteHMtNiwgLmNvbC14cy03LCAuY29sLXhzLTgsIC5jb2wteHMtOSwgLmNvbC14cy0xMCwgLmNvbC14cy0xMSwgLmNvbC14cy0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmNvbC14cy0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbC14cy0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NjY2NyU7XG59XG4uY29sLXhzLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG4uY29sLXhzLTgge1xuICB3aWR0aDogNjYuNjY2NjY2NjclO1xufVxuLmNvbC14cy03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG4uY29sLXhzLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjclO1xufVxuLmNvbC14cy00IHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG4uY29sLXhzLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjclO1xufVxuLmNvbC14cy0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMlO1xufVxuLmNvbC14cy1wdWxsLTEyIHtcbiAgcmlnaHQ6IDEwMCU7XG59XG4uY29sLXhzLXB1bGwtMTEge1xuICByaWdodDogOTEuNjY2NjY2NjclO1xufVxuLmNvbC14cy1wdWxsLTEwIHtcbiAgcmlnaHQ6IDgzLjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtcHVsbC05IHtcbiAgcmlnaHQ6IDc1JTtcbn1cbi5jb2wteHMtcHVsbC04IHtcbiAgcmlnaHQ6IDY2LjY2NjY2NjY3JTtcbn1cbi5jb2wteHMtcHVsbC03IHtcbiAgcmlnaHQ6IDU4LjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtcHVsbC02IHtcbiAgcmlnaHQ6IDUwJTtcbn1cbi5jb2wteHMtcHVsbC01IHtcbiAgcmlnaHQ6IDQxLjY2NjY2NjY3JTtcbn1cbi5jb2wteHMtcHVsbC00IHtcbiAgcmlnaHQ6IDMzLjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtcHVsbC0zIHtcbiAgcmlnaHQ6IDI1JTtcbn1cbi5jb2wteHMtcHVsbC0yIHtcbiAgcmlnaHQ6IDE2LjY2NjY2NjY3JTtcbn1cbi5jb2wteHMtcHVsbC0xIHtcbiAgcmlnaHQ6IDguMzMzMzMzMzMlO1xufVxuLmNvbC14cy1wdWxsLTAge1xuICByaWdodDogYXV0bztcbn1cbi5jb2wteHMtcHVzaC0xMiB7XG4gIGxlZnQ6IDEwMCU7XG59XG4uY29sLXhzLXB1c2gtMTEge1xuICBsZWZ0OiA5MS42NjY2NjY2NyU7XG59XG4uY29sLXhzLXB1c2gtMTAge1xuICBsZWZ0OiA4My4zMzMzMzMzMyU7XG59XG4uY29sLXhzLXB1c2gtOSB7XG4gIGxlZnQ6IDc1JTtcbn1cbi5jb2wteHMtcHVzaC04IHtcbiAgbGVmdDogNjYuNjY2NjY2NjclO1xufVxuLmNvbC14cy1wdXNoLTcge1xuICBsZWZ0OiA1OC4zMzMzMzMzMyU7XG59XG4uY29sLXhzLXB1c2gtNiB7XG4gIGxlZnQ6IDUwJTtcbn1cbi5jb2wteHMtcHVzaC01IHtcbiAgbGVmdDogNDEuNjY2NjY2NjclO1xufVxuLmNvbC14cy1wdXNoLTQge1xuICBsZWZ0OiAzMy4zMzMzMzMzMyU7XG59XG4uY29sLXhzLXB1c2gtMyB7XG4gIGxlZnQ6IDI1JTtcbn1cbi5jb2wteHMtcHVzaC0yIHtcbiAgbGVmdDogMTYuNjY2NjY2NjclO1xufVxuLmNvbC14cy1wdXNoLTEge1xuICBsZWZ0OiA4LjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtcHVzaC0wIHtcbiAgbGVmdDogYXV0bztcbn1cbi5jb2wteHMtb2Zmc2V0LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7XG59XG4uY29sLXhzLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG59XG4uY29sLXhzLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG59XG4uY29sLXhzLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cbi5jb2wteHMtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xufVxuLmNvbC14cy1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG59XG4uY29sLXhzLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cbi5jb2wteHMtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xufVxuLmNvbC14cy1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG59XG4uY29sLXhzLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cbi5jb2wteHMtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xufVxuLmNvbC14cy1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbn1cbi5jb2wteHMtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmNvbC1zbS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1zbS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLXNtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLXNtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLXNtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTtcbiAgfVxuICAuY29sLXNtLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVsbC05IHtcbiAgICByaWdodDogNzUlO1xuICB9XG4gIC5jb2wtc20tcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVsbC02IHtcbiAgICByaWdodDogNTAlO1xuICB9XG4gIC5jb2wtc20tcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVsbC0zIHtcbiAgICByaWdodDogMjUlO1xuICB9XG4gIC5jb2wtc20tcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gIC5jb2wtc20tcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLXNtLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtc20tcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtc20tcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtc20tcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSB7XG4gIC5jb2wtbWQtMSwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1tZC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtcHVsbC0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC1wdWxsLTExIHtcbiAgICByaWdodDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtcHVsbC0xMCB7XG4gICAgcmlnaHQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtOSB7XG4gICAgcmlnaHQ6IDc1JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtOCB7XG4gICAgcmlnaHQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtNyB7XG4gICAgcmlnaHQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtNiB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtNSB7XG4gICAgcmlnaHQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtNCB7XG4gICAgcmlnaHQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMyB7XG4gICAgcmlnaHQ6IDI1JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMiB7XG4gICAgcmlnaHQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLXB1bGwtMSB7XG4gICAgcmlnaHQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtcHVsbC0wIHtcbiAgICByaWdodDogYXV0bztcbiAgfVxuICAuY29sLW1kLXB1c2gtMTIge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTEwIHtcbiAgICBsZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTkge1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAuY29sLW1kLXB1c2gtOCB7XG4gICAgbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtcHVzaC03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTYge1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAuY29sLW1kLXB1c2gtNSB7XG4gICAgbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtcHVzaC00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1wdXNoLTMge1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAuY29sLW1kLXB1c2gtMiB7XG4gICAgbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtcHVzaC0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLXB1c2gtMCB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuY29sLW1kLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLWxnLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTEyIHtcbiAgICByaWdodDogMTAwJTtcbiAgfVxuICAuY29sLWxnLXB1bGwtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC05IHtcbiAgICByaWdodDogNzUlO1xuICB9XG4gIC5jb2wtbGctcHVsbC04IHtcbiAgICByaWdodDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC03IHtcbiAgICByaWdodDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC02IHtcbiAgICByaWdodDogNTAlO1xuICB9XG4gIC5jb2wtbGctcHVsbC01IHtcbiAgICByaWdodDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC00IHtcbiAgICByaWdodDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVsbC0zIHtcbiAgICByaWdodDogMjUlO1xuICB9XG4gIC5jb2wtbGctcHVsbC0yIHtcbiAgICByaWdodDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctcHVsbC0xIHtcbiAgICByaWdodDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy1wdWxsLTAge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gIC5jb2wtbGctcHVzaC0xMiB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtOSB7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtbGctcHVzaC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtNiB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtbGctcHVzaC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLXB1c2gtMyB7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtbGctcHVzaC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1wdXNoLTEge1xuICAgIGxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctcHVzaC0wIHtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxufVxuLmNsZWFyZml4OmJlZm9yZSxcbi5jbGVhcmZpeDphZnRlcixcbi5jb250YWluZXI6YmVmb3JlLFxuLmNvbnRhaW5lcjphZnRlcixcbi5jb250YWluZXItZmx1aWQ6YmVmb3JlLFxuLmNvbnRhaW5lci1mbHVpZDphZnRlcixcbi5yb3c6YmVmb3JlLFxuLnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5jbGVhcmZpeDphZnRlcixcbi5jb250YWluZXI6YWZ0ZXIsXG4uY29udGFpbmVyLWZsdWlkOmFmdGVyLFxuLnJvdzphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4uYWZmaXgge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5ALW1zLXZpZXdwb3J0IHtcbiAgd2lkdGg6IGRldmljZS13aWR0aDtcbn1cbi52aXNpYmxlLXhzLFxuLnZpc2libGUtc20sXG4udmlzaWJsZS1tZCxcbi52aXNpYmxlLWxnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgdHIudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGgudmlzaWJsZS14cyxcbiAgdGQudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudmlzaWJsZS14cy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgdHIudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGgudmlzaWJsZS1zbSxcbiAgdGQudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudmlzaWJsZS1zbS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG4gIHRyLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnZpc2libGUtbWQsXG4gIHRkLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnZpc2libGUtbWQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgdHIudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGgudmlzaWJsZS1sZyxcbiAgdGQudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4teHMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmhpZGRlbi1zbSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oaWRkZW4tbGcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgcHJpbnQge1xuICAudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuICB0ci52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0aC52aXNpYmxlLXByaW50LFxuICB0ZC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC52aXNpYmxlLXByaW50LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5oaWRkZW4tcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQG1peGluIGJveHNjb3JlLW5hcnJvdyB7XG4gIHRyID4gKjpub3QoLnRlYW0pOm5vdCguc2NvcmUtZmluYWwpIHsgZGlzcGxheTogbm9uZTsgfVxufVxuLy8gYWJvdmUgOTk5IC0gMjUlXG4vLyA3NjgtOTk5IC0gMzMlLCBhbGwgY29sdW1ucyBpbiAyNS01MC0yNVxuQG1peGluIGJveHNjb3JlLWNvbGxhcHNlLXRlYW0ge1xuICAudGVhbUxvZ28tc21hbGwgeyBkaXNwbGF5OiBub25lOyB9XG59XG5cbiVib3hzY29yZS10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSB0YWJsZTtcblxuICB0aCB7XG4gICAgQGluY2x1ZGUgdGFibGUtdGg7XG4gICAgQGluY2x1ZGUgdGFibGUtdGgtdGV4dDtcbiAgfVxuXG4gIHRkIHtcbiAgICBAaW5jbHVkZSB0YWJsZS10ZDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgdGQsIHRoIHtcbiAgICAmLnRlYW0geyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgJjpub3QoLnRlYW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNnB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gICAgLmNvbC1tZC0zICYge1xuICAgICAgQGluY2x1ZGUgYm94c2NvcmUtbmFycm93O1xuICAgICAgQGluY2x1ZGUgYm94c2NvcmUtY29sbGFwc2UtdGVhbTtcbiAgICB9XG4gIH1cblxuICAvLyBERVNLVE9QL1RBQkxFVFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNvbC1tZC0zICYsXG4gICAgLmNvbC1tZC00ICYgeyBAaW5jbHVkZSBib3hzY29yZS1uYXJyb3c7IH1cbiAgfVxuXG4gIC8vIFRBQkxFVFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgICAubGF5b3V0LTUwLTUwIC5jb2wtbWQtNiAmIHsgQGluY2x1ZGUgYm94c2NvcmUtbmFycm93OyB9XG5cbiAgICAuY29sLW1kLTQgJixcbiAgICAubGF5b3V0LTI1LTUwLTI1ICYge1xuICAgICAgQGluY2x1ZGUgYm94c2NvcmUtbmFycm93O1xuICAgICAgQGluY2x1ZGUgYm94c2NvcmUtY29sbGFwc2UtdGVhbTtcbiAgICB9XG4gIH1cblxuICAvLyBQSE9ORVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgQGluY2x1ZGUgYm94c2NvcmUtbmFycm93O1xuICB9XG59XG5cbi5ib3hzY29yZS1jb250YWluZXIge1xuXG4gICN0YWJfYm94c2NvcmVzX2NvbnRlbnQgJiB7IG1hcmdpbi10b3A6IDMwcHg7IH1cblxuICAudGVhbSB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuICAudGVhbU5hbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC50YWJsZS13cmFwcGVyLXNjcm9sbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgfVxuXG4gIC50ZWFtTG9nby1zbWFsbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBAaW5jbHVkZSB0YWJsZS10ZWFtLWxvZ287XG4gICAgbWFyZ2luOiAycHggNnB4IDJweCAwO1xuICB9XG5cbiAgdGFibGUuYm94c2NvcmUge1xuICAgIEBleHRlbmQgJWJveHNjb3JlLXRhYmxlO1xuICB9XG5cbiAgLmJveHNjb3JlLWlubmVyLWNvbnRhaW5lciB7IGNsZWFyOiBib3RoOyB9XG5cbiAgLmJveHNjb3JlLWV4dHJhcyB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOmJvdHRvbSk7XG5cbiAgICAuZGF0ZXRpbWUgeyBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAgIC50aW1lIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4gICAgLmxvY2F0aW9uLFxuICAgIC5nYW1lLWlkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIH1cblxuICAgIC5nYW1lLXNob3ctbGluayB7XG4gICAgICBAaW5jbHVkZSBsaW5rLXdpdGgtYXJyb3c7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVG91cm5leSBFbGVtZW50XG4uc24tdGFibGUtZ2FtZS1oaWdobGlnaHQge1xuICBAaW5jbHVkZSB0YWJsZTtcblxuICB0aCB7XG4gICAgQGluY2x1ZGUgdGFibGUtdGg7XG4gICAgQGluY2x1ZGUgdGFibGUtdGgtdGV4dDtcbiAgfVxuXG4gIHRib2R5IHRkIHsgQGluY2x1ZGUgdGFibGUtdGQ7IH1cbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICB0ZCB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBAaW5jbHVkZSBsaW5lLXBhdHRlcm4tYm9yZGVyKCRwb3M6Ym90dG9tKTtcblxuICAgICAgPiBkaXYgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICB9XG5cbiAgICAvLyBTdW1tYXJ5IGxpbmtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGxpbmstd2l0aC1hcnJvdztcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLyogRkNLIEVkaXRvciB0d2Vha3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zZWxlY3RFbGVtZW50e1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBoZWlnaHQ6IDE1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICBtYXJnaW46IDAgMjVweDtcbiAgLm9kZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUZFRkVGO1xuICB9XG4gIGxpe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLnNlbGVjdEVsZW1lbnQgaW5wdXQsIC5zZWxlY3RFbGVtZW50IGltZywgLnNlbGVjdEVsZW1lbnQgaDR7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyogQ01TIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNtc0J1dHRvbntcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvY21zQnV0dG9uLmdpZicpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIEFkbWluIFRvZ2dsZSBCdXR0b25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5nb1RvQWRtaW57XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3NpdGVBZG1pblRvZ2dsZS5naWYnKTtcbn1cblxuLmdvVG9XZWJzaXRle1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy93ZWJzaXRlVG9nZ2xlLmdpZicpO1xufVxuXG4vKiBBRE1JTiAtIFBhZ2UgT3B0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2FkbWluUGFnZU9wdGlvbnN7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZERTg3MjtcbiAgYXtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgb3B0aW9ue1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cbiAgbGFiZWx7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmVkaXRQYWdlTGluazpsaW5rLCAuZWRpdFBhZ2VMaW5rOnZpc2l0ZWR7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlEMTAwO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG4gIG1hcmdpbjogMCAxcHggMjVweCAxcHg7XG59XG5cbi8qIENvbnN0cnVjdGlvbiBSYXBpZCBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9ue1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMDtcbiAgYmFja2dyb3VuZDogI0ZERTg3MiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZicpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgLnBhZ2VFbGVtZW50QWRtaW57XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6ICNGRkYzQjA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgICAucGFnZUVsZW1lbnR7XG4gICAgICBtYXJnaW46IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5yYXBpZFRhYnNDb25zdHJ1Y3Rpb25Mb2FkZXJ7XG4gICAgYmFja2dyb3VuZDogI0ZERTg3MiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZicpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRERBMzAxO1xufVxuXG4vKiBDTVMgUGFnZSBTdGF0dXMgKi9cblxuLmNtc1BhZ2VTdGF0dXN7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdWx7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHdpZHRoOiAzOTVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBsaXtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4uY21zUGFnZVN0YXR1cyBsaSBhe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBoZWlnaHQ6IDBwdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xufVxuXG4uY21zUGFnZVN0YXR1cyAuY21zUGFnZURpc2FibGVkIGF7XG4gICAgd2lkdGg6IDEwM3B4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3B1YmxpY1ByaXZhdGVUb2dnbGVfZGlzYWJsZWQucG5nJyk7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5jbXNQYWdlUGF5d2FsbGVkIGF7XG4gICAgd2lkdGg6IDExMnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3B1YmxpY1ByaXZhdGVUb2dnbGVfcGF5d2FsbGVkLnBuZycpO1xufVxuXG4uY21zUGFnZVN0YXR1cyAuY21zUGFnZVByaXZhdGUgYXtcbiAgICB3aWR0aDogOTFweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9wdWJsaWNQcml2YXRlVG9nZ2xlX3ByaXZhdGUucG5nJyk7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5jbXNQYWdlUHVibGljIGF7XG4gICAgd2lkdGg6IDg5cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvcHVibGljUHJpdmF0ZVRvZ2dsZV9wdWJsaWMucG5nJyk7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5zZWxlY3RlZCBhe1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMwcHg7XG59XG5cbi5jbXNQYWdlU3RhdHVzIC5pbmxpbmVIZWxwLCAuaW5saW5lSGVscHtcbiAgICBjbGVhcjogbGVmdDtcbiAgICBmb250LXNpemU6LjhlbTtcbiAgICBsaW5lLWhlaWdodDoxMzUlO1xuICAgIHBhZGRpbmc6IDE1cHggNXB4O1xufVxuXG4vKiBDTVMgUGFnZSBUYWIgVGFibGVzICovXG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLmRhdGFUYWJsZSwgLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAucmVzdWx0c1RhYmxlLCAjcHJvZmlsZXNfdGFibGV7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI0REQTMwMTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLm9kZCAgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGM0IwOyB9XG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5ldmVuIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZFRkNGNDsgfVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5nZW5lcmljUGVybWlzc2lvbnN7XG4gICAgY29sb3I6ICMzMzMzMzM7XG59XG5cblxuLyogV2hpdGUgaW5uZXIgY29udGFpbmVyIGZvciBjb250ZW50IGNvbnN0cnVjdGlvbiB0YWJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5sYXlvdXRDb250YWluZXIgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYm9yZGVyOiBub25lOyB9XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb25Jbm5lciAucGFnZUVsZW1lbnQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnN0YXRUYWJsZSB0aCxcbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb25Jbm5lciAuc3RhdFRhYmxlIHRkIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb25Jbm5lciAuc3RhdFRhYmxlIC5vZGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb25Jbm5lciAub2RkICB7IGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbi5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyIC5ldmVuIHsgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTsgfVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnBhZ2VFbGVtZW50Omxhc3QtY2hpbGQsXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uSW5uZXIgLnBhZ2VFbGVtZW50Omxhc3QtY2hpbGQgLmRhdGFUYWJsZSB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBZZWxsb3cgaW5uZXIgY29udGFpbmVyIGZvciBjb250ZW50IGNvbnN0cnVjdGlvbiB0YWJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbklubmVyWWVsbG93IHtcbiAgYmFja2dyb3VuZDogI2ZmZjNiMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0REQTMwMTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuXG5cbi8qIERhdGEgVGFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAuZGF0YVRhYmxlIHRkLCAucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5kYXRhVGFibGUgdGgsIC5yYXBpZENvbnRlbnRDb25zdHJ1Y3Rpb24gLnJlc3VsdHNUYWJsZSB0cntcbiAgIGJvcmRlcjogbm9uZTtcbn1cblxuLmRhdGFUYWJsZSAub2RkIC5wZXJtaXNzaW9uRGlzYWJsZWR7XG4gICAgYmFja2dyb3VuZDogI0NDQztcbn1cblxuLmRhdGFUYWJsZSAuZXZlbiAucGVybWlzc2lvbkRpc2FibGVke1xuICAgIGJhY2tncm91bmQ6ICNFRkVGRUY7XG59XG5cbi5kYXRhVGFibGUgLmtleSAucGVybWlzc2lvbkRpc2FibGVke1xuICAgIGJhY2tncm91bmQ6ICM5OTk7XG59XG5cbi5kYXRhVGFibGUgLnByb2ZpbGVQaWN7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmRhdGFUYWJsZSAucHJvZmlsZVBpYyBpbWcgeyBmbG9hdDogbGVmdDsgfVxuXG4uZGF0YVRhYmxlIC5wcm9maWxlU3ViUGljIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCA1cHggMCAtMTBweDtcbn1cbi5kYXRhVGFibGUgdGQgLnByb2ZpbGVTdWJQaWMgaW1nIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTZweDtcbn1cblxuLmRhdGFUYWJsZSAucGVyc29uYXtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5kYXRhVGFibGUgLnBlcnNvbmEgaW5wdXR7XG4gIG1hcmdpbjogNXB4IDEwcHggMCA1cHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hIC5wcm9maWxlUGlje1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuLmRhdGFUYWJsZSAucGVyc29uYSBpbWd7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xufVxuXG4uZGF0YVRhYmxlIC5wZXJzb25hIC5uYW1le1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuI3VzZXJQYWdlIC5kYXRhVGFibGUgLnBlcnNvbmEgeyBsaW5lLWhlaWdodDogMS4yZW07IH1cbi5kYXRhVGFibGUgLnBlcnNvbmFTbWFsbCAucHJvZmlsZVBpYyAgeyBsaW5lLWhlaWdodDogMDsgbWFyZ2luOiA1cHggNXB4IDAgMDsgfSAvKiB1c2VkIGluIFVzZXIgc2VjdGlvbiAqL1xuXG4uZGF0YVRhYmxlIC5zYXZlZE1lc3NhZ2V7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogIEFyY2hpdmVkIFBhZ2UgQWRtaW4gU3RhdHVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY21zVGFiSGVhZGVye1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgbWFyZ2luOiAwIDVweCA1cHggMDtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmFkbWluUGFnZVNldHRpbmdze1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IGF1dG87XG59XG5cbi5hZG1pblBhZ2VTdGF0dXN7XG4gIHdpZHRoOiA0MCU7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWRtaW5QYWdlU3RhdHVzIHB7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLmFkbWluUGFnZVN0YXR1cyBsaXtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ub2JqZWN0QXR0cmlidXRlc0xpbmtEaXYgdWx7XG4gIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5wYWdlRWxlbWVudE1lbnV7XG4gIGNsZWFyOiBib3RoO1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmJykgcmVwZWF0LXggYm90dG9tIGxlZnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRERBMzAxO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0REQTMwMTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4jdGFiX2NvbnRlbnRfY29udGVudHtcbiAgLnBhZ2VFbGVtZW50TWVudXtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGgze1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuICB9XG59XG5cbi5hZGRFbGVtZW50TWVudXtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qIENNUyBQYWdlIE9wdGlvbnMgKi9cblxuLmNtc1BhZ2VPcHRpb25ze1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMDAlO1xufVxuXG4uY21zUGFnZU9wdGlvbnMgbGFiZWx7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIENNUyBOb2RlIFBpY2tlciAqL1xuXG4ucGFnZUVsZW1lbnRBZG1pbiAucGFnZUVsZW1lbnRNZW51LCAucGFnZUVsZW1lbnRBZG1pbiAubm9kZVBpY2tlckNvbnRhaW5lcntcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG59XG5cbi8qIEFETUlOIC0gUGFnZSBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogUEUgc3BhY2luZyAqL1xuXG4ucGFnZUVsZW1lbnRBZG1pbntcbiAgbWFyZ2luOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudEFkbWlue1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4uY29sbGVjdG9yRWxlbWVudCAucGFnZUVsZW1lbnRBZG1pbntcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG59XG5cbi5sYXlvdXRDb250YWluZXIgLnBhZ2VFbGVtZW50QWRtaW4gLnBhZ2VFbGVtZW50LCAubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudEFkbWluIC5mb3JtRWxlbWVudCwgLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnRBZG1pbiAuaHJFbGVtZW50LCAucGFnZUVsZW1lbnRBZG1pbiAucGFnZUVsZW1lbnR7XG4gIG1hcmdpbjogM3B4IDAgMDtcbn1cblxuLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnRBZG1pbiAuZm9ybUVsZW1lbnR7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogQ29sbGFwc2UgUEUgQnV0dG9uICovXG5cbi5jb2xsYXBzZVBFe1xuICAgIHBhZGRpbmctbGVmdDogMTNweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9uYXZfYXNzZXRzX2JsYWNrLmdpZicpIG5vLXJlcGVhdCAwIDVweDtcbn1cblxuLmV4cGFuZFBFe1xuICAgIHBhZGRpbmctbGVmdDogMTNweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9uYXZfYXNzZXRzX2JsYWNrLmdpZicpIG5vLXJlcGVhdCAwIC03OHB4O1xufVxuXG4vKiBBZG1pbiBCYXIgIERlbGV0ZS9FbmFibGUgKi9cbi5lbGVtZW50QmFyIC5wYWdlRWxlbWVudF9kZWxldGUsXG4uY29udGFpbmVyQmFyIC5sYXlvdXRDb250YWluZXJfZGVsZXRlIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtaW1hZ2U6dXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3BlX3RyYXNoLnBuZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOjNweCAzcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgcGFkZGluZzowIDVweCAhaW1wb3J0YW50O1xuICB0ZXh0LWluZGVudDotOTk5ZW07XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgdGV4dC1hbGlnbjpsZWZ0O1xufVxuLmVsZW1lbnRCYXIgLnBhZ2VFbGVtZW50X2RlbGV0ZTpob3ZlciB7IGJhY2tncm91bmQtcG9zaXRpb246M3B4IC00N3B4OyB9XG4uY29udGFpbmVyQmFyIC5sYXlvdXRDb250YWluZXJfZGVsZXRlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjozcHggLTIwcHg7IH1cbi5jb250YWluZXJCYXIgLmxheW91dENvbnRhaW5lcl9kZWxldGU6aG92ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOjNweCAtNDVweDsgfVxuLmVsZW1lbnRCYXIgLnBhZ2VFbGVtZW50X2VuYWJsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6dXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3BlX3JlbG9hZC5wbmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjo5NSUgM3B4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gIHBhZGRpbmc6MCAyMHB4IDAgOHB4ICFpbXBvcnRhbnQ7XG59XG4uZWxlbWVudEJhciAucGFnZUVsZW1lbnRfZW5hYmxlOmhvdmVyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjo5NSUgLTQ3cHg7IH1cblxuLmRyYWcgLmVsZW1lbnRCYXIsXG4ubG9jayAuZHJhZyAuZWxlbWVudEJhcixcbi5kcmFnVHdvIC5jb250YWluZXJCYXIge1xuICBjdXJzb3I6IG1vdmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VFbGVtZW50QWRtaW4gLmxvY2sgLmVsZW1lbnRCYXIsXG4ubG9jayAuY29udGFpbmVyQmFyLFxuLmRyYWcgLmxvY2sgLmVsZW1lbnRCYXIsXG4uZHJhZyAucGFnZUVsZW1lbnR7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBhZ2VFbGVtZW50QWRtaW4gLmVsZW1lbnRCYXIsXG4ucGhvdG9HYWxsZXJ5VGh1bWIgLmVsZW1lbnRCYXIsXG4uZ2FsbGVyeVRodW1iQWRtaW4gLmVsZW1lbnRCYXIsXG4uY2xpZW50R3JhcGhpYyAuZWxlbWVudEJhciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNHB4O1xuICBiYWNrZ3JvdW5kOiAjRkNDRDIyIHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9lbGVtZW50QmFyLmdpZicpIHJlcGVhdC14O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZWxlbWVudEJhciA+ICoge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZWxlbWVudEJhciA+IC5oYW5kbGUge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NTU7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmVsZW1lbnRCYXIgLmVsZW1lbnRUaXRsZSB7IGRpc3BsYXk6IHRhYmxlOyB3aWR0aDogMTAwJTsgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuLmVsZW1lbnRCYXIgLmVsZW1lbnRUaXRsZSBzcGFuIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbi5lbGVtZW50QmFyLFxuLmVsZW1lbnRCYXIgYTpsaW5rLFxuLmVsZW1lbnRCYXIgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luOiAxcHggMDtcbn1cblxuLmVsZW1lbnRCYXIgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkRGNUY7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5lbGVtZW50QmFyTWluaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5lbGVtZW50QmFyTWluaSAuYnV0dG9ucyB7IGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG4ucGFnZUVsZW1lbnRBZG1pbiAuZWxlbWVudEJhck1pbmkgLmJ1dHRvbnMgYSB7IG1pbi13aWR0aDogNnB4OyB9XG5cbi5kcmFnVHdvIC5oYW5kbGUsXG4uZHJhZyAuaGFuZGxlLFxuLmxvY2sgLmhhbmRsZSxcbi53b3JraW5nIC5oYW5kbGUge1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNHB4IDZweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZHJhZ1R3byAuaGFuZGxlLCAuZHJhZyAuaGFuZGxle1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9kcmFnSWNvbi5naWYnKTtcbn1cblxuLmxvY2sgLmhhbmRsZXtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xvY2tlZEljb24uZ2lmJyk7XG59XG5cbi53b3JraW5nIC5oYW5kbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9kcmFnSWNvbl9sb2NrZWQuZ2lmJyk7XG59XG5cbi5lbGVtZW50QmFyIC5idXR0b25zLFxuLmNvbnRhaW5lckJhciAuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICB3aWR0aDogYXV0bztcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4uZWxlbWVudEJhciAuYnV0dG9ucyBhLFxuLmVsZW1lbnRCYXIgLmJ1dHRvbnMgc3BhbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjRERBMzAxO1xuICBwYWRkaW5nOiAwIDVweDtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgbWluLXdpZHRoOiAxMXB4O1xufVxuXG4uZWxlbWVudEJhciAuYnV0dG9ucyBzcGFuIHtcbiAgY29sb3I6ICNFRkVGRUY7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmVsZW1lbnRCYXIgYS5ncmF5X291dCB7IG9wYWNpdHk6IDAuNDsgfVxuXG4uYnV0dG9uSW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAgICAvKiBGaXJlZm94LCBvdGhlciBHZWNrbyAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgICAgICAgICAvKiBPcGVyYS9JRSA4KyAqL1xufVxuXG4uYWN0aW9uQnV0dG9uIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogU2FmYXJpL0Nocm9tZSwgb3RoZXIgV2ViS2l0ICovXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7ICAgIC8qIEZpcmVmb3gsIG90aGVyIEdlY2tvICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAgICAgICAgIC8qIE9wZXJhL0lFIDgrICovXG59XG5cbi5idXR0b25JbWFnZUFkZCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy9pbWFnZV9hZGQuc3ZnJyk7IH1cbi5idXR0b25JbWFnZVJlbW92ZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy9pbWFnZV9yZW1vdmUuc3ZnJyk7IH1cbi5idXR0b25DaGFpbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy9saW5rLnN2ZycpOyB9XG4uYnV0dG9uUHJpbnQgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvcHJpbnQuc3ZnJyk7IH1cbi5idXR0b25BZGRBcnRpY2xlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL2FkZF9hcnRpY2xlLnN2ZycpOyB9XG4uYnV0dG9uVG9vbCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy90b29sLnN2ZycpOyB9XG4uYnV0dG9uQ29weSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy9jb3B5LnN2ZycpOyB9XG4uYnV0dG9uRGVsZXRlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3RyYXNoLnN2ZycpOyB9XG4uYnV0dG9uRG93bmxvYWQgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvZG93bmxvYWQuc3ZnJyk7IH1cbi5idXR0b25FZGl0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL2VkaXQuc3ZnJyk7IH1cbi5idXR0b25QbGF5ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvcGxheWVyLnN2ZycpOyB9XG4uYnV0dG9uVHJhZGUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvdHJhZGUuc3ZnJyk7IH1cbi5idXR0b25FdmVudCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9pY29ucy9ldmVudC5zdmcnKTsgfVxuLmJ1dHRvbkZsYWcgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvZmxhZy5zdmcnKTsgfVxuLmJ1dHRvbkljYWxGZWVkIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL2NhbGVuZGFyLnN2ZycpOyB9XG4uYnV0dG9uR3JvdXAgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvZ3JvdXAuc3ZnJyk7IH1cbi5idXR0b25Nb3ZlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3dlYnNpdGVfdHJlZS5zdmcnKTsgfVxuLmJ1dHRvblNhdmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvc2F2ZS5zdmcnKTsgfVxuLmJ1dHRvblNjb3JlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3Njb3JlLnN2ZycpOyB9XG4uYnV0dG9uVXBsb2FkIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2ljb25zL3VwbG9hZC5zdmcnKTsgfVxuXG4ud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZGU4NzI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGQ0NEMjI7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5wZUVycm9ye1xufVxuXG4vKiBBRE1JTiAtIExheW91dCBDb250YWluZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb2xsYXBzZWQgLnBhZ2VFbGVtZW50QWRtaW4gLnBhZ2VFbGVtZW50e1xuICAgIGhlaWdodDogMzVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY29sbGFwc2VkIC5wYWdlRWxlbWVudEFkbWluIC5mb3JtRWxlbWVudHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyQWRtaW57XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ubGF5b3V0Q29udGFpbmVyQWRtaW4gLmxheW91dENvbnRhaW5lcntcbiAgICBib3JkZXI6IHNvbGlkIDNweCAjOTk5O1xuICAgIHBhZGRpbmc6IDNweDtcbn1cblxuLmxheW91dENvbnRhaW5lckFkbWluIC5sYXlvdXRDb250YWluZXIgLmxheW91dENvbnRhaW5lcntcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uY29udGFpbmVyQmFye1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NDQztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xheW91dENvbnRhaW5lckJhci5naWYnKTtcbn1cblxuLmRyYWdUd28gLmNvbnRhaW5lckJhciAuaGFuZGxlLFxuLmxvY2sgLmNvbnRhaW5lckJhciAuaGFuZGxlIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNHB4IDZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4uY29udGFpbmVyQmFyIC5idXR0b25zIGEsXG4uY29udGFpbmVyQmFyIC5idXR0b25zIHNwYW4ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBtaW4td2lkdGg6IDExcHg7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggIzk5OTtcbiAgcGFkZGluZzogMCA4cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5jb250YWluZXJCYXIgLmJ1dHRvbnMgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICBjb2xvcjogI0ZGRjtcbn1cblxuLmNvbHVtbkJvdW5kc3tcbiAgICBtYXJnaW46IDAgM3B4O1xuICAgIGJvcmRlcjogZGFzaGVkIDFweCAjRERBMzAxO1xufVxuXG4ubGF5b3V0Q29udGFpbmVyQWRtaW4gLmNvbHVtbkJvdW5kcyB7XG4gIGJvcmRlcjogZGFzaGVkIDFweCAjRERBMzAxO1xuICBtYXJnaW46IDAgMCAwIDNweDtcbn1cblxuLmxheW91dENvbnRhaW5lck1pcnJvcmVkIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvbWlycm9yQmFja2dyb3VuZC1sYXlvdXRDb250YWluZXIucG5nJyk7XG59XG5cbi5sYXlvdXRDb250YWluZXJNaXJyb3JlZHtcbiAgIC5jb2x1bW5Cb3VuZHMge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLm1pcnJvckJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYWRkUGFnZUVsZW1lbnR7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiA1cHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWluZGVudDogLTEwMDAwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvYWRkUEUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgJjpob3ZlcntcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2FkZFBFX2hvdmVyLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIH1cbn1cbi5hZGRQYWdlRWxlbWVudFRvcHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDVweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2FkZFBFX2hvdmVyLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4vKiBBRE1JTiAtIENvbGxlY3RvcnMgYW5kIEFnZ3JlZ2F0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZUVsZW1lbnRBZG1pbiAuY29sbGVjdG9yRWxlbWVudCAuaXRlbXtcbiAgd2lkdGg6IDk4JTtcbn1cblxuLyogQURNSU4gLSBUYWJsZSBCdWlsZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udGFibGVCdWlsZGVye1xuICB0ZHtcbiAgICBib3JkZXI6IHNvbGlkIDNweCAjQ0NDO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmlucHV0e1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICB3aWR0aDogNzVweDtcbiAgICBwYWRkaW5nOiAycHg7XG4gIH1cbiAgLmJ1aWxkTGlua3N7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUxcHg7XG4gICAgYXtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGE6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIH1cbiAgICAucmlnaHR7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy90YWJsZV9idWlsZGVyX3JpZ2h0LmdpZicpO1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjQ0NDO1xuICAgIH1cbiAgICAuZG93bntcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3RhYmxlX2J1aWxkZXJfZG93bi5naWYnKTtcbiAgICB9XG4gICAgLmRlbGV0ZXtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3RhYmxlX2J1aWxkZXJfeC5naWYnKTtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI0NDQztcbiAgICB9XG4gIH1cbiAgLmhlYWRlckVuYWJsZWQgaW5wdXR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4vKiBsaS1lZGl0IG9wdGlvbnMgKi9cblxuLmxpRWRpdHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggI0NDQztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgLmxpRWRpdExpbmt7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICNEREEzMDE7XG4gIH1cbn1cblxuLmxpRWRpdC5ldmVue1xufVxuXG4ubGlFZGl0IC5saUVkaXRMaW5rOmxpbmssIC5saUVkaXQgLmxpRWRpdExpbms6dmlzaXRlZHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZHJhZ1R3by5saUVkaXR7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2RyYWdJY29uLmdpZicpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIGN1cnNvcjogbW92ZTtcbn1cblxuLmxvY2tlZC5saUVkaXR7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xvY2tlZEljb24uZ2lmJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDVweCBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ubGlFZGl0LmRpc2FibGVke1xuICBjb2xvcjogIzk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcbn1cblxuLyogIFNldHRpbmcgVmFsdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2V0dGluZ1ZhbHVlc3tcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogLTFweCAwIDA7XG4gIHBhZGRpbmc6IDNweCA1cHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICMzMzM7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZjdkMDtcbiAgLnNldHRpbmdWYWx1ZXMgbGl7XG4gICAgbGluZS1oZWlnaHQ6IDE2MCU7XG4gIH1cbiAgLnNldHRpbmdWYWx1ZXMgbGFiZWx7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLnNldHRpbmdWYWx1ZXMuZm9yRm9ybXtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qICBHYW1lIFN0YXR1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nYW1lU3RhdHVzQ29uc3RydWN0aW9uICAgICAgICAgICAgICAgICAgICAgICB7IHBhZGRpbmc6IDE1cHggMTVweCAwOyBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmJykgcmVwZWF0LXggYm90dG9tIGxlZnQ7IGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRERBMzAxOyB9XG4uY21zR2FtZVN0YXR1cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBtYXJnaW46IDVweCAwIDA7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLmNtc0dhbWVTdGF0dXMgdWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgZGlzcGxheTogYmxvY2s7IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbjogMCBhdXRvIDRweDsgd2lkdGg6IDI0MnB4OyB9XG4uY21zR2FtZVN0YXR1cyBsaSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBmbG9hdDogbGVmdDsgfVxuLmNtc0dhbWVTdGF0dXMgbGkgYSAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvZ2FtZVN0YXR1c1RvZ2dsZS5wbmcnKSAwIDA7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDMwcHg7IH1cbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lU2NoZWR1bGVkIGEgICAgICAgICAgICB7IHdpZHRoOiA5MXB4OyB9XG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZUluUHJvZ3Jlc3MgYSAgICAgICAgICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTFweCAwOyB3aWR0aDogOTZweDsgfVxuLmNtc0dhbWVTdGF0dXMgLmNtc0dhbWVGaW5hbCBhICAgICAgICAgICAgICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4N3B4IDA7IHdpZHRoOiA1NXB4OyB9XG5cbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lU2NoZWR1bGVkIGEuc2VsZWN0ZWQsXG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZVNjaGVkdWxlZCBhOmhvdmVyICAgICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMHB4OyB9XG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZUluUHJvZ3Jlc3MgYS5zZWxlY3RlZCxcbi5jbXNHYW1lU3RhdHVzIC5jbXNHYW1lSW5Qcm9ncmVzcyBhOmhvdmVyICAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IC05MXB4IC0zMHB4OyB9XG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZUZpbmFsIGEuc2VsZWN0ZWQsXG4uY21zR2FtZVN0YXR1cyAuY21zR2FtZUZpbmFsIGE6aG92ZXIgICAgICAgICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg3cHggLTMwcHg7IH1cblxuLmNtc0dhbWVVbnNjaGVkdWxlZCB7IHBhZGRpbmc6IDAgMCAxNXB4OyB3aWR0aDoxMDAlOyB9XG5cbi5jbXNHYW1lQnV0dG9ucyB7IGZsb2F0OiByaWdodDsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuXG4vKiBNaXNjLlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zcGlubmVyLWlubGluZSB7IG1hcmdpbjowIDAgLTRweDsgfVxuLnN0YXR1cy1sb2FkaW5nIHsgYmFja2dyb3VuZDogdXJsKCAkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL21pbmlMb2FkZXIuZ2lmJykgNXB4IDUwJSBuby1yZXBlYXQ7IHBhZGRpbmc6IDVweCAwIDVweCAyNXB4OyB9XG4iLCIvKiAgRmxhc2ggYW5kIEVycm9yIE5vdGljZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiNmbGFzaE5vdGljZSwgI2ZsYXNoRXJyb3IsICNlcnJvckV4cGxhbmF0aW9uLCAuZm9ybUVycm9yLCAucmVnaXN0cmF0aW9uX2xvb2t1cF9ub3RfZm91bmQge1xuXHQvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9mbGFzaEJhY2suanBnXCIpOyBcblx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGNkM2O1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luLXRvcDoxNXB4O1xufVxuXG4jZmxhc2hOb3RpY2UsICNmbGFzaEVycm9yLCAjZXJyb3JFeHBsYW5hdGlvbntcblx0Ym9yZGVyOiAxcHggc29saWQgI0ZERTA0NTtcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuI2Rpc3BsYXlCb2R5Q29udGVudCAubWFpbFN1YnNjcmliZUVsZW1lbnQgI2Vycm9yRXhwbGFuYXRpb257XG5cdG1hcmdpbjogMDtcbn1cblxuI2xiQ29udGVudCAjZmxhc2hOb3RpY2UsICNsYkNvbnRlbnQgI2ZsYXNoRXJyb3IsICNsYkNvbnRlbnQgI2Vycm9yRXhwbGFuYXRpb257XG5cdG1hcmdpbjogMTBweCAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjQzYwMDA1O1xuXHRib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRoMntcbiAgXHRjb2xvcjogI2ZmZjtcblx0fVxufVxuXG4jZXJyb3JFeHBsYW5hdGlvbiwgLnJlZ2lzdHJhdGlvbl9sb29rdXBfbm90X2ZvdW5ke1xuXHRwYWRkaW5nOiAxMHB4IDEwcHggMTVweCAxMHB4O1xufVxuXG4jZmxhc2hOb3RpY2Ugc3BhbiwgLmZsYXNoTm90aWNlIHNwYW57XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9ub3RpY2VJY29uLmdpZlwiKTtcbn1cblxuI2ZsYXNoRXJyb3Igc3BhbiwgI2ZsYXNoTm90aWNlIHNwYW4sIC5mbGFzaE5vdGljZSBzcGFue1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMTVweCAxMHB4IDE1cHggNDVweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMnB4O1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG59XG5cbiNmbGFzaE5vdGljZSBzcGFuLCAuZmxhc2hOb3RpY2Ugc3Bhbntcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL25vdGljZUljb24uZ2lmXCIpO1xufVxuXG4jZmxhc2hFcnJvciBzcGFue1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZXJyb3JJY29uLmdpZlwiKTtcbn1cblxuI2ZsYXNoUmljaE1lc3NhZ2Ugc3BhbntcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4IDQ1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmVhdHVyZUNoZWNrbWFyay5wbmdcIik7XG59XG5cbiNlcnJvckV4cGxhbmF0aW9uIGgyLCAucmVnaXN0cmF0aW9uX2xvb2t1cF9ub3RfZm91bmQgc3Bhbntcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2Vycm9ySWNvbi5naWZcIik7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHBhZGRpbmc6IDVweCAwIDVweCA0NXB4O1xufVxuXG4jZmxhc2hOb3RpY2UgaDIsICNlcnJvckV4cGxhbmF0aW9uIGgyLCAjZmxhc2hFcnJvciBoMiwgLmZsYXNoTm90aWNlIGgye1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBjb2xvcjogIzg2NzAwMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbiNmbGFzaEVycm9yLCAjZXJyb3JFeHBsYW5hdGlvbntcblx0Y29sb3I6ICNDNjAwMDU7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jZmxhc2hSaWNoTWVzc2FnZXtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I1ZTJhZjtcbn1cblxuI2xiQ29udGVudCAjZmxhc2hFcnJvciwgI2xiQ29udGVudCAjZmxhc2hOb3RpY2UsICNsYkNvbnRlbnQgI2Vycm9yRXhwbGFuYXRpb257XG5cdGNvbG9yOiAjRkZGO1xufVxuXG4jZXJyb3JFeHBsYW5hdGlvbiBwe1xuXHRtYXJnaW4tdG9wOiA1cHg7XG59XG5cbiNlcnJvckV4cGxhbmF0aW9uIHVse1xuXHRtYXJnaW46IDVweCAwIDAgNzVweDtcbn1cblxuLmRyYWZ0Tm90aWNle1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ubWluaUFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2ZmZCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvYWxlcnQucG5nXCIpIDVweCA0cHggbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjA0LDAuNSkgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2FsZXJ0LnBuZ1wiKSA1cHggNHB4IG5vLXJlcGVhdDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmOTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDE1MywwLjY1KTtcblxuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgcGFkZGluZzogNXB4IDVweCA1cHggMjVweDtcbn1cblxuLyogRm9ybSBFcnJvciBNZXNzYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmZvcm1FcnJvci5mb3JtRWxlbWVudCBoNHtcblx0Y29sb3I6ICNDNjAwMDU7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2Vycm9ySWNvbk1pbmkuZ2lmXCIpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRwYWRkaW5nOiA0cHggMCAxNXB4IDI2cHg7XG59XG5cblxuLyogTm8gRGF0YSBoYXMgYmVlbiBwcmV2aW91c2x5IGVudGVyZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5ub0VudHJ5e1xuXHRjb2xvcjogIzY2Njtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRtYXJnaW4tdG9wOiAxNXB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAxMjAlO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRib3JkZXItdG9wOiBzb2xpZCAxcHggI0RERERERDtcblx0YmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbiAubm9FbnRyeSxcbi5jb25zdHJ1Y3Rpb25MaWdodGJveCAubm9FbnRyeXtcbiAgICBjb2xvcjogI0REQTMwMTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGM0IwO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjRERBMzAxO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKiBVc2VyIEFjdGlvbnMgUGFuZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnVzZXJBY3Rpb25zUGFuZXtcblx0bWFyZ2luLXRvcDogMTVweDtcblx0d2lkdGg6IDEwMCU7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bGluZS1oZWlnaHQ6IDE0MCU7XG59XG5cbi51c2VyQWN0aW9uc1BhbmUgbGl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjZDNjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmxhc2hCYWNrLmpwZ1wiKTsgXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNGREUwNDU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG59XG5cbi51c2VyQWN0aW9uc1BhbmUgaDV7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLnVzZXJBY3Rpb25zUGFuZSBwe1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi8qIExvYWRpbmcgQW5pbWF0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubG9hZGluZ0FuaW1hdGlvbntcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qIFNQT1JUIE5HSU4gTElWRSBOb3RpY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zbmxOb3RpY2V7XG4gIGJhY2tncm91bmQ6I0ZERTg3MiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBzY3JvbGwgbGVmdCBib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNubE5vdGljZSAuc25sVGV4dHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3NubExvZ28tbmV3LnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIDZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgcGFkZGluZzogNDVweCAxMHB4IDE1cHg7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBvdmVyZmxvdzpoaWRkZW47XG59XG4uc25sTm90aWNlIC5zbmxUZXh0Lm5vdExpdmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc25Mb2dvLW5ldy5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciA2cHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyB7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrOyB6b29tOjE7ICpkaXNwbGF5OmlubGluZTtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBwYWRkaW5nOjAgMnB4O1xuICBib3JkZXI6M3B4IHNvbGlkICNGRkY7XG4gIGJhY2tncm91bmQ6I0VFRTtcbiAgYm9yZGVyLXJhZGl1czo4cHg7XG4gIGJveC1zaGFkb3c6aW5zZXQgM3B4IDNweCAxMHB4IC01cHggIzAwMDtcbn1cblxuLnNubFNjb3JpbmdPcHRpb25zIGxpIHtcbiAgZm9udC1zaXplOjExcHg7XG4gIGZsb2F0OmxlZnQ7XG4gIHdpZHRoOjE4MHB4O1xuICBwYWRkaW5nOjhweDtcbiAgbWFyZ2luOjAgLTFweCAwIDFweDtcbiAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbiAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjREREO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xuICBtaW4taGVpZ2h0OjEwLjVlbTtcbn1cbi5zbmxTY29yaW5nT3B0aW9ucyBsaTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0Om5vbmU7XG4gIGJvcmRlci1yYWRpdXM6MnB4IDAgMCAycHg7XG4gIG1hcmdpbi1sZWZ0Oi0xcHg7XG59XG4uc25sU2NvcmluZ09wdGlvbnMgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDpub25lO1xuICBib3JkZXItcmFkaXVzOjAgMnB4IDJweCAwO1xufVxuLnNubFNjb3JpbmdPcHRpb25zIGxpLmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDojREREO1xuICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjA1KTtcbn1cblxuLnNubFNjb3JpbmdPcHRpb25zIGxpLnF1aWNrU2NvcmUge1xuXG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5saXZlU2NvcmUge1xuICB3aWR0aDozMjBweDtcbn1cblxuLnNubFNjb3JpbmdPcHRpb25zIGxpLmVkaXRTdGF0cyB7XG5cbn1cblxuLnNubFNjb3JpbmdPcHRpb25zIGxpIHAge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGZvbnQtc2l6ZToxMXB4O1xuICBjb2xvcjojQUFBO1xuICB0ZXh0LWFsaWduOmxlZnQ7XG59XG5cbnAuc25sU3RhdFdhcm5pbmcgc3Ryb25nIHsgY29sb3I6ICNGRjAwMDA7IH1cbnAuc25sU3RhdFdhcm5pbmcgYSB7IGNvbG9yOiMwMDA7IH1cblxuLnNubFNjb3JpbmdPcHRpb25zIC5idXR0b24tbGFyZ2Uge1xuICBkaXNwbGF5OmJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiM2NjY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuMykpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgyNTUsMjU1LDI1NSwwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDI1NSwyNTUsMjU1LDAuMykgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiYSgyNTUsMjU1LDI1NSwwLjMpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gIGZvbnQtc2l6ZToxMnB4O1xuICBtYXJnaW4tYm90dG9tOjE1cHg7XG59XG4uc25sU2NvcmluZ09wdGlvbnMgLmJ1dHRvbi1sYXJnZTpob3ZlciB7XG4gIGNvbG9yOiNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6IzMzMztcbn1cbi5zbmxTY29yaW5nT3B0aW9ucyAuYnV0dG9uLWxhcmdlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDApKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMC4zKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDI1NSwyNTUsMjU1LDApIDAlLHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUscmdiYSgyNTUsMjU1LDI1NSwwLjMpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUscmdiYSgyNTUsMjU1LDI1NSwwLjMpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuMykgMTAwJSk7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5saXZlU2NvcmUgLmJ1dHRvbi1sYXJnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IzExMTtcbiAgZm9udC1zaXplOjE4cHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyBsaS5kaXNhYmxlZCAuYnV0dG9uLWxhcmdlLFxuLnNubFNjb3JpbmdPcHRpb25zIGxpLmRpc2FibGVkIC5idXR0b24tbGFyZ2U6aG92ZXIge1xuICBjdXJzb3I6ZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjojQ0NDO1xuICBjb2xvcjojRUVFO1xuICBib3gtc2hhZG93Om5vbmU7XG4gIHRleHQtc2hhZG93Om5vbmU7XG59XG5cbi8qIFNQT1JUIE5HSU4gTElWRSBOb3RpY2Ugd2l0aCBTY29yZWtlZXBlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pY2VfaG9ja2V5IC5zbmxOb3RpY2UgLnNubFRleHQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAzMHB4IDEwcHg7XG59XG5cbi5pY2VfaG9ja2V5IC5zbmxTY29yaW5nT3B0aW9ucyB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA4NDhweDtcbiAgaGVpZ2h0OiAyNThweDtcbiAgYm9yZGVyOiA0cHggc29saWQgI0ZGRjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5pY2VfaG9ja2V5IC5zbmxTY29yaW5nT3B0aW9ucyBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTJweDtcbiAgd2lkdGg6IDIxMHB4O1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmljZV9ob2NrZXkgLnNubFNjb3JpbmdPcHRpb25zIGxpLmxpdmVTY29yZSB7XG4gIHdpZHRoOiA0MjBweDtcbn1cblxuLmljZV9ob2NrZXkgLnNubFNjb3JpbmdPcHRpb25zIGxpLnNjb3Jla2VlcGVyIHtcbiAgYmFja2dyb3VuZDogIzAwMCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvbGl2ZS9zY29yZWtlZXBlci1ob2NrZXktYmcuanBnXCIpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNDIwcHg7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbi5zbmxTY29yaW5nT3B0aW9ucyAuc2NvcmVrZWVwZXIgYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogNDIwcHg7XG4gIGhlaWdodDogMjUwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG5cbi8qIE1haW50ZW5hbmNlIE1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbWFpbnRlbmFuY2VNZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogICAgICAgI2ZkZTA0NSB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvY29uc3RydWN0aW9uQkcuZ2lmXCIpIDUwJSA1MCUgcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChyZ2JhKDI1MiwyMDUsMzQsMCksIHJnYmEoMjUyLDIwNSwzNCwwLjUpKSwgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2NvbnN0cnVjdGlvbkJHLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAlIDAlLCAwJSAxMDAlLCBmcm9tKHJnYmEoMjUyLDIwNSwzNCwwKSksIHRvKHJnYmEoMjUyLDIwNSwzNCwwLjUpKSksIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9jb25zdHJ1Y3Rpb25CRy5wbmdcIik7XG5cbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMzUlO1xuICByaWdodDogMzUlO1xuICB0b3A6IDUwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHotaW5kZXg6IDk5OTtcblxuICAtby1ib3gtc2hhZG93OiAwIDEwcHggNTBweCAjMDAwO1xuICAtbW96LWJveC1zaGFkb3c6IDAgMTBweCA1MHB4ICMwMDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDUwcHggIzAwMDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDUwcHggIzAwMDtcblxuICAtby1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuI21haW50ZW5hbmNlTWVzc2FnZSBkaXYge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyIC1tb3otbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LDI1NSwyNTUsMC41KSwgcmdiYSgyNTUsMjU1LDI1NSwwKSk7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjIgLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKHJnYmEoMjU1LDI1NSwyNTUsMC41KSksIHRvKHJnYmEoMjU1LDI1NSwyNTUsMCkpICk7XG5cbiAgcGFkZGluZzogMTBweDtcblxuICAtby1ib3gtc2hhZG93OiAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAtbW96LWJveC1zaGFkb3c6ICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMTUpO1xuICBib3gtc2hhZG93OiAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMTUpO1xuXG4gIC1vLWJvcmRlci1yYWRpdXM6ICAgICAgIDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAgICAgM3B4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICAzcHg7XG4gIGJvcmRlci1yYWRpdXM6ICAgICAgICAgIDNweDtcbn1cblxuI21haW50ZW5hbmNlTWVzc2FnZSBoMiAgICAgIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IHBhZGRpbmc6IDAgMCAxMHB4OyB0ZXh0LXNoYWRvdzogMCAxcHggMXB4ICNmZmY7IH1cbiNtYWludGVuYW5jZU1lc3NhZ2UgcCAgICAgICB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmOyBwYWRkaW5nOiA1cHggMCAxNXB4OyB9XG5cblxuLyogVG9vbCBTZXR0aW5ncyBTdWNjZXNzL0Vycm9yIG1lc3NhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9ybS1ub3RpY2UgeyBtYXJnaW46IDAgNXB4OyB9XG4iLCIjc2l0ZUhlYWRlcixcbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIsXG4jcHJvZmlsZVBhbmVsT25lIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiNzaXRlSGVhZGVyICNhZG1pbk5hdixcbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IHtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbiNzaXRlSGVhZGVyICNhZG1pbk5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMzhweDtcbiAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiN0c3RSZWdpc3RyYXRpb25IZWFkZXIgI2FkbWluTmF2IHtcbiAgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICBhIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNHB4O1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAzNHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4IDVweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hZG1pbl9uYXZfdXNlcl9tb2RlIGEsXG4gIC5hZG1pbl9uYXZfZWRpdF9tb2RlIGEgeyB3aWR0aDogNTFweDsgfVxuXG4gIC5hZG1pbl9uYXZfdXNlcl9tb2RlIGEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9yZWdfdXNlcl9tb2RlLmdpZlwiKTtcbiAgfVxuXG4gIC5hZG1pbl9uYXZfZWRpdF9tb2RlIGEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9yZWdfZWRpdF9tb2RlLmdpZlwiKTtcbiAgfVxuICAuYWRtaW5fbmF2X3ByZXZpZXdfbW9kZSBhIHtcbiAgICB3aWR0aDogNzZweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvcmVnX3ByZXZpZXdfbW9kZS5naWZcIik7XG4gIH1cblxuICAuc2VsZWN0ZWQgYSB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuIiwiLyogTGF5b3V0IENvbnRhaW5lcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmxheW91dENvbnRhaW5lciAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAuY29sdW1uMywgLmxheW91dENvbnRhaW5lciAuY29sdW1uNHtcbiAgIGZsb2F0OiBsZWZ0O1xuICAgbWluLWhlaWdodDogMXB4O1xufVxuXG4ubGF5b3V0Q29udGFpbmVye1xuICBwYWRkaW5nLWxlZnQ6IDElO1xufVxuXG4jbGF5b3V0c0JpbiAubGF5b3V0Q29udGFpbmVye1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5sYXlvdXRDb250YWluZXIgLmxheW91dENvbnRhaW5lcntcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi8qIENvbnRhaW5lciBXaWR0aHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm9uZUNvbHVtbiAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAub25lQ29sdW1uIC5jb2x1bW4xe1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4udHdvQ29sdW1uMjU3NSAuY29sdW1uMiwgLnR3b0NvbHVtbjc1MjUgLmNvbHVtbjEge1xuICAgIHdpZHRoOiA3NSU7XG59XG5cbi50d29Db2x1bW42NjMzIC5jb2x1bW4xLCAudHdvQ29sdW1uMzM2NiAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNjYzMyAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uMzM2NiAuY29sdW1uMntcbiAgICB3aWR0aDogNjYuNiU7XG59XG5cbi50d29Db2x1bW41MDUwIC5jb2x1bW4xLCAudHdvQ29sdW1uNTA1MCAuY29sdW1uMiwgLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4xLCAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjIsIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMywgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNTA1MCAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAudHdvQ29sdW1uNTA1MCAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjEsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uM3tcbiAgICB3aWR0aDogNTAlO1xufVxuXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEsIC50d29Db2x1bW42NjMzIC5jb2x1bW4yLCAudHdvQ29sdW1uMzM2NiAuY29sdW1uMSwgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4yLCAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjMsIC5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMzMzMzMzIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW42NjMzIC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50d29Db2x1bW4zMzY2IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMiwgLmxheW91dENvbnRhaW5lciAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjN7XG4gICAgd2lkdGg6IDMzLjMlO1xufVxuXG4udHdvQ29sdW1uMjU3NSAuY29sdW1uMSwgLnR3b0NvbHVtbjc1MjUgLmNvbHVtbjIsXG4udGhyZWVDb2x1bW41MDI1MjUgLmNvbHVtbjIsIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSwgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4zLFxuLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4xLCAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbHVtbjIsXG4uZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4xLCAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4yLFxuLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMywgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uNCxcbi5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4yLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyxcbi5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjU1MDI1IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyxcbi5sYXlvdXRDb250YWluZXIgLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMixcbi5sYXlvdXRDb250YWluZXIgLmZvdXJDb2x1bW4yNTI1MjUyNSAuY29sdW1uMSwgLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4yLFxuLmxheW91dENvbnRhaW5lciAuZm91ckNvbHVtbjI1MjUyNTI1IC5jb2x1bW4xLCAubGF5b3V0Q29udGFpbmVyIC5mb3VyQ29sdW1uMjUyNTI1MjUgLmNvbHVtbjJcbntcbiAgICB3aWR0aDogMjUlO1xufVxuXG4vKiBGbHVpZCBMYXlvdXQgRXhjZXB0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi5vbmVDb2x1bW4gLmNvbmRlbnNlZFZpZXcgLFxuLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjEgLmNvbmRlbnNlZFZpZXcsXG4udHdvQ29sdW1uMzM2NiAuY29sdW1uMiAuY29uZGVuc2VkVmlldyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLm9uZUNvbHVtbiAudHdvQ29sdW1uNjYzMyAuY29sdW1uMiAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50d29Db2x1bW41MDUwIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4zMzMzMzMgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjUwMjUyNSAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMjU1MDI1IC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4yNTI1NTAgLmNvbmRlbnNlZFZpZXcgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4ub25lQ29sdW1uIC50d29Db2x1bW42NjMzIC5jb2x1bW4yIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudHdvQ29sdW1uMzM2NiAuY29sdW1uMSAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjUwNTAgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjMzMzMzMyAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uNTAyNTI1IC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW4yNTUwMjUgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjI1MjU1MCAuY29uZGVuc2VkVmlldyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vbmVDb2x1bW4gLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjIgdHIgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50d29Db2x1bW4zMzY2IC5jb2x1bW4xIHRyIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudHdvQ29sdW1uNTA1MCB0ciAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMzMzMzMzIHRyIC5jb25kZW5zZWRWaWV3LFxuLm9uZUNvbHVtbiAudGhyZWVDb2x1bW41MDI1MjUgdHIgLmNvbmRlbnNlZFZpZXcsXG4ub25lQ29sdW1uIC50aHJlZUNvbHVtbjI1NTAyNSB0ciAuY29uZGVuc2VkVmlldyxcbi5vbmVDb2x1bW4gLnRocmVlQ29sdW1uMjUyNTUwIHRyIC5jb25kZW5zZWRWaWV3IHsgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG5cbi8qLnR3b0NvbHVtbjUwNTAgLmxheW91dENvbnRhaW5lciwgLnR3b0NvbHVtbjY2MzMgLmxheW91dENvbnRhaW5lciwgLnR3b0NvbHVtbjMzNjYgLmxheW91dENvbnRhaW5lciwgLnRocmVlQ29sdW1uNTAyNTI1IC5sYXlvdXRDb250YWluZXIsIC50aHJlZUNvbHVtbjI1NTAyNSAubGF5b3V0Q29udGFpbmVyLCAudGhyZWVDb2x1bW4yNTI1NTAgLmxheW91dENvbnRhaW5lcntcbiAgZGlzcGxheTogbm9uZTtcbn1cbiovXG4ubGF5b3V0Q29udGFpbmVyIC5jb2x1bW4xIC5uZXdzSXRlbUNvbHVtbiwgLmxheW91dENvbnRhaW5lciAuY29sdW1uMiAubmV3c0l0ZW1Db2x1bW4sIC5sYXlvdXRDb250YWluZXIgLmNvbHVtbjMgLm5ld3NJdGVtQ29sdW1ue1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogQW50b255bXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wZTI1ICAubm9JbjI1ICB7IGRpc3BsYXk6IG5vbmU7IH1cbi5wZTMzICAubm9JbjMzICB7IGRpc3BsYXk6IG5vbmU7IH1cbi5wZTUwICAubm9JbjUwICB7IGRpc3BsYXk6IG5vbmU7IH1cbi5wZTY2ICAubm9JbjY2ICB7IGRpc3BsYXk6IG5vbmU7IH1cbi5wZTc1ICAubm9Jbjc1ICB7IGRpc3BsYXk6IG5vbmU7IH1cbi5wZTEwMCAubm9JbjEwMCB7IGRpc3BsYXk6IG5vbmU7IH1cbiIsIi8qIFN1YiBOYXYgVW5pdmVyc2FsIFN0eWxlICovXG4uc3ViTmF2IGxpLFxuLnJlbGF0ZWRTZWN0aW9ucyBsaSxcbi5zaXRlVXNlck1lbnUgbGkge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3ViTmF2IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc3ViTmF2LFxuLnJlbGF0ZWRTZWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgaDQgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG59XG5cbi51c2VyX21vZGUge1xuXG4gIC5zdWJOYXYgbGksXG4gIC5yZWxhdGVkU2VjdGlvbnMgbGkge1xuICAgIHRyYW5zaXRpb246cGFkZGluZyAyMDBtcywgYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbiAgfVxuXG4gIC5zdWJOYXYgbGk6aG92ZXIsXG4gIC5yZWxhdGVkU2VjdGlvbnMgbGk6aG92ZXIsXG4gICNwYXJlbnRfbm9kZXMgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxuXG4gIC5zdWJOYXYgbGksXG4gIC5yZWxhdGVkU2VjdGlvbnMgbGkge1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG59XG5cbi5lZGl0X21vZGUge1xuXG4gIC5zdWJOYXYgbGk6aG92ZXIsXG4gICNwYXJlbnRfbm9kZXMgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cblxuICAuc3ViTmF2IHtcbiAgICAubG9jayB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvbG9ja2VkSWNvbi5naWZcIik7XG4gICAgfVxuICB9XG5cbiAgLyogRHJhZyBvciBMb2NrICovXG4gIC5zdWJOYXYgLmRyYWcsXG4gIC5zdWJOYXYgLndvcmtpbmcsXG4gIC5zdWJOYXYgLmxvY2ssXG4gICNzZXF1ZW5jZU1lbnUgLmRyYWcsXG4gICNzZXF1ZW5jZU1lbnUgLndvcmtpbmcge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjZDIyOyAvKiBjb25zdHJ1Y3Rpb24geWVsbG93ICovXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAvKiBTdWJuYXYgQ01TICovXG4gIC5jbXNOYXZCdXR0b24gYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2J1aWxkU3RyaXBlLmdpZlwiKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5zdWJOYXYgLmRyYWcsXG4gICNzZXF1ZW5jZU1lbnUgLmRyYWcge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZHJhZ0ljb24uZ2lmXCIpO1xuICB9XG5cbiAgLnN1Yk5hdiAud29ya2luZyxcbiAgI3NlcXVlbmNlTWVudSAud29ya2luZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kcmFnSWNvbl9sb2NrZWQuZ2lmXCIpO1xuICB9XG5cbiAgLnN1Yk5hdiAuY21zTmF2QnV0dG9uLFxuICAuc3ViTmF2IC5jbXNOYXZCdXR0b246aG92ZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IDEwcHg7XG4gIH1cbn1cblxuLyogU2l0ZSBVc2VyIE1lbnUgKi9cbi5zaXRlVXNlck1lbnUge1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xuICBmb250LXNpemU6IDExcHg7XG5cbiAgaDQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9uZ2luX3N0YW1wX2xvZ28ucG5nXCIpIG5vLXJlcGVhdCAzcHggNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG5cbiAgYSxcbiAgYTpob3ZlcntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbiIsIiNzdXJ2ZXlfc3RlcHMge1xuXG4gIGEgeyBjb2xvcjogJGxpbmstY29sb3I7IH1cblxuICAuZHJhZ1R3byAuaGFuZGxlLFxuICAuZHJhZyAuaGFuZGxlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuc2l0ZUNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA5OTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICAjYWNjb3VudE5hdiB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgfVxuXG4gICAgI2FkbWluTmF2IHsgdG9wOiA5M3B4OyB9XG4gICAgLmFkbWluVG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZzowO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogNzVweDtcbiAgICAgIGhlaWdodDogNzVweDtcbiAgICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAjc3VydmV5TmFtZUhlYWRlciB7XG4gICAgICBoMSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgICAgIGZvbnQ6IGJvbGQgMjJweC80MHB4ICRmb250T25lO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxODBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAjcGFnZUNvbnRlbnRDb250YWluZXIge1xuXG4gICAgICAjcGFuZWxPbmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6NXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgIH1cblxuICAgICAgI3BhbmVsVHdvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRleHRCbG9ja0VsZW1lbnR7XG4gICAgLm1pbmlQZXJzb25hICsgJnttYXJnaW4tdG9wOiAxZW07fVxuICAgIC5wYWdlRWxlbWVudHtcbiAgICAgIC5yZXN1bHRzVGFibGV7XG4gICAgICAgIG1hcmdpbjogLjVlbSAwIDEuNWVtIDA7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIHRye1xuICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgI0NDQztcbiAgICAgICAgfVxuICAgICAgICB0aCwgdGR7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nOiAuNDVlbSAuNzVlbTtcbiAgICAgICAgfVxuICAgICAgICB0aHtcbiAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI3NpdGVGb290ZXIge1xuICAgIG1heC13aWR0aDogOTkwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjojZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgZm9udDogMTAwIC45ZW0vMS41ZW0gJGZvbnRPbmU7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7IG9wYWNpdHk6IDE7IH1cbiAgfVxufVxuXG4jc3VydmV5X3N0ZXBzLmVkaXRfbW9kZSB7XG5cbiAgLnJhcGlkVGFic0NvbnN0cnVjdGlvbiB7XG4gICAgYm9yZGVyLXRvcDowcHg7XG4gIH1cblxuICAuY29udGVudFRhYnMucmFwaWRUYWJzQ29uc3RydWN0aW9uIHtcblxuICAgIGEsXG4gICAgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFhZjEwO1xuICAgICAgY29sb3I6ICM2NjY7XG4gICAgfVxuXG4gICAgLnNlbGVjdGVkIHtcblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGU3NzE7XG4gICAgICAgIGNvbG9yOiMwMDA7XG4gICAgICB9XG5cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdDRTI5O1xuICAgICAgICBjb2xvcjojNjY2O1xuICAgICAgfVxuICAgIH1cblxuICAgIGxpIHNwYW4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIE5ld3MgQXJ0aWNsZSBWaWV3ICovXG4vLyAxLiBOZXdzIEFydGljbGVcbi8vIDIuIFBhZ2UgbGF5b3V0IHBhZGRpbmcvc3RydWN0dXJlXG4vLyAzLiBUYWdzXG5cblxuLy8gMS4gTmV3cyBBcnRpY2xlXG4ubmV3c0l0ZW1FbGVtZW50IHtcbiAgLnRpdGxlVGV4dHttYXJnaW4tYm90dG9tOiByZW0oMTUpO31cbiAgLmF1dGhvckRldGFpbHMge1xuICAgIGZvbnQtc2l6ZTogZW0oMTIpO1xuICAgIG1hcmdpbjoxNXB4IDA7XG4gIH1cbiAgLnRlYXNlclRleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGNvbG9yOiRib2R5Q29weUNvbG9yVHdvO1xuICB9XG4gIC5pbWFnZU9yaWdpbmFsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6ICRib3JkZXJXaWR0aCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICAubmV3c0FydGljbGVUaHVtYm5haWx7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAuMzVlbSAxZW0gMCAwO1xuICAgIGJvcmRlcjogJGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICBoZWlnaHQ6IDRlbTsgLy8gRG91YmxlIHRoZSBcInRpdGxlVGV4dFwiIGZvbnQtc2l6ZVxuICB9XG59XG5cbi8vIDIuIFBhZ2UgbGF5b3V0IHBhZGRpbmcvc3RydWN0dXJlXG4ubmV3c1BhZ2UgLnlpZWxkUGFnZUNvbnRlbnR7XG4gIHBhZGRpbmctdG9wOiAkYm9vdHN0cmFwLXBhZGRpbmctbWQgKiAycHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpe1xuICAubmV3c1BhZ2UgLnlpZWxkUGFnZUNvbnRlbnR7XG4gICAgcGFkZGluZy10b3A6ICRib290c3RyYXAtcGFkZGluZy1zbSAqIDJweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIDMuIFRhZ3Ncbi5uZXdzVGFncyB7XG4gIGZvbnQtc2l6ZTogLjc1cmVtO1xufVxuIiwiLyogQ29tbWVudHMgKi8gXG4vLyAwLiBWYXJpYWJsZXNcbi8vIDEuIENvbW1lbnQgVGhyZWFkL1N0cmVhbSBFbGVtZW50XG4vLyAyLiBDb21tZW50IEFnZ3JlZ2F0b3IgRWxlbWVudFxuLy8gMy4gQ29tbWVudCBJbnB1dCBGb3JtIChOZWVkcyB0byBiZSBhdWRpdGVkIHdoZW4gVUkvRm9ybXMgaXMgZmluaXNoZWQpXG4vLyA0LiBSZWNhcHRjaGEgKE5lZWRzIHRvIGJlIGF1ZGl0ZWQgd2hlbiBVSS9Gb3JtcyBpcyBmaW5pc2hlZClcbi8vIDUuIE1lZGlhIFF1ZXJpZXNcblxuXG4vLyAwLiBWYXJpYWJsZXNcbiRsZWZ0LWNvbHVtbjogNzVweDtcblxuLy8gMS4gQ29tbWVudCBUaHJlYWQvU3RyZWFtIEVsZW1lbnRcbi53b250Rml0IHtkaXNwbGF5OiBub25lO31cbi5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIge1xuICA+IGgzIHtAaW5jbHVkZSBzcGVjaWFsLWhlYWRlcjt9XG59XG4udGhyZWFkICsgLnRocmVhZHtcbiAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOnRvcCk7XG59XG4uY29tbWVudFN0cmVhbUNvbnRhaW5lcntcbiAgJi5hc2NlbmRpbmd7XG4gICAgPiAudGhyZWFke0BpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczpib3R0b20pO31cbiAgfVxuICAmLmRlc2NlbmRpbmd7XG4gICAgPiAudGhyZWFke0BpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczp0b3ApO31cbiAgfVxufVxuLmNvbW1lbnR7XG4gIHBhZGRpbmc6IHJlbSgzMCkgMDtcbiAgaW1nIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgYm9yZGVyOiAkYm9yZGVyV2lkdGggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAuY29tbWVudC1tZXRhICZ7IG1hcmdpbi1yaWdodDogJGxlZnQtY29sdW1uIC0gNjBweDt9XG4gIH1cbn1cbi5zdWJjb21tZW50cyB7XG4gIHBhZGRpbmctbGVmdDogJGxlZnQtY29sdW1uO1xufVxuLnN1YmNvbW1lbnR7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoKTtcbn1cbi5jb21tZW50LWNvbnRlbnR7XG4gIHBhZGRpbmctbGVmdDogJGxlZnQtY29sdW1uO1xuICBoMyB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgY29sb3I6ICRib2R5Q29weUNvbG9yVHdvO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHNwYW57IGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICB9XG4gIHA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjA7fVxuICAudGltZWFnbyB7XG4gICAgY29sb3I6ICRib2R5Q29weUNvbG9yVHdvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udFR3bztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogZW0oMTApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAuNWVtIDAgMS41ZW0gMDtcbiAgfVxuICAuY29tbWVudC1saW5rc3tcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYXtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTIpO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH0gIFxufVxuXG4vLyAyLiBDb21tZW50IEFnZ3JlZ2F0b3IgRWxlbWVudFxuLmNvbW1lbnRBZ2dyZWdhdG9ye1xuICA+IGgzeyBAaW5jbHVkZSBzcGVjaWFsLWhlYWRlcjt9XG4gIC5jb21tZW50e1xuICAgIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczpib3R0b20pO1xuICAgICY6bGFzdC1vZi10eXBleyBib3JkZXI6IG5vbmU7IH1cbiAgfVxuICAuY29tbWVudCAuY29tbWVudC1tZXRhe1xuICAgIG1hcmdpbjogMDtcbiAgICBpbWd7XG4gICAgICBtYXgtaGVpZ2h0OiAyLjVlbTtcbiAgICAgIG1heC13aWR0aDogMi41ZW07XG4gICAgICBtYXJnaW46IGVtKDUpIGVtKDgpIDAgMDtcbiAgICB9XG4gICAgPiBie1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgICB9XG4gICAgLnRpbWVhZ297XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IC4yNWVtIDAgMCAwO1xuICAgIH1cbiAgfVxufVxuLmNvbW1lbnR7XG4gIC5jb21tZW50LW1ldGF7XG4gICAgaW1neyBtYXJnaW4tcmlnaHQ6ICRsZWZ0LWNvbHVtbiAtIDYwcHg7fVxuICB9XG59XG5cbi8vIDMuIENvbW1lbnQgSW5wdXQgRm9ybSAoTmVlZHMgdG8gYmUgYXVkaXRlZCB3aGVuIFVJL0Zvcm1zIGlzIGZpbmlzaGVkKVxuLmNvbW1lbnRTdHJlYW1Db250YWluZXJ7XG4gICYuYXNjZW5kaW5ne1xuICAgIC5jb21tZW50LWZvcm06bnRoLWNoaWxkKDIpIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgIH0gICAgXG4gIH1cbn1cbi5jb21tZW50LWZvcm0ge1xuICBmaWVsZHNldCB7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0OyAvLyBPdmVyZmxvdyBzY3JvbGwgb24gY2hpbGRyZW4gZml4XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHNwYW4ucHJvY2Vzc2luZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICArIGZpZWxkc2V0IHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICBjb2xvcjogIzMzMztcbiAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGlucHV0LnRleHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjoxcHggc29saWQgI2VlZTtcbiAgICBwYWRkaW5nOjVweDtcbiAgICBtYXJnaW4tdG9wOjVweDsgXG4gIH1cbiAgbGFiZWwgKyBiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBpbnB1dCArIGxhYmVsLFxuICB0ZXh0YXJlYSArIGxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIHRleHRhcmVhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNWVtO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICB3aWR0aDogNDgwcHg7XG4gIH1cbiAgaW5wdXQjcmVjYXB0Y2hhX3Jlc3BvbnNlX2ZpZWxkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuICAvLyB0aGlzIGlzIGdyb3NzIFxuICAuaGlkZU9uUHJvY2Vzc2luZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi8vIDQuIFJlY2FwdGNoYSAoTmVlZHMgdG8gYmUgYXVkaXRlZCB3aGVuIFVJL0Zvcm1zIGlzIGZpbmlzaGVkKVxuLmNvbW1lbnRfZWxlbWVudF9yZWNhcHRjaGEge1xuICAjcmVjYXB0Y2hhX2FyZWF7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXJnaW46IDVweCAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjsgICAgXG4gIH1cbiAgLnJlY2FwdGNoYXRhYmxlIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZC5yZWNhcHRjaGFfaW1hZ2VfY2VsbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgZGl2I3JlY2FwdGNoYV9pbWFnZSB7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgaW1nI3JlY2FwdGNoYV9jaGFsbGVuZ2VfaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgICAgfVxuICAgIH1cbiAgICBpbWcjcmVjYXB0Y2hhX2xvZ28ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgc3BhbiNyZWNhcHRjaGFfcHJpdmFjeSB7XG4gICAgICBmb250LXNpemU6IC43NWVtO1xuICAgIH1cbiAgfVxufVxuLy8gRWRpdCBNb2RlIFN0eWxlIG92ZXJyaWRlcyAoUmVtb3ZlL2ZpeCB3aGVuIGVkaXQgbW9kZSBpcyBzdHlsZWQpXG4jbGlnaHRib3ggLmNvbW1lbnQtY29udGVudHtcbiAgPiBoMywgcCB7IGNvbG9yOiAkYm9keUNvcHlDb2xvclR3byAhaW1wb3J0YW50OyB9XG59IFxuXG4vLyA1LiBNZWRpYSBRdWVyaWVzXG5AaW5jbHVkZSBwYWdlLWVsZW1lbnQtYnJlYWsoNDAwKXtcbiAgLnN1YmNvbW1lbnRze1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICB9XG59XG5AaW5jbHVkZSBwYWdlLWVsZW1lbnQtYnJlYWsoMzAwKXtcbiAgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWd7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0oMTIpO1xuICB9XG4gIC5jb21tZW50LWNvbnRlbnR7cGFkZGluZy1sZWZ0OjA7fVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KXtcbiAgLmxheW91dC0yNS0yNS01MCxcbiAgLmxheW91dC01MC0yNS0yNXtcbiAgICAuY29sLW1kLTMsIC5jb2wtbWQtNntcbiAgICAgIC5jb21tZW50VGhyZWFkRWxlbWVudC1jb250YWluZXIgLmNvbW1lbnQgaW1ne1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgICAgLmNvbW1lbnQtY29udGVudHtwYWRkaW5nLWxlZnQ6NzVweDt9XG4gICAgICAuc3ViY29tbWVudHN7IHBhZGRpbmctbGVmdDogNzVweDsgfVxuICAgIH1cbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1e1xuICAgIC5jb2wtbWQtMywgLmNvbC1tZC02e1xuICAgICAgLmNvbW1lbnRUaHJlYWRFbGVtZW50LWNvbnRhaW5lciAuY29tbWVudCBpbWd7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0oMTIpO1xuICAgICAgfVxuICAgICAgLmNvbW1lbnQtY29udGVudHtwYWRkaW5nLWxlZnQ6MDt9XG4gICAgICAuc3ViY29tbWVudHN7IHBhZGRpbmctbGVmdDogMmVtOyB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBCdXR0b24gU3R5bGVzICovXG4vLyAxLiBMZWdhY3kgJiBQbGF0Zm9ybSBCdXR0b25zIChFZGl0IGNhcmVmdWxseSAtLSBvciBub3QgYXQgYWxsKVxuLy8gMi4gVGhlbWUgT3ZlcnJpZGVzXG5cbi8vIDEuIExlZ2FjeSAmIFBsYXRmb3JtIEJ1dHRvbnNcbi5idXR0b24tc21hbGwsIC5waWxsLXNtYWxsLWxlZnQsIC5waWxsLXNtYWxsLW1pZGRsZSwgLnBpbGwtc21hbGwtcmlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBib3JkZXI6IDAgc29saWQgIzAwMDtcbiAgICBjb2xvcjogI2U1ZTVlNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQ6IDlweC8yMHB4ICRmb250T25lO1xuICAgIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ1dHRvbi1tZWRpdW0sIC5waWxsLW1lZGl1bS1sZWZ0LCAucGlsbC1tZWRpdW0tbWlkZGxlLCAucGlsbC1tZWRpdW0tcmlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBib3JkZXI6IDAgc29saWQgIzAwMDtcbiAgICBjb2xvcjogI2U1ZTVlNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQ6IDEycHgvMzBweCAkZm9udE9uZTtcbiAgICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnV0dG9uLWxhcmdlLCAucGlsbC1sYXJnZS1sZWZ0LCAucGlsbC1sYXJnZS1taWRkbGUsIC5waWxsLWxhcmdlLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgYm9yZGVyOiAwIHNvbGlkICMwMDA7XG4gICAgY29sb3I6ICNlNWU1ZTU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250OiAxNnB4LzQwcHggJGZvbnRPbmU7XG4gICAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ1dHRvbi1zbWFsbDpob3ZlciwgLnBpbGwtc21hbGwtbGVmdDpob3ZlciwgLnBpbGwtc21hbGwtbWlkZGxlOmhvdmVyLCAucGlsbC1zbWFsbC1yaWdodDpob3ZlciwgLmJ1dHRvbi1tZWRpdW06aG92ZXIsIC5waWxsLW1lZGl1bS1sZWZ0OmhvdmVyLCAucGlsbC1tZWRpdW0tbWlkZGxlOmhvdmVyLCAucGlsbC1tZWRpdW0tcmlnaHQ6aG92ZXIsIC5idXR0b24tbGFyZ2U6aG92ZXIsIC5waWxsLWxhcmdlLWxlZnQ6aG92ZXIsIC5waWxsLWxhcmdlLW1pZGRsZTpob3ZlciwgLnBpbGwtbGFyZ2UtcmlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cbi5idXR0b24tc21hbGw6YWN0aXZlLCAucGlsbC1zbWFsbC1sZWZ0OmFjdGl2ZSwgLnBpbGwtc21hbGwtbWlkZGxlOmFjdGl2ZSwgLnBpbGwtc21hbGwtcmlnaHQ6YWN0aXZlLCAuYnV0dG9uLW1lZGl1bTphY3RpdmUsIC5waWxsLW1lZGl1bS1sZWZ0OmFjdGl2ZSwgLnBpbGwtbWVkaXVtLW1pZGRsZTphY3RpdmUsIC5waWxsLW1lZGl1bS1yaWdodDphY3RpdmUsIC5idXR0b24tbGFyZ2U6YWN0aXZlLCAucGlsbC1sYXJnZS1sZWZ0OmFjdGl2ZSwgLnBpbGwtbGFyZ2UtbWlkZGxlOmFjdGl2ZSwgLnBpbGwtbGFyZ2UtcmlnaHQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTkxOTE5O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG4uYnV0dG9uLXNtYWxsOmZvY3VzLCAucGlsbC1zbWFsbC1sZWZ0OmZvY3VzLCAucGlsbC1zbWFsbC1taWRkbGU6Zm9jdXMsIC5waWxsLXNtYWxsLXJpZ2h0OmZvY3VzLCAuYnV0dG9uLW1lZGl1bTpmb2N1cywgLnBpbGwtbWVkaXVtLWxlZnQ6Zm9jdXMsIC5waWxsLW1lZGl1bS1taWRkbGU6Zm9jdXMsIC5waWxsLW1lZGl1bS1yaWdodDpmb2N1cywgLmJ1dHRvbi1sYXJnZTpmb2N1cywgLnBpbGwtbGFyZ2UtbGVmdDpmb2N1cywgLnBpbGwtbGFyZ2UtbWlkZGxlOmZvY3VzLCAucGlsbC1sYXJnZS1yaWdodDpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG4ucGlsbC1zbWFsbC1sZWZ0LCAucGlsbC1tZWRpdW0tbGVmdCwgLnBpbGwtbGFyZ2UtbGVmdCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG4ucGlsbC1zbWFsbC1yaWdodCwgLnBpbGwtbWVkaXVtLXJpZ2h0LCAucGlsbC1sYXJnZS1yaWdodCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbn1cbi5idXR0b24tc2hlbGwtc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5idXR0b24tc2hlbGwtbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYnV0dG9uLXNoZWxsLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5hLmJ1dHRvbi1zbWFsbCBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ucGlsbC1zbWFsbC1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtc21hbGwtbWlkZGxlIC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtc21hbGwtcmlnaHQgLmJ1dHRvbi1pbWFnZS1sZWZ0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCwgLmJ1dHRvbi1zbWFsbCAuYnV0dG9uLWltYWdlLWxlZnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTZweDtcbiAgICBsZWZ0OiAycHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICB6LWluZGV4OiAxO1xufVxuLnBpbGwtc21hbGwtbGVmdCAuYnV0dG9uLWltYWdlLXJpZ2h0LCAucGlsbC1zbWFsbC1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtc21hbGwtcmlnaHQgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0LCAuYnV0dG9uLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAycHg7XG4gICAgdG9wOiAycHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgei1pbmRleDogMTtcbn1cbi5waWxsLXNtYWxsLWxlZnQgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1zbWFsbC1yaWdodCAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLXNtYWxsLW1pZGRsZSAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5idXR0b24tc21hbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG59XG4uYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LnBpbGwtc21hbGwtbGVmdCwgLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5waWxsLXNtYWxsLW1pZGRsZSwgLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5waWxsLXNtYWxsLXJpZ2h0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtbGVmdCB+IGlucHV0LmJ1dHRvbi1zbWFsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuLnBpbGwtc21hbGwtbGVmdCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1zbWFsbC1yaWdodCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1zbWFsbC1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLmJ1dHRvbi1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gLmJ1dHRvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xufVxuLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1zbWFsbC1sZWZ0LCAuYnV0dG9uLXNoZWxsLXNtYWxsIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5waWxsLXNtYWxsLW1pZGRsZSwgLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1zbWFsbC1yaWdodCwgLmJ1dHRvbi1zaGVsbC1zbWFsbCAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQuYnV0dG9uLXNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuYS5idXR0b24tbWVkaXVtIGltZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5waWxsLW1lZGl1bS1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCwgLnBpbGwtbWVkaXVtLW1pZGRsZSAuYnV0dG9uLWltYWdlLWxlZnQsIC5waWxsLW1lZGl1bS1yaWdodCAuYnV0dG9uLWltYWdlLWxlZnQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtbGVmdCwgLmJ1dHRvbi1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbGVmdDogM3B4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzcHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgei1pbmRleDogMTtcbn1cbi5waWxsLW1lZGl1bS1sZWZ0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5waWxsLW1lZGl1bS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtbWVkaXVtLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjRweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAzcHg7XG4gICAgdG9wOiAzcHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgei1pbmRleDogMTtcbn1cbi5waWxsLW1lZGl1bS1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbWVkaXVtLXJpZ2h0IC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbWVkaXVtLW1pZGRsZSAuYnV0dG9uLWltYWdlLWxlZnQgfiAuYnV0dG9uLWNvbnRlbnQsIC5idXR0b24tbWVkaXVtIC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xufVxuLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1tZWRpdW0tbGVmdCwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1tZWRpdW0tbWlkZGxlLCAuYnV0dG9uLXNoZWxsLW1lZGl1bSAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5waWxsLW1lZGl1bS1yaWdodCwgLmJ1dHRvbi1zaGVsbC1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQuYnV0dG9uLW1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuLnBpbGwtbWVkaXVtLWxlZnQgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbWVkaXVtLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5waWxsLW1lZGl1bS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLmJ1dHRvbi1tZWRpdW0gLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMThweDtcbn1cbi5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5waWxsLW1lZGl1bS1sZWZ0LCAuYnV0dG9uLXNoZWxsLW1lZGl1bSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1tZWRpdW0tbWlkZGxlLCAuYnV0dG9uLXNoZWxsLW1lZGl1bSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1tZWRpdW0tcmlnaHQsIC5idXR0b24tc2hlbGwtbWVkaXVtIC5idXR0b24taW1hZ2UtcmlnaHQgfiBpbnB1dC5idXR0b24tbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuYS5idXR0b24tbGFyZ2UgaW1nIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnBpbGwtbGFyZ2UtbGVmdCAuYnV0dG9uLWltYWdlLWxlZnQsIC5waWxsLWxhcmdlLW1pZGRsZSAuYnV0dG9uLWltYWdlLWxlZnQsIC5waWxsLWxhcmdlLXJpZ2h0IC5idXR0b24taW1hZ2UtbGVmdCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLWxlZnQsIC5idXR0b24tbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbGVmdDogNHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0cHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgei1pbmRleDogMTtcbn1cbi5waWxsLWxhcmdlLWxlZnQgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLnBpbGwtbGFyZ2UtbWlkZGxlIC5idXR0b24taW1hZ2UtcmlnaHQsIC5waWxsLWxhcmdlLXJpZ2h0IC5idXR0b24taW1hZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCwgLmJ1dHRvbi1sYXJnZSAuYnV0dG9uLWltYWdlLXJpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNHB4O1xuICAgIHRvcDogNHB4O1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHotaW5kZXg6IDE7XG59XG4ucGlsbC1sYXJnZS1sZWZ0IC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtcmlnaHQgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAucGlsbC1sYXJnZS1taWRkbGUgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gLmJ1dHRvbi1jb250ZW50LCAuYnV0dG9uLWxhcmdlIC5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xufVxuLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5waWxsLWxhcmdlLWxlZnQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1sYXJnZS1taWRkbGUsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1sZWZ0IH4gaW5wdXQucGlsbC1sYXJnZS1yaWdodCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLWxlZnQgfiBpbnB1dC5idXR0b24tbGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogNDJweDtcbn1cbi5waWxsLWxhcmdlLWxlZnQgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtcmlnaHQgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCwgLnBpbGwtbGFyZ2UtbWlkZGxlIC5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQsIC5idXR0b24tbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IC5idXR0b24tY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMjZweDtcbn1cbi5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbGFyZ2UtbGVmdCwgLmJ1dHRvbi1zaGVsbC1sYXJnZSAuYnV0dG9uLWltYWdlLXJpZ2h0IH4gaW5wdXQucGlsbC1sYXJnZS1taWRkbGUsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LnBpbGwtbGFyZ2UtcmlnaHQsIC5idXR0b24tc2hlbGwtbGFyZ2UgLmJ1dHRvbi1pbWFnZS1yaWdodCB+IGlucHV0LmJ1dHRvbi1sYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogNDJweDtcbn1cbi5idXR0b24taW1hZ2UtbGVmdCB+IC5idXR0b24tY29udGVudDplbXB0eSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcHggIWltcG9ydGFudDtcbn1cbi5idXR0b24taW1hZ2UtcmlnaHQgfiAuYnV0dG9uLWNvbnRlbnQ6ZW1wdHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFweCAhaW1wb3J0YW50O1xufVxuYnV0dG9uLmJ1dHRvbi1zbWFsbDo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLXNtYWxsOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLXNtYWxsLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0LnBpbGwtc21hbGwtbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLXNtYWxsLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1zbWFsbC1sZWZ0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1zbWFsbC1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLXNtYWxsLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24uYnV0dG9uLW1lZGl1bTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLW1lZGl1bTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQucGlsbC1tZWRpdW0tbGVmdDo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQucGlsbC1tZWRpdW0tbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLW1lZGl1bS1yaWdodDo6LW1vei1mb2N1cy1pbm5lciwgYnV0dG9uLnBpbGwtbWVkaXVtLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLW1lZGl1bS1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLW1lZGl1bS1yaWdodDo6LW1vei1mb2N1cy1pbm5lciwgYnV0dG9uLmJ1dHRvbi1sYXJnZTo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQuYnV0dG9uLWxhcmdlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLWxhcmdlLWxlZnQ6Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0LnBpbGwtbGFyZ2UtbWlkZGxlOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dC5waWxsLWxhcmdlLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1sYXJnZS1sZWZ0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b24ucGlsbC1sYXJnZS1taWRkbGU6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbi5waWxsLWxhcmdlLXJpZ2h0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xufVxuLmJ1dHRvbi1jYW5jZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzAwMDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogI2U1ZTVlNTtcbn1cbi5idXR0b24tY2FuY2VsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTUwMDAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYnV0dG9uLWNhbmNlbDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5idXR0b24tZWRpdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2QyMjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIGNvbG9yOiAjMzMzO1xufVxuLmJ1dHRvbi1lZGl0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlMDQ1O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICMxYTFhMWE7XG59XG4uYnV0dG9uLWVkaXQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjZDIyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYnV0dG9uLWNvbnN0cnVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2ZjY2QyMiB1cmwoXCIvYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmXCIpIHJlcGVhdC14IHNjcm9sbCAwIDUwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRhMzAxO1xuICAgIGNvbG9yOiAjODA3NTQwO1xufVxuLmJ1dHRvbi1jb25zdHJ1Y3Rpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmY2NkMjIgdXJsKFwiL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBzY3JvbGwgMCA1MCU7XG4gICAgY29sb3I6ICM1OTQxMDA7XG59XG4uYnV0dG9uLWNvbnN0cnVjdGlvbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2NkMjI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogIzU5NDEwMDtcbn1cbi5idXR0b24tc2l0ZUNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI0NzhkO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNlNWU1ZTU7XG59XG4uYnV0dG9uLXNpdGVDb2xvcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiNDc4ZDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJ1dHRvbi1zaXRlQ29sb3I6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI0NzhkO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYnV0dG9uLXN1YnRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGNvbG9yOiAjNzc3O1xufVxuLmJ1dHRvbi1zdWJ0bGU6aG92ZXIsIC5idXR0b24tc3VidGxlOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogIzg4ODtcbn1cbi5idXR0b24tc3VidGxlOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbn1cbi5idXR0b24tY29tbWVudENvdW50IC5idXR0b24taW1hZ2UtcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCkgdXJsKFwiL2FwcF9pbWFnZXMvcGFnZUVsZW1lbnRzL25ld3NBZ2dyZWdhdG9yL2ljb24ucG5nPzE0MzIwNDM4NTZcIikgbm8tcmVwZWF0IHNjcm9sbCAwIDUwJTtcbiAgICB0b3A6IDFweDtcbn1cbi5idXR0b24tb3BlbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICBjb2xvcjogIzFhMWExYTtcbn1cbi5idXR0b24tb3Blbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICBjb2xvcjogIzI2MjYyNjtcbn1cbi5idXR0b24tb3BlbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7XG4gICAgY29sb3I6ICMwMDA7XG59XG4uYnV0dG9uLW9wZW4gLmJ1dHRvbi1jb250ZW50IHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5idXR0b24tc21hbGwuYnV0dG9uLWRpc2FibGVkLCAuYnV0dG9uLXNtYWxsW2Rpc2FibGVkXSwgLmJ1dHRvbi1zbWFsbC5idXR0b24tZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tc21hbGxbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLXNtYWxsLmJ1dHRvbi1kaXNhYmxlZDphY3RpdmUsIC5idXR0b24tc21hbGxbZGlzYWJsZWRdOmFjdGl2ZSwgLmJ1dHRvbi1tZWRpdW0uYnV0dG9uLWRpc2FibGVkLCAuYnV0dG9uLW1lZGl1bVtkaXNhYmxlZF0sIC5idXR0b24tbWVkaXVtLmJ1dHRvbi1kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1tZWRpdW1bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLW1lZGl1bS5idXR0b24tZGlzYWJsZWQ6YWN0aXZlLCAuYnV0dG9uLW1lZGl1bVtkaXNhYmxlZF06YWN0aXZlLCAuYnV0dG9uLWxhcmdlLmJ1dHRvbi1kaXNhYmxlZCwgLmJ1dHRvbi1sYXJnZVtkaXNhYmxlZF0sIC5idXR0b24tbGFyZ2UuYnV0dG9uLWRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWxhcmdlW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1sYXJnZS5idXR0b24tZGlzYWJsZWQ6YWN0aXZlLCAuYnV0dG9uLWxhcmdlW2Rpc2FibGVkXTphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNlNWU1ZTUgbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpIHJlcGVhdCBzY3JvbGwgMCAwO1xuICAgIGNvbG9yOiAjYjNiM2IzICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmJ1dHRvbi10b29sIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDE7XG59XG4uYnV0dG9uLXRvb2w6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMjtcbn1cbi5idXR0b24tdG9vbDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOGQ4ZDg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDI7XG59XG4uYnV0dG9uLXRvb2wucGlsbC1tZWRpdW0tbWlkZGxlLCAuYnV0dG9uLXRvb2wucGlsbC1tZWRpdW0tcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLmJ1dHRvbi1jYW5jZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzAwMDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogI2U1ZTVlNTtcbn1cbi5idXR0b24tY2FuY2VsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTUwMDAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYnV0dG9uLWNhbmNlbDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5mb290YmFsbC1yZWFsLXRpbWUtYnV0dG9uLXNjb3JlLWxpdmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUxLCAyMDMsIDM0LCAwKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IDI0OHB4O1xufVxuLmZvb3RiYWxsLXJlYWwtdGltZS1idXR0b24tc2NvcmUtbGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1MywgMjMyLCAxMTQpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTEsIDIwMywgMzQsIDAuNSk7XG4gICAgY29sb3I6ICMwMDA7XG59XG4uZm9vdGJhbGwtcmVhbC10aW1lLWJ1dHRvbi1xdWljay1zY29yZSwgLmZvb3RiYWxsLXJlYWwtdGltZS1idXR0b24tZWRpdC1zdGF0cyB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IDExNXB4O1xufVxuLmJ1dHRvbi1mb290YmFsbC1vZmZsaW5lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG59XG4jc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLmJ1dHRvbi1zbWFsbCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLXNtYWxsLWxlZnQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1zbWFsbC1taWRkbGUsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1zbWFsbC1yaWdodCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5idXR0b24tbWVkaXVtLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLnBpbGwtbWVkaXVtLWxlZnQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1tZWRpdW0tbWlkZGxlLCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLnBpbGwtbWVkaXVtLXJpZ2h0LCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAucmVhZE1vcmUgLmJ1dHRvbi1sYXJnZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLnJlYWRNb3JlIC5waWxsLWxhcmdlLWxlZnQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1sYXJnZS1taWRkbGUsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5yZWFkTW9yZSAucGlsbC1sYXJnZS1yaWdodCB7XG4gICAgY29sb3I6ICNlNWU1ZTU7XG59XG4jc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5idXR0b24tc21hbGwsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLnBpbGwtc21hbGwtbGVmdCwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1zbWFsbC1taWRkbGUsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLnBpbGwtc21hbGwtcmlnaHQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLmJ1dHRvbi1tZWRpdW0sICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLnBpbGwtbWVkaXVtLWxlZnQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLnBpbGwtbWVkaXVtLW1pZGRsZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1tZWRpdW0tcmlnaHQsICNzcG9ydC1oZWFkZXIgfiAubGF5b3V0Q29udGFpbmVyIC5jb21tZW50Q291bnQgLmJ1dHRvbi1sYXJnZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1sYXJnZS1sZWZ0LCAjc3BvcnQtaGVhZGVyIH4gLmxheW91dENvbnRhaW5lciAuY29tbWVudENvdW50IC5waWxsLWxhcmdlLW1pZGRsZSwgI3Nwb3J0LWhlYWRlciB+IC5sYXlvdXRDb250YWluZXIgLmNvbW1lbnRDb3VudCAucGlsbC1sYXJnZS1yaWdodCB7XG4gICAgY29sb3I6ICM1OTU5NTk7XG59XG5cbi8vIDIuIFRoZW1lIE92ZXJyaWRlc1xuLnRvcE5hdixcbi5zaXRlQ29udGFpbmVyIHtcbiAgICBbY2xhc3MqPVwiYnV0dG9uLVwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZTtcbiAgICB9XG59XG4uYnV0dG9uLWFkZDpob3ZlciwgLmJ1dHRvbi1yZW1vdmU6aG92ZXIge1xuICAgIGJvcmRlcjpub25lO1xuICAgIGJvcmRlcjoxcHggc29saWQgI2ZkZWE4ODtcbn1cbiIsIi8qIFRhYmxlcyAqL1xuLy8gMS4gU3RydWN0dXJlXG4vLyAyLiBEYXRhIFRhYmxlXG4vLyAzLiBTdGF0IFRhYmxlXG4vLyA0LiBTcG9ydHMgUGFnZSBTdGF0IFRhYmxlc1xuLy8gNS4gVG91cm5hbWVudCBFbGVtZW50IFRhYmxlc1xuXG4jbGlnaHRib3hCb2R5IC50YWJsZUVsZW1lbnQgeyBfd2lkdGg6IDY2MHB4OyB9IC8vIFNob3cgdG8gSUVcblxuLmRhdGFUYWJsZSxcbi5zdGF0VGFibGUsXG4uc3RhdF90YWJsZSB7XG4gIEBpbmNsdWRlIHRhYmxlO1xuXG4gICogPiB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuICB0aCB7XG4gICAgQGluY2x1ZGUgdGFibGUtdGg7XG4gICAgQGluY2x1ZGUgdGFibGUtdGgtdGV4dDtcbiAgICAmLkFTQyxcbiAgICAmLkRFU0MsXG4gICAgJi5zb3J0dGFibGVfc29ydGVkLFxuICAgICYuc29ydHRhYmxlX3NvcnRlZF9yZXZlcnNlIHsgYmFja2dyb3VuZDogJGxpbmstY29sb3ItZGFya2VuLTU7IH1cbiAgfVxuXG4gIHRkIHtcbiAgICBAaW5jbHVkZSB0YWJsZS10ZDtcbiAgICAmLmhpZ2hsaWdodCB7IGJhY2tncm91bmQ6IGRhcmtlbigjZWVlLCA1JSk7IH1cbiAgfVxufVxuXG4vLyAxLiBTdHJ1Y3R1cmVcbi5OZ2luVGFibGVTY3JvbGwsXG4udGFibGVFbGVtZW50IC50YWJsZVdyYXBwZXIsXG4udGV4dEJsb2NrRWxlbWVudCAudGV4dCA+IC50YWJsZVdyYXBwZXIgeyBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbi5kYXRhVGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHRoLCB0ZCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgfVxuXG4gIHRoZWFkIHRoLmFqYXhfc29ydCB7IGN1cnNvcjogcG9pbnRlcjsgfVxufVxuXG5cbiRmaXhlZC13aWR0aC1zaXplOiAxNDBweDtcblxuLy8gMi4gRGF0YSBUYWJsZVxuLmRhdGFUYWJsZSB7XG4gIHRoZWFkIHtcbiAgICB0aCB7XG4gICAgICAmLmFqYXhfc29ydCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc29ydGVkX2ltZyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgICAmOmhvdmVyIHsgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgICBjb250ZW50OiAnXFxmMGRjJzsgLy8gZmEtc29ydCBpY29uXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHRhYmxlLXNvcnQtaWNvbi1zaXplLzIpOyAvLyBDZW50ZXIgdmVydGljYWxseVxuICAgICAgICB9XG5cbiAgICAgICAgJi5BU0MsXG4gICAgICAgICYuc29ydHRhYmxlX3NvcnRlZCB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMGRlJzsgLy8gZmEtc29ydC1hc2MgaWNvblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdGFibGUtc29ydC1pY29uLXNpemUvMikrMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLkRFU0MsXG4gICAgICAgICYuc29ydHRhYmxlX3NvcnRlZF9yZXZlcnNlIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwZGQnOyAvLyBmYS1zb3J0LWRlc2MgaWNvblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdGFibGUtc29ydC1pY29uLXNpemUvMiktMjsgLy8gQWRqdXN0IGNlbnRlcmluZ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuQVNDLFxuICAgICAgICAmLkRFU0MsXG4gICAgICAgICYuaGlnaGxpZ2h0ZWQsXG4gICAgICAgICYuc29ydHRhYmxlX3NvcnRlZCxcbiAgICAgICAgJi5zb3J0dGFibGVfc29ydGVkX3JldmVyc2UgeyBiYWNrZ3JvdW5kOiAkbGluay1jb2xvci1kYXJrZW4tNTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHNjb3BlIGJhY2tncm91bmQgdG8gdGJvZHkgc28gYmVjYXVzZSB0Zm9vdCBhbHNvIGNhbiBoYXZlIHRkXG4gIHRib2R5IHRkIHsgYmFja2dyb3VuZDogJHRhYmxlLWJvZHktYmFja2dyb3VuZDsgfVxuXG4gIHRmb290IHtcbiAgICAvLyB0Zm9vdCBjYW5ub3QgaGF2ZSBib3JkZXItYm90dG9tIGl0c2VsZlxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCAjZWVlO1xuICAgIH1cblxuICAgIC8vIFRhYmxlIGJ1aWxkZXIgZ2VuZXJhdGVzIGVtcHR5IHRmb290IHNvIGhpZGUgYm9yZGVyXG4gICAgJjplbXB0eTphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgfVxufVxuXG5cbi8vIDMuIFN0YXQgVGFibGVcbi5zdGF0VGFibGUge1xuICAuY29uZGVuc2VkVmlldyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAvLyBIaWRlIHNvcnQgaW1hZ2VzIGJlY2F1c2Ugd2UgYXJlIHVzaW5nIGZvbnQtaWNvbnNcbiAgLnNvcnRlZF9pbWcsXG4gIC5zb3J0LWFycm93IHsgZGlzcGxheTogbm9uZTsgfVxuXG4gIC5uYW1lLFxuICAuc3RhdFRlYW0sXG4gIC5zdGF0UGxheWVyIHtcbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgLnNjaGVkdWxlTGlzdFJlc3VsdCxcbiAgLnNjaGVkdWxlTGlzdFNjb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAuc2NoZWR1bGVMaXN0UmVzdWx0ICsgLnNjaGVkdWxlTGlzdFNjb3JlIHtcbiAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gIH1cblxuICAud2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9jZW50ZXIvd2lubmVyc05vdGNoLXN0YXRUYWJsZS5wbmdcIikgbm8tcmVwZWF0IGxlZnQgNjAlO1xuICB9XG5cbiAgLy8gR2l2ZSB0YWJsZXMgd2l0aG91dCBkYXRhIG5hbWUgY29sdW1uIGEgd2lkdGhcbiAgdGgge1xuICAgICYubmFtZSxcbiAgICAmLnN0YXRUZWFtLFxuICAgICYuc3RhdFBsYXllciB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgd2lkdGg6ICRmaXhlZC13aWR0aC1zaXplO1xuICAgICAgICBtYXJnaW4tbGVmdDogLS41ZW07IC8vIGhhY2sgdG8gY291bnRlciB0aGUgJm5ic3A7IGluIHRoZSBodG1sXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGQge1xuICAgICYubmFtZSxcbiAgICAmLnN0YXRUZWFtLFxuICAgICYuc3RhdFBsYXllciB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgd2lkdGg6ICRmaXhlZC13aWR0aC1zaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5leHRyYS1zcGFjZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIDQuIFNwb3J0cyBQYWdlIFN0YXQgVGFibGVzXG5cbkBtaXhpbiBmaXhlZC13aWR0aC1jb2x1bW4oJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7IC8vIEFjdHMgYXMgYSBtaW4td2lkdGggZm9yIHRoZSB0ZWFtIG5hbWUgY29sdW1uXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNUZWFtU3RhdHNEaXYsXG4jUGxheWVyU3RhdHNEaXYge1xuICAuc3RhdFRhYmxlIHtcbiAgICB0aCA+IGltZyB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB0ZCB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgfVxufVxuXG4jVGVhbVN0YXRzRGl2IHtcbiAgLnN0YXRUYWJsZSB7XG4gICAgLy8gRml4ZWQgd2lkdGggdGVhbSBuYW1lIGNvbHVtblxuICAgIHRoOmZpcnN0LWNoaWxkIHsgd2lkdGg6ICRmaXhlZC13aWR0aC1zaXplOyB9XG4gICAgLnRlYW1OYW1lIHsgQGluY2x1ZGUgZml4ZWQtd2lkdGgtY29sdW1uKCRmaXhlZC13aWR0aC1zaXplKTsgfVxuICB9XG59XG5cbiNQbGF5ZXJTdGF0c0RpdiB7XG4gIC5zdGF0VGFibGUge1xuICAgIC8vIEZpeGVkIHdpZHRoIHBsYXllciBhbmQgdGVhbSBuYW1lIGNvbHVtbnNcbiAgICB0aCB7XG4gICAgICAmOm50aC1jaGlsZCgyKSxcbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6ICRmaXhlZC13aWR0aC1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5qZXJzZXktbnVtYmVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgICY6bnRoLWNoaWxkKDIpID4gYSB7IEBpbmNsdWRlIGZpeGVkLXdpZHRoLWNvbHVtbigkZml4ZWQtd2lkdGgtc2l6ZSk7IH1cbiAgICAgIC50ZWFtTmFtZSB7IEBpbmNsdWRlIGZpeGVkLXdpZHRoLWNvbHVtbigkZml4ZWQtd2lkdGgtc2l6ZSk7IH1cbiAgICAgICYuc3RhdFBsYXllciB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuI1RlYW1JbnN0YW5jZVN0YXRzRGl2IHtcbiAgLnRoZW1lLXN0YXQtdGFibGUge1xuICAgIHRkIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4gICAgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnN0YXRQbGF5ZXIge1xuICAgICAgJjpub3QoLmplcnNleS1udW1iZXIpIHsgd2lkdGg6ICRmaXhlZC13aWR0aC1zaXplOyB9XG4gICAgfVxuXG4gICAgdGguc3RhdFBsYXllciB7XG4gICAgICB3aWR0aDogJGZpeGVkLXdpZHRoLXNpemU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5qZXJzZXktbnVtYmVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC50ZWFtTmFtZSxcbiAgICAuc3RhdFBsYXllciA+IGEgeyBAaW5jbHVkZSBmaXhlZC13aWR0aC1jb2x1bW4oJGZpeGVkLXdpZHRoLXNpemUpOyB9XG4gIH1cbn1cblxuXG4vLyA1LiBUb3VybmFtZW50IEVsZW1lbnQgVGFibGVzXG4ucGxheWVyU3RhdExlYWRlckVsZW1lbnQgdGg6Zmlyc3QtY2hpbGQgeyB3aWR0aDogNGVtOyB9XG5cbi5zdGFuZGluZ3NFbGVtZW50IHtcbiAgLnNwb3J0VGFibGVMYWJlbCB7XG4gICAgQGluY2x1ZGUgc3BlY2lhbC1oZWFkZXI7XG5cbiAgICBoNCB7IGNvbG9yOiAjZmZmOyB9XG4gIH1cblxuICAuc3RhdFRhYmxlIHtcbiAgICB0aDpmaXJzdC1jaGlsZCB7IHdpZHRoOiAxODBweDt9XG5cbiAgICB0aCwgdGQge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICB9XG4gIH1cbiAgXG4gIC5OZ2luVGFibGVXcmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkgeyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG59XG4iLCIvKiBDb3VudGRvd24gRWxlbWVudCAqL1xuLy8gMS4gR2xvYmFsIFN0eWxlc1xuLy8gMi4gVXNlciBPcHRpb25zXG4vLyAzLiBBY2NvbWlkYXRpb24gZm9yIHNtYWxsIGNvbHVtbnMgJiBNb2JpbGUgYWRqdXN0bWVudHNcblxuLy8gMS4gR2xvYmFsIFN0eWxlc1xuLmNvdW50ZG93bkVsZW1lbnQge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgLW1zLWZsZXgtcGFjazogc3BhY2UtYmV0d2VlbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgcGFkZGluZzogMzVweCAwO1xuICB0ZXh0LWFsaWduOmxlZnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGgyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDsgLy8gd2lkdGggb2Ygc3RyaXBlcyBvbiByaWdodCBvZiBzcGVjaWFsIGhlYWRlclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgc3BlY2lhbC1oZWFkZXI7XG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBhYmJyIHtcbiAgICAtd2Via2l0LWFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDM0MHB4O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjowIDZweDtcbiAgfVxuICBiIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTokZm9udE9uZTtcbiAgICBmb250LXdlaWdodDo5MDA7XG4gICAgZm9udC1zaXplOnJlbSg1Mik7XG4gIH1cbiAgc21hbGwge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgbWFyZ2luLXRvcDoycHg7XG4gICAgZm9udC1zaXplOnJlbSgxMik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuICBcbi8vIDIuIFVzZXIgb3B0aW9uc1xuLmNvdW50ZG93bkVsZW1lbnQuY291bnRkb3duLWRhcmsge1xuICBiYWNrZ3JvdW5kOiAjNTU1O1xuICBjb2xvcjogI2ZmZjtcbiAgaDJ7XG4gICAgJjphZnRlcntcbiAgICAgIGJvcmRlci1sZWZ0OjJweCBzb2xpZCAjNTU1O1xuICAgIH1cbiAgfVxuICAmOmJlZm9yZSxcbiAgJjphZnRlcntcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBsZWZ0OjA7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTBweDtcbiAgICBAaW5jbHVkZSBsaW5lLXBhdHRlcm4oI2ZmZix0cmFuc3BhcmVudCk7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgdG9wOjA7XG4gIH1cbiAgJjphZnRlcntcbiAgICBib3R0b206MDtcbiAgICBjbGVhcjpib3RoO1xuICB9XG59XG4uY291bnRkb3duRWxlbWVudC5jb3VudGRvd24tbGlnaHR7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd287XG4gIGJ7XG4gICAgY29sb3I6JGxpbmstY29sb3I7XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDpcIlwiO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgbGVmdDowO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjEwcHg7XG4gICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuKCk7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgdG9wOjA7XG4gIH1cbiAgJjphZnRlcntcbiAgICBib3R0b206MDtcbiAgICBjbGVhcjpib3RoO1xuICB9XG59XG5cbi8vIDMuIEFjY29taWRhdGlvbiBmb3Igc21hbGwgY29sdW1ucyAmIE1vYmlsZSBhZGp1c3RtZW50c1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuY29sLW1kLTQsIC5jb2wtbWQtM3sgXG4gICAgLmNvdW50ZG93bkVsZW1lbnR7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBhYmJyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBpbml0aWFsO1xuICAgICAgfVxuICAgICAgYntcbiAgICAgICAgZm9udC1zaXplOnJlbSgzNik7XG4gICAgICB9XG4gICAgICBzbWFsbHtcbiAgICAgICAgZm9udC1zaXplOnJlbSgxMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmNvbC1tZC00LCAuY29sLW1kLTN7IFxuICAgIC5jb3VudGRvd25FbGVtZW50e1xuICAgICAgYWJiciB7XG4gICAgICAgIHNwYW57XG4gICAgICAgICAgd2lkdGg6MzMlO1xuICAgICAgICAgIHBhZGRpbmc6MS41JSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBie1xuICAgICAgICBmb250LXNpemU6cmVtKDM2KTtcbiAgICAgIH1cbiAgICAgIHNtYWxse1xuICAgICAgICBmb250LXNpemU6cmVtKDExKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmNvdW50ZG93bkVsZW1lbnR7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBhYmJyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgICB9XG4gICAgYntcbiAgICAgIGZvbnQtc2l6ZTpyZW0oNDApO1xuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAuY291bnRkb3duRWxlbWVudHtcbiAgICBie1xuICAgICAgZm9udC1zaXplOnJlbSgzMik7XG4gICAgfVxuICAgIHNtYWxse1xuICAgICAgZm9udC1zaXplOnJlbSgxMSk7XG4gICAgfVxuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC5jb3VudGRvd25FbGVtZW50e1xuICAgIGFiYnIge1xuICAgICAgc3BhbntcbiAgICAgICAgd2lkdGg6MzMlO1xuICAgICAgICBwYWRkaW5nOjEuNSUgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2UgLyBFbGVtZW50IEJvdHRvbSBPcHRpb25zXG4ucGFnZU9wdGlvbnMsXG4uZXh0ZW5kZWRPcHRpb25zIHtcbiAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOnRvcCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIFxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiAyZW07XG4gICAgXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgIHdpZHRoOiAxZW07XG4gICAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkYm9keUNvcHlDb2xvclRocmVlO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goLTIyZGVnKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMjJkZWcpO1xuICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjJkZWcpO1xuICAgIH1cbiAgfVxuICBcbiAgYSB7XG4gICAgY29sb3I6ICRib2R5Q29weUNvbG9yVHdvO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBcbiAgICA+IGltZyB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfSAvLyBvdmVycmlkIEFkZFRoaXMgbW9kdWxlXG4gICAgXG4gICAgJjpob3ZlciB7IGNvbG9yOiAkYm9keUNvcHlDb2xvck9uZTsgfVxuICB9XG59XG5cbi8vU2hhcmluZyBpY29uc1xuLnNuLXNoYXJlLWljb25ze1xuICBkaXNwbGF5OmJsb2NrO1xuICBjb2xvcjokYm9keUNvcHlDb2xvclR3bztcbiAgZm9udC1zaXplOjAuODc1cmVtO1xuICBkaXZ7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzowIDJweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGVcbiAgfVxuICAuc24tc2hhcmUtdGV4dHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6MTdweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC0ycHgpO1xuICAgICY6YmVmb3Jle1xuICAgICAgY29udGVudDogXCJcXGYxZTBcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLnNoYXJpbmdPcHRpb25ze1xuICB3aWR0aDoxMDAlO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbWFyZ2luLXRvcDoxNXB4O1xuICBwYWRkaW5nOjI1cHggMCAxMHB4IDA7XG4gIGJvcmRlci10b3A6JGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvcjtcbn1cbiBcbiIsIiNwYXlXYWxsIHtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSwyNTUsMjA0KTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggcmdiKDI1NSwyMDQsMCk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNwYXlXYWxsIGgzIHtcbiAgY29sb3I6ICMwMDA7XG59XG4jcGF5V2FsbCAubGF5b3V0Q29udGFpbmVyIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4jcGF5V2FsbCA+IC5sYXlvdXRDb250YWluZXIgPiAuY29sdW1uIHsgcGFkZGluZzogLjA1cHggMDsgfVxuI3BheVdhbGwgPiAubGF5b3V0Q29udGFpbmVyID4gLmNvbHVtbiA+IC5wYWdlRWwgPiAucGFnZUVsZW1lbnQgeyBtYXJnaW46MTVweDsgfVxuXG4jcGF5V2FsbCAubG9naW4gaDMgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYWxlcnQtZ29sZC5wbmdcIikgbm8tcmVwZWF0IDAgNXB4OyBwYWRkaW5nLWxlZnQ6IDM1cHg7IH1cblxuI3BheVdhbGwgLnN1YnNjcmliZSB7IGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggcmdiKDI1NSwyMDQsMCk7IG92ZXJmbG93OmhpZGRlbjsgfVxuXG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5wcmljaW5nIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5wcmljaW5nIC5wYWdlRWxlbWVudCB7IHBhZGRpbmc6IDEwcHggMDsgY29sb3I6IHJnYigxMDIsMTAyLDEwMik7IH1cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLnByaWNpbmcgcCB7IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDI0cHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBtYXJnaW46MDsgcGFkZGluZzowOyB3aWR0aDogMTAwJTsgfVxuI3BheVdhbGwgLnN1YnNjcmliZSAucHJpY2luZyAuY2hhbmdlIHsgZm9udC1zaXplOiAxNnB4OyAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuI3BheVdhbGwgLnN1YnNjcmliZSAucHJpY2luZyAubGVuZ3RoIHsgZm9udC1zaXplOiAxMnB4OyBmb250LXdlaWdodDogbm9ybWFsOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4jcGF5V2FsbCAuc3Vic2NyaWJlIC5wcmljaW5nIHAgYiB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9wYXl3YWxsLXByaWNpbmcucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyBkaXNwbGF5OiBibG9jazsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc2l6ZTogOXB4OyBtYXJnaW46IDhweCAwOyB3aWR0aDogMTAwJTsgfVxuXG4jcGF5V2FsbCAuYnV0dG9uLWxhcmdlIHsgZGlzcGxheTpibG9jazsgbWFyZ2luLXRvcDoyNXB4OyB9XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLmJ1dHRvbi1sYXJnZSB7XG4gIGJhY2tncm91bmQ6IHJnYigyNTUsMjIxLDU4KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiKDI1NSwyMjEsNTgpIDAlLCByZ2IoMjU1LDIwNCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2IoMjU1LDIyMSw1OCkpLCBjb2xvci1zdG9wKDEwMCUscmdiKDI1NSwyMDQsMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdhKDI1NSwyMjEsNTgpIDAlLHJnYigyNTUsMjA0LDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiKDI1NSwyMjEsNTgpIDAlLHJnYigyNTUsMjA0LDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigyNTUsMjIxLDU4KSAwJSxyZ2IoMjU1LDIwNCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIHJnYigyNTUsMjIxLDU4KSAwJSxyZ2IoMjU1LDIwNCwwKSAxMDAlKTtcbiAgY29sb3I6IHJnYigwLDAsMCk7XG4gIHRleHQtc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDI1NSwyNTUsMjU1LC43NSk7XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLmJ1dHRvbi1sYXJnZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYig2Myw2Myw2Myk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigxMDIsMTAyLDEwMikgMCUsIHJnYig2Myw2Myw2MykgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUscmdiKDEwMiwxMDIsMTAyKSksIGNvbG9yLXN0b3AoMTAwJSxyZ2IoNjMsNjMsNjMpKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigxMDIsMTAyLDEwMikgMCUscmdiKDYzLDYzLDYzKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigxMDIsMTAyLDEwMikgMCUscmdiKDYzLDYzLDYzKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2IoMTAyLDEwMiwxMDIpIDAlLHJnYig2Myw2Myw2MykgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2IoMTAyLDEwMiwxMDIpIDAlLHJnYig2Myw2Myw2MykgMTAwJSk7XG4gIGNvbG9yOiByZ2IoMjU1LDI1NSwyNTUpO1xuICB0ZXh0LXNoYWRvdzogMHB4IC0xcHggMHB4IHJnYigwLDAsMCk7XG59XG5cbiNwYXlXYWxsIC5zdWJzY3JpYmUgLmJ1dHRvbi1sYXJnZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2IoNzYsNzYsNzYpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2IoMzgsMzgsMzgpIDAlLCByZ2IoNzYsNzYsNzYpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLHJnYigzOCwzOCwzOCkpLCBjb2xvci1zdG9wKDEwMCUscmdiKDc2LDc2LDc2KSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2IoMzgsMzgsMzgpIDAlLHJnYig3Niw3Niw3NikgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2IoMzgsMzgsMzgpIDAlLHJnYig3Niw3Niw3NikgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiKDM4LDM4LDM4KSAwJSxyZ2IoNzYsNzYsNzYpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiKDM4LDM4LDM4KSAwJSxyZ2IoNzYsNzYsNzYpIDEwMCUpO1xuICBjb2xvcjogcmdiKDI1NSwyNTUsMjU1KTtcbiAgdGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCByZ2IoMCwwLDApO1xufVxuXG4vKi5zdWJOYXYgbGkucGF5d2FsbGVkIGE6YmVmb3JlLFxuLnJlbGF0ZWRTZWN0aW9ucyBsaS5wYXl3YWxsZWQgYTpiZWZvcmUsXG4jdG9wTmF2IGEucGF5d2FsbGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChcIi4uL2ltYWdlcy9SRVBMQUNFLmdpZlwiKTtcbiAgbWFyZ2luOiAtMXB4IDJweCAwIC0xMXB4O1xuICBmbG9hdDogbGVmdDtcbn0qL1xuXG4uY29sbGVjdG9yRWxlbWVudCBhLnBheXdhbGxlZCxcbi5uZXdzQWdncmVnYXRvckVsZW1lbnQgYS5wYXl3YWxsZWQge1xuXHQgJjpiZWZvcmV7XG5cdFx0IGNvbnRlbnQ6XCJcIjtcblx0XHQgZGlzcGxheTpibG9jaztcblx0XHQgZmxvYXQ6bGVmdDtcblx0XHQgd2lkdGg6NDBweDtcblx0XHQgaGVpZ2h0OjEuNWVtO1xuXHRcdCBtYXJnaW4tcmlnaHQ6LjM3NWVtO1xuXHRcdCBiYWNrZ3JvdW5kOnVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9wYXl3YWxsLWljb24uc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuXHRcdCBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcblx0XHQgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcblx0IH1cbn1cblxuI3BheVdhbGwgLnN1YnNjcmliZSBhIHtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSwyMDQsMCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigyNTUsMjIxLDU4KSAwJSwgcmdiKDI1NSwyMDQsMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUscmdiKDI1NSwyMjEsNTgpKSwgY29sb3Itc3RvcCgxMDAlLHJnYigyNTUsMjA0LDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigyNTUsMjIxLDU4KSAwJSxyZ2IoMjU1LDIwNCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYigyNTUsMjIxLDU4KSAwJSxyZ2IoMjU1LDIwNCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2IoMjU1LDIyMSw1OCkgMCUscmdiKDI1NSwyMDQsMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2IoMjU1LDIyMSw1OCkgMCUscmdiKDI1NSwyMDQsMCkgMTAwJSk7XG4gIGNvbG9yOiByZ2IoMCwwLDApO1xuICB0ZXh0LXNoYWRvdzogMHB4IDFweCAwcHggcmdiYSgyMjEsMjIxLDIyMSwuNSk7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZTsgLyogRmlyZWZveCA0ICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgLW8tdHJhbnNpdGlvbjogbm9uZTsgLyogT3BlcmEgKi9cbn1cblxuLyogTG9nZ2VkIEluIFZpZXcgKi9cblxuI3BheVdhbGwubG9nZ2VkLWluIC5zdWJzY3JpYmUgeyBtYXJnaW4tdG9wOiAwOyB9XG4jcGF5V2FsbC5sb2dnZWQtaW4gLnN1YnNjcmliZSBhIHsgbWFyZ2luLXRvcDogMjFweDsgfVxuI3BheVdhbGwubG9nZ2VkLWluIC5wcmljaW5nIHsgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjRkMwOyBtYXJnaW46IDAgMTVweCAxNXB4IDA7IH1cbiIsIi8vIEljb24gR3JhcGhpY3Ncbi8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvdGhlbWVfaW1hZ2VzL3dhdGVyd29ybGQvaW1nLnBuZ1wiKTtcbi5pY29ue1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nOiAwcHggMCAycHggMjBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2xpbmtfaWNvbnMucG5nXCIpO1xufVxuLnJzc0xpbmt7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA5ZVwiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4vL2FkbWluIG1vZGVcbi5ncm91cExpbmt7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMzQ4cHg7XG59XG4uZ29Ub0xpbmt7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4uZ29CYWNrTGlua3tcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG4gICAgQGluY2x1ZGUgbGluay1pY29uLWxlZnQ7XG4gIH1cbn1cbi8vIEhpZGRlbiBmb3IgdjQgdGhlbWVzXG4ubW9udGhWaWV3TGluayxcbi5pY29uRGF5Q2FsLFxuLmFscGhhTGluayxcbi5zaXRlTWFwTGluayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4vL2FkbWluIG1vZGUgPiByZWdpc3RhdGlvbiA+IHJlZ2lzdHJhdGlvbiBuYW1lXG4ubGlua0xpbmt7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtOTI4cHg7XG59XG4vL2FkbWluIG1vZGVcbi5kZWxldGVMaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTEwNDRweDtcbn1cbi8vYWRtaW4gbW9kZVxuLmVkaXRMaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTExNjBweDtcbn1cbi5wcmludExpbmt7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAyZlwiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4vL2FkbWluL2VkaXQgbW9kZVxuLmF0dGFjaGVkTGlua3tcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMzkycHg7XG59XG4ucmVsb2FkTGlua3tcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG4gICAgQGluY2x1ZGUgbGluay1pY29uLWxlZnQ7XG4gIH1cbn1cbi5pQ2FsTGlua3tcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDczXCI7XG4gICAgQGluY2x1ZGUgbGluay1pY29uLWxlZnQ7XG4gIH1cbn1cbi5leGNlbExpbmt7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjFjM1wiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4udGFnTGlua3tcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDJiXCI7XG4gICAgQGluY2x1ZGUgbGluay1pY29uLWxlZnQ7XG4gIH1cbn1cbi5lbWFpbExpbmt7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwM1wiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4vL25vdCBzdXJlIHdoZXJlIC5yZWFkIC5lbWFpbExpbmsgZXhpc3Rcbi5yZWFkIC5lbWFpbExpbmt7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjA4OHB4O1xufVxuLy9zZWVuIGluIGFkbWluIGNvbnRyb2wgcGFuZWxcbi5uZXdMaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTIyMDRweDtcbn1cbi8vYWRtaW4vZWRpdCBtb2RlXG4udHN0QWRtaW5MaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTIzMjBweDtcbn1cbi8vY2FuJ3QgZmluZCB3b3JraW5nIGV4YW1wbGVcbi5hZGRMaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTI0MzZweDtcbn1cbi8vYWRtaW4vZWRpdCBtb2RlXG4ubG9ja2VkQ2hlY2t7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjU1MnB4O1xufVxuLy9hZG1pbi9lZGl0IG1vZGVcbi5nZWFye1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTI2NjhweDtcbiAgZm9udC1zaXplOiBpbml0aWFsO1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8vY2FuJ3QgZmluZCB3b3JraW5nIGV4YW1wbGVcbi5waG90b3tcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yNzg0cHg7XG59XG4vL2FkbWluL2VkaXQgbW9kZVxuLmRpYnNMaW5re1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hcHBfaW1hZ2VzL2ljb24tZGlicy1zbWFsbC5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjoycHggY2VudGVyO1xufVxuLy9hZG1pbi9lZGl0IG1vZGVcbi5taXJyb3JMaW5re1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yOTAwcHg7XG59XG4vL2Nhbid0IGZpbmQgd29ya2luZyBleGFtcGxlXG4ubXlBY2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvcGVybWlzc2lvbnMuZ2lmXCIpO1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG4vL2Nhbid0IGZpbmQgd29ya2luZyBleGFtcGxlXG4ub3JkZXJMaW5re1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZHJhZ0ljb24uZ2lmXCIpIDNweCAzcHggbm8tcmVwZWF0O1xufVxuLy9hZG1pbi9lZGl0IG1vZGVcbi5mdWxsc2NyZWVuTGlua3tcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ljb25zL2Z1bGxzY3JlZW5JY29uLnBuZ1wiKSAwIDFweCBuby1yZXBlYXQ7XG59XG4vL2FkbWluL2VkaXQgbW9kZVxuLmNvbm5lY3Rpb25MaW5rIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzAxNXB4OyB9XG4vL2FkbWluL2VkaXQgbW9kZVxuLnNhdmVMaW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMTI4cHg7IH1cbi8vY2FuJ3QgZmluZCB3b3JraW5nIGV4YW1wbGVcbi5jaGVja0xpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMzNjNweDsgfVxuLmZiTGluayB7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA5YVwiO1xuICAgIEBpbmNsdWRlIGxpbmstaWNvbi1sZWZ0O1xuICB9XG59XG4udHdpdHRlckxpbmsge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDpub25lO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgICBAaW5jbHVkZSBsaW5rLWljb24tbGVmdDtcbiAgfVxufVxuLy9jYW4ndCBmaW5kIHdvcmtpbmcgZXhhbXBsZVxuLnBkZkxpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM2NzlweDsgfVxuLy9jYW4ndCBmaW5kIHdvcmtpbmcgZXhhbXBsZVxuLnRyYW5zZmVyTGluayB7IGJhY2tncm91bmQtcG9zaXRpb246MCAtMzc5NnB4OyB9XG4vLyBlbGVtZW50IHNwZWNpZmljIGxpbmtzXG4uc3BvbnNvckVsZW1lbnQgLmdvVG9MaW5rOmJlZm9yZSB7XG4gIHBhZGRpbmc6NXB4IDEwcHggNXB4IDBweDtcbiAgY29udGVudDogXCJcXGYwNjFcIjtcbn1cbi8vIFNvbWUgb2YgdGhlc2Ugc3R5bGVzIGFyZSBkdXBsaWNhdGVkIGZyb20gLnNuLXNvY2lhbC1tZWRpYS1pY29uXG4vLyBUaGlzIGlzIHNvIC5jb250YWN0RWxlbWVudCAuaWNvbiBpcyBzdHlsZWQgY29uc2lzdGVudGx5XG4uY29udGFjdEVsZW1lbnQgLmljb24sXG4uc24tc29jaWFsLW1lZGlhLWxpc3QgLnNuLXNvY2lhbC1tZWRpYS1pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IDEuMmVtO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgaGVpZ2h0OiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIG1hcmdpbjogLjFlbTtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDFlbTtcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogLjZlbTtcbiAgICBsaW5lLWhlaWdodDogMS42NmVtO1xuICAgIHdpZHRoOiAxLjY2ZW07XG4gICAgbGVmdDogMDtcbiAgfVxufVxuLmNvbnRhY3RFbGVtZW50IC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHlDb3B5Q29sb3JUaHJlZTtcbiAgZm9udC1zaXplOiAyN3B4O1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgfVxufVxuLy8gZGFyayBhbmQgbGlnaHQgbW9kZXMgb3ZlcnJpZGUgZGVmYXVsdCBob3ZlciBjb2xvclxuLnNuLXNvY2lhbC1tZWRpYS1saXN0IHtcbiAgJjpub3QoLmxpZ2h0KTpub3QoLmRhcmspIC5zbi1zb2NpYWwtbWVkaWEtaWNvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHlDb3B5Q29sb3JUaHJlZTtcbiAgfVxuICAmLmRhcmsge1xuICAgIC5pY29uLWVtYWlsLFxuICAgIC5pY29uLWxpbmsge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5Q29weUNvbG9yVGhyZWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vL2NvbGxlY3RvciBlbGVtZW50IGdlbmVyYWwgKGlzIGNhbWVyYSBpY29uKVxuLmNvbGxlY3RvckVsZW1lbnQge1xuICAudGl0bGV7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwMzBcIjtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zaXplOjEuMmVtO1xuICAgICAgbGVmdDotMjVweDtcbiAgICB9XG4gIH1cbn1cbi8vUGhvdG8gQ29sbGVjdG9yIFBhZ2UgPiAnVmlldyBTaXRlIE1hcCcgVGFiXG4uY29udGVudFRhYnMgKyAuY29sbGVjdG9yVHJlZS5zaXRlTWFwRWxlbWVudCB7XG4gIGFbaHJlZio9XCIvcGhvdG9fZ2FsbGVyeS9cIl0gKyBhW2hyZWYqPVwiL3Bob3RvX2dhbGxlcnkvXCJdOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMzBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgbGVmdDogLTI1cHg7XG4gIH1cbn1cbi8vZG9jdW1lbnQgc2lsb1xuYVtocmVmKj1cIi9kb2N1bWVudC9cIl0ge1xuICAmICsgLmluZm8ge1xuICAgIC50aXRsZSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTViXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIFBob3RvIEdhbGxlcnkgRWxlbWVudCAqL1xuLy8gMS4gUGFnZSBFbGVtZW50IFN0eWxlc1xuLy8gMi4gRnVsbCBTY3JlZW4gU3R5bGVzXG4vLyAzLiBNZWRpYSBHYWxsZXJ5IFN0eWxlc1xuLy8gNC4gQ29udHJvbHNcbi8vIDUuIFRvb2xiYXIsIFNob3BwaW5nIENhcnQgJiBTaGFyZVxuLy8gNi4gQnV0dG9uc1xuLy8gNy4gRWRpdCBNb2RlIEFkanVzdG1lbnRzXG4vLyA4LiBTbWFsbCBDb2x1bW4gJiBNb2JpbGUgQWRqdXN0bWVudHNcbi8vIDkuIFRoZW1lIE92ZXJyaWRlc1xuXG5cbi8vIDEuIFBhZ2UgRWxlbWVudCBTdHlsZXNcbi5nYWxsZXJ5RWxlbWVudHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnl7XG4gIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbiAgJi5mb3JtYXR0ZWQge1xuICAgIGZvbnQtc2l6ZTppbmhlcml0O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOjBweDtcbiAgICBsaW5lLWhlaWdodDoxMjAlO1xuICAgIHBhZGRpbmc6MHB4O1xuICAgIGJhY2tncm91bmQ6dXJsKC9nYWxsZXJ5X3NraW5zL3RuM2UvZ3JhZC5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGltZ3tcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLmltYWdlX3RpdGxle1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgIHBhZGRpbmc6MCA2JTtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgY3Vyc29yOmRlZmF1bHQ7XG4gICAgei1pbmRleDoxMDtcbiAgfVxuICAuY3JvcCB7XG4gICAgcGFkZGluZy10b3A6NzUlO1xuICAgIGhlaWdodDowO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuICAuc2xpZGUsXG4gIC5pbWFnZXtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgfVxuICAuc2xpZGV7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgfVxuICAub3ZlcmxheSxcbiAgLmxpbmt7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgfVxuICAub3ZlcmxheXtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTtcbiAgICB6LWluZGV4Ojc7XG4gIH1cbiAgLmxpbmt7XG4gICAgei1pbmRleDo4O1xuICB9XG59XG5cbi5nYWxsZXJ5RWxlbWVudF9saW5rIHtcbiAgYmFja2dyb3VuZDp1cmwoL2dhbGxlcnlfc2tpbnMvdG4zZS9ncmFkLnBuZykgNzAlIDgwJSBuby1yZXBlYXQ7XG4gIGF7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gIH1cbiAgJi5zaW5nbGVfcGhvdG97XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIGF7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZzozJTtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoL2dhbGxlcnlfc2tpbnMvdG4zZS9ncmFkLnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICB9XG4gICAgICBpbWd7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5nYWxsZXJ5X3RpdGxle1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgYm90dG9tOjMlO1xuICAgICAgbGVmdDowO1xuICAgICAgbWFyZ2luLWxlZnQ6MyU7XG4gICAgICB3aWR0aDo5NCU7XG4gICAgICBoZWlnaHQ6NDBweDtcbiAgICAgIHBhZGRpbmc6OHB4IDYlO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBjdXJzb3I6ZGVmYXVsdDtcbiAgICAgIHotaW5kZXg6MTA7XG4gICAgICBzcGFue1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgdHJ1bmNhdGUtdGV4dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5nYWxsZXJ5X2J1dHRvbntcbiAgICBwYWRkaW5nOjA7XG4gICAgYXtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIGhlaWdodDo2NXB4O1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoL2dhbGxlcnlfc2tpbnMvdG4zZS9ncmFkLnBuZykgbm8tcmVwZWF0IDcwJSA2MCU7XG4gICAgICB9XG4gICAgfVxuICAgIGltZ3tcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICB3aWR0aDo2NXB4O1xuICAgICAgaGVpZ2h0OjY1cHg7XG4gICAgICBjbGlwOnJlY3QoMCw2NXB4LDY1cHgsMCk7XG4gICAgfVxuICAgIC5nYWxsZXJ5X3RpdGxle1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC43KTtcbiAgICAgIHBhZGRpbmctbGVmdDo3MnB4O1xuICAgICAgc3BhbntcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgaGVpZ2h0OjY1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjY1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6OHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG4gICAgICAgIEBpbmNsdWRlIHRydW5jYXRlLXRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuaW1hZ2VfdGl0bGUsXG4uZ2FsbGVyeUVsZW1lbnRfbGluayAuZ2FsbGVyeV90aXRsZXtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNyk7XG4gIGZvbnQtc2l6ZTpyZW0oMTYpO1xuICBmb250LWZhbWlseTokZm9udE9uZTtcbiAgZm9udC13ZWlnaHQ6NjAwO1xuICBjb2xvcjojZmZmICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICB0ZXh0LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7XG4gIHNwYW57XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBwYWRkaW5nLXRvcDoxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OjEuMmVtO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG4gICAgQGluY2x1ZGUgdHJ1bmNhdGUtdGV4dDtcbiAgfVxufVxuLmdhbGxlcnlfaW5mbyxcbi5waG90b19nYWxsZXJ5X3ByZXZpZXcsXG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHBhZGRpbmc6MjBweCAwO1xuICBtYXJnaW4tYm90dG9tOjE1cHg7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgJjphZnRlcntcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBsZWZ0OjA7XG4gICAgYm90dG9tOjA7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6M3B4O1xuICAgIGxpbmUtaGVpZ2h0OjA7XG4gICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuKCNhYWEsIHRyYW5zcGFyZW50KTtcbiAgfVxuICBoMyxcbiAgaDEsXG4gIC50aXRsZXtcbiAgICBmb250LWZhbWlseTokZm9udE9uZTtcbiAgICBmb250LXNpemU6cmVtKDI0KTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgY29sb3I6JGxpbmstY29sb3I7XG4gICAgbGluZS1oZWlnaHQ6MS4yO1xuICAgIG1hcmdpbjowIDAgLjFlbSAwO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTpub25lO1xuICB9XG4gICYucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIGgxIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IC8vIENlbnRlciBoZWFkaW5nIGluIGVkaXQgbW9kZVxuICB9XG4gIHAsXG4gIC5kZXNjcmlwdGlvbntcbiAgICBmb250LWZhbWlseTokZm9udFR3bztcbiAgICBmb250LXNpemU6cmVtKDE2KTtcbiAgICBtYXJnaW46MCAwIC41ZW0gMDtcbiAgfVxufVxuLmVkaXRfbW9kZSAuZ2FsbGVyeUVsZW1lbnRfbGluay5nYWxsZXJ5X2J1dHRvbiBpbWd7XG4gIHRvcDoyNXB4O1xufVxuXG4vLyAyLiBGdWxsIFNjcmVlbiBTdHlsZXNcbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5Lm1heGltaXplZCB7XG4gIHBhZGRpbmc6MDtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDoxMDAlO1xuICB6LWluZGV4OjEwMDA7XG4gIC5jcm9we1xuICAgIHBhZGRpbmctdG9wOjA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgaGVpZ2h0OmF1dG87XG4gICAgdG9wOjUlO1xuICAgIGxlZnQ6NSU7XG4gICAgcmlnaHQ6NSU7XG4gICAgYm90dG9tOjEyMHB4O1xuICB9XG4gIC5pbWFnZV90aXRsZSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgYm90dG9tOjYwcHg7XG4gICAgbGVmdDo1JTtcbiAgICByaWdodDo1JTtcbiAgICBoZWlnaHQ6NjBweDtcbiAgICB3aWR0aDo5MCU7XG4gICAgc3BhbntcbiAgICAgIHBhZGRpbmctdG9wOjE4cHg7XG4gICAgfVxuICB9XG4gIC5uZXh0X2J0bntcbiAgICByaWdodDo1LjUlO1xuICAgIGJvdHRvbTo3MHB4O1xuICB9XG4gIC5wcmV2X2J0bntcbiAgICBsZWZ0OjUuNSU7XG4gICAgYm90dG9tOjcwcHg7XG4gIH1cbn1cblxuLy8gMy4gTWVkaWEgR2FsbGVyeSBTdHlsZXNcbiN0aGVNZWRpYUdhbGxlcnkuZ2FsbGVyeUVsZW1lbnRfbGluayAuZ2FsbGVyeV90aXRsZSwgI3RoZU1lZGlhR2FsbGVyeS5mb3JtYXR0ZWQgLmltYWdlX3RpdGxlLCAjdGhlTWVkaWFHYWxsZXJ5X2dhbGxlcnkgLnRuM2UtaW1hZ2UtdGl0bGV7XG4gIGZvbnQtc2l6ZTpyZW0oMTgpICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiRmb250T25lICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OjYwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbiN0aGVNZWRpYUdhbGxlcnlfZ2FsbGVyeSB7XG4gICYudG4zZS1nYWxsZXJ5e1xuICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcbiAgICAvL21pbi1oZWlnaHQ6NTgwcHg7XG4gIH1cbiAgLnRuM2UtdGV4dHtcbiAgICBoZWlnaHQ6NzBweDtcbiAgICBtaW4taGVpZ2h0OjcwcHg7XG4gIH1cbiAgLnRuM2UtaW1hZ2UtZGVzY3JpcHRpb257XG4gICAgZm9udC1zaXplOnJlbSgxNCkgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTokZm9udE9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OjQwMCAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLm1lZGlhR2FsbGVyeUhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC41ZW07XG4gIGgxIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gIH1cbiAgLmJ1dHRvbi1sYXJnZXtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbiN0YWJfc2xpZGVzaG93X2NvbnRlbnR7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG4jbWVkaWFHYWxsZXJ5VGh1bWJuYWlsc3tcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogMTVweDtcbn1cbiNzbGlkZXNob3dDb250YWluZXIgLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbntcbiAgcGFkZGluZzogMTVweDtcbn1cbiNtZWRpYUdhbGxlcnlVcGxvYWRlcntcbiAgaGVpZ2h0OiAyMTBweDtcbn1cbiNnYWxsZXJ5VGh1bWJCaW57XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnBob3RvR2FsbGVyeVRodW1ie1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDBweDtcbiAgbWFyZ2luOiA1cHg7XG59XG4ucGhvdG9HYWxsZXJ5VGh1bWJJbWFnZXtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2dhbGxlcnlUaHVtYkJpbiAucGhvdG9HYWxsZXJ5VGh1bWJJbWFnZXtcbiAgcGFkZGluZzogMTBweDtcbiAgaW1ne1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gIH1cbn1cbiNtZWRpYUdhbGxlcnktc29sb3tcbiAgcGFkZGluZzogMTVweCAwIDA7XG4gIC5wYWdlRWxlbWVudEFkbWlue1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmFzaWRle1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgaDF7XG4gICAgICBwYWRkaW5nOiAwIDAgMTVweDsgbGluZS1oZWlnaHQ6MS4yZW07XG4gICAgfVxuICAgIHB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgICB9XG4gIH1cbn1cbi50bjNlLWdhbGxlcnl7XG4gIC50bjNlLXRodW1ic3tcbiAgICBvdmVyZmxvdy15OnZpc2libGU7XG4gICAgb3ZlcmZsb3cteDphdXRvO1xuICB9XG59XG5cbi8vIDQuIENvbnRyb2xzXG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAuY29udHJvbHN7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB6LWluZGV4Ojk7XG4gIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7XG4gIHdpZHRoOjE1MHB4O1xuICBoZWlnaHQ6NDBweDtcbiAgbWFyZ2luOi0yMHB4IDAgMCAtNzVweDtcbiAgdG9wOjUwJTtcbiAgbGVmdDo1MCU7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBzcGFue1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOjUwcHg7XG4gICAgaGVpZ2h0OjQwcHg7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgICAmOmhvdmVye1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgJjphZnRlcntcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBjb2xvcjojZGRkO1xuICAgICAgbGluZS1oZWlnaHQ6NDBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc2l6ZTpyZW0oMjQpO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxuICAgICYucHBfYnRue1xuICAgICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDpcIlxcZjA0Y1wiXG4gICAgICB9XG4gICAgICAmLnBhdXNlZHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICBjb250ZW50OlwiXFxmMDRiXCJcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLnZnX2J0bntcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6XCJcXGYwM2VcIlxuICAgICAgfVxuICAgIH1cbiAgICAmLmZzX2J0bntcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6XCJcXGYwNjVcIlxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLnByZXZfYnRuLFxuLmdhbGxlcnlFbGVtZW50X2dhbGxlcnkgLm5leHRfYnRuLFxuLnRuM2UtbmV4dCxcbi50bjNlLXByZXZ7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6aW5pdGlhbCAhaW1wb3J0YW50O1xuICB3aWR0aDo0MHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDo0MHB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIHotaW5kZXg6MTE7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgJjpob3ZlcntcbiAgICAgb3BhY2l0eTogMTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBsaW5lLWhlaWdodDo0MHB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBjb2xvcjojZGRkO1xuICB9XG59XG4uZ2FsbGVyeUVsZW1lbnRfZ2FsbGVyeSAucHJldl9idG57XG4gIGJvdHRvbTowO1xuICBsZWZ0OjA7XG4gICY6YWZ0ZXJ7XG4gICAgZm9udC1zaXplOnJlbSgyMCk7XG4gICAgY29udGVudDpcIlxcZjA1M1wiO1xuICB9XG59XG4udG4zZS1wcmV2e1xuICBsZWZ0OjAgIWltcG9ydGFudDtcbiAgJjphZnRlcntcbiAgICBmb250LXNpemU6cmVtKDI0KTtcbiAgICBjb250ZW50OlwiXFxmMDUzXCI7XG4gIH1cbn1cbi5nYWxsZXJ5RWxlbWVudF9nYWxsZXJ5IC5uZXh0X2J0bntcbiAgYm90dG9tOjA7XG4gIHJpZ2h0OjA7XG4gICY6YWZ0ZXJ7XG4gICAgZm9udC1zaXplOnJlbSgyMCk7XG4gICAgY29udGVudDpcIlxcZjA1NFwiO1xuICB9XG59XG4udG4zZS1uZXh0e1xuICByaWdodDowICFpbXBvcnRhbnQ7XG4gICY6YWZ0ZXJ7XG4gICAgZm9udC1zaXplOnJlbSgyNCk7XG4gICAgY29udGVudDpcIlxcZjA1NFwiO1xuICB9XG59XG4udG4zZS1nYWxsZXJ5e1xuICAudG4zZS1jb250cm9sLWJhcntcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoxNjBweDtcbiAgICBoZWlnaHQ6NTBweDtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC43KTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAudG4zZS1mdWxsc2NyZWVuLFxuICAgIC50bjNlLXBsYXksXG4gICAgLnRuM2Utc2hvdy1hbGJ1bXN7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIHRvcDowO1xuICAgICAgbGVmdDowO1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDo1MHB4O1xuICAgICAgaGVpZ2h0OjUwcHg7XG4gICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgJjphZnRlcntcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIGNvbG9yOiNkZGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjUwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zaXplOnJlbSgyNCk7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAudG4zZS1mdWxsc2NyZWVue1xuICAgICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDpcIlxcZjA2NVwiXG4gICAgICB9XG4gICAgfVxuICAgIC50bjNlLXBsYXl7XG4gICAgICAmOmFmdGVye1xuICAgICAgICBjb250ZW50OlwiXFxmMDRiXCJcbiAgICAgIH1cbiAgICAgICYudG4zZS1wbGF5LWFjdGl2ZXtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICBjb250ZW50OlwiXFxmMDRjXCJcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudG4zZS1zaG93LWFsYnVtc3tcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6XCJcXGYwM2VcIlxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA1LiBUb29sYmFyLCBTaG9wcGluZyBDYXJ0ICYgU2hhcmVcbi5tZWRpYUdhbGxlcnktcGFnZUVsZW1lbnRUb29sYmFye1xuICBwYWRkaW5nOiAxMHB4O1xufVxuYm9keSAubWVkaWFHYWxsZXJ5LWRhcmsgLm1lZGlhR2FsbGVyeS1wYWdlRWxlbWVudFRvb2xiYXJ7XG4gIGF7XG4gICAgY29sb3I6ICNlNWU1ZTU7XG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICAmOmFjdGl2ZXtcbiAgICAgIGNvbG9yOiAjZTVlNWU1O1xuICAgIH1cbiAgfVxufVxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXMsIC5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZSwgLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS12aWV3QWxsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuI21lZGlhR2FsbGVyeS10b29sYmFye1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UxZTFlMTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIC5sYXlvdXRDb250YWluZXJ7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICB9XG4gIC50aHJlZUNvbHVtbjMzMzMzM3tcbiAgICAuY29sdW1uMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC50aHJlZUNvbHVtbjUwNTB7XG4gICAgLmNvbHVtbjIge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4jbWVkaWFHYWxsZXJ5LWNhcnRDb250cm9sc3tcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhLFxuICBidXR0b24sXG4gIGZvcm0sXG4gICNidXR0b24tbWVkaWFHYWxsZXJ5LWJ1eVBob3RvcyxcbiAgLmJ1dHRvbi1tZWRpYUdhbGxlcnktYnV5UGhvdG9ze1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuI21lZGlhR2FsbGVyeS1jYXJ0e1xuICBwYWRkaW5nOiAwOyBtYXJnaW46IDA7XG4gIC5oZWFkZXJ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaDF7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG4gIGZvcm17XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG4jbWVkaWFHYWxsZXJ5LWNhcnRJbm5lckNvbnRhaW5lcntcbiAgcGFkZGluZzogMTVweDsgbWFyZ2luOiAxNXB4IDAgMDtcbn1cbiNidXR0b24tbWVkaWFHYWxsZXJ5LWVtcHR5Q2FydHtcbiAgbWFyZ2luOiAwIDExcHg7XG59XG5cbiNtZWRpYUdhbGxlcnktY2FydEl0ZW1ze1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAxNXB4IDAgMDtcbn1cbi5tZWRpYUdhbGxlcnktY2FydEl0ZW17XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbiAgbWFyZ2luOiA1cHggMTBweCA1cHggMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBpbWd7XG4gICAgbWFyZ2luOiAwIDAgNXB4O1xuICB9XG4gIHNtYWxse1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG59XG4ucGFnZUVsZW1lbnQgLm1lZGlhR2FsbGVyeS1jYXJ0SXRlbSBwIHtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbjogMCAwIDVweDtcbn1cbiNtZWRpYUdhbGxlcnktc2hhcmVCeUVtYWlse1xuICAubGF5b3V0Q29udGFpbmVye1xuICAgIHBhZGRpbmc6IDVweCA1cHggMCAxNXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICAucGU1MHtcbiAgICAgIHBhZGRpbmc6IDAgMiUgMCAwO1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICB9XG4gICAgLnBlMTAwe1xuICAgICAgcGFkZGluZzogMCAxJSAwIDA7XG4gICAgICB3aWR0aDogOTglO1xuICAgIH1cbiAgfVxuICAuZm9vdGVye1xuICAgIC5sYXlvdXRDb250YWluZXJ7XG4gICAgICBwYWRkaW5nOiAwIDAgMTVweCAxNXB4O1xuICAgIH1cbiAgICAuY29sdW1uMntcbiAgICAgIHB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBsYWJlbHtcbiAgICBwYWRkaW5nOjVweCAwO1xuICAgIHNwYW57XG4gICAgICBjb2xvcjokYm9keUNvcHlDb2xvclR3bztcbiAgICAgIGZvbnQtc2l6ZTpyZW0oMTQpO1xuICAgIH1cbiAgfVxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmlucHV0LXRleHQsXG4gIC52YWxpZCxcbiAgLmhhc0Vycm9ye1xuICAgIHdpZHRoOjEwMCU7XG4gICAgbWF4LXdpZHRoOjQ4MHB4O1xuICAgIEBpbmNsdWRlIHRleHQtZmllbGQtc3R5bGU7XG4gIH1cbiAgLmhhc0Vycm9ye1xuICAgIGJhY2tncm91bmQ6ICNmZWU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M5OTtcbiAgfVxuICAjZW1haWxfbWVzc2FnZXtcbiAgICBtYXgtd2lkdGg6MTAwJTtcbiAgfVxufVxuI21lZGlhR2FsbGVyeS10YWJDb250ZW50cyAuZm9vdGVye1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4vLyA2LiBCdXR0b25zIChOb3Qgc3VyZSB3aGVyZSBtYW55IGFyZSB1c2VkKVxuXG4vKiBQbGF5L1BhdXNlIC0gZ2FsbGVyeSAqL1xuI2J1dHRvbi1tZWRpYUdhbGxlcnktcGxheVBhdXNlIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcitcIi9hcHBfaW1hZ2VzL2J1dHRvbnMvcGxheVBhdXNlLW1lZGl1bS1vcGVuLWJsdWVIb3Zlci5wbmdcIik7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBhdXNlZFwiXSAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjRweDtcbn1cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGF1c2VkXCJdOmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ4cHg7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl0gLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjRweCAwO1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcGxheVBhdXNlW2RhdGEtc3RhdGU9XCJwbGF5aW5nXCJdOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0cHggLTI0cHg7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBsYXlpbmdcIl06YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0cHggLTQ4cHg7XG59XG5cbi8qIFBsYXkvUGF1c2UgLSBwYWdlIGVsZW1lbnQgKi9cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZSAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9idXR0b25zL3BsYXlQYXVzZS1zbWFsbC1vcGVuLWJsdWVIb3Zlci5wbmdcIik7XG59XG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBhdXNlZFwiXTpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7XG59XG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wbGF5UGF1c2VbZGF0YS1zdGF0ZT1cInBhdXNlZFwiXTphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4O1xufVxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcGxheVBhdXNlW2RhdGEtc3RhdGU9XCJwbGF5aW5nXCJdIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggMDtcbn1cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXBsYXlQYXVzZVtkYXRhLXN0YXRlPVwicGxheWluZ1wiXTpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4O1xufVxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcGxheVBhdXNlW2RhdGEtc3RhdGU9XCJwbGF5aW5nXCJdOmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0zMnB4O1xufVxuXG4vKiBzbWFsbCAqL1xuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXMgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy9hcnJvd0xlZnQtc21hbGwtb3Blbi1ibHVlSG92ZXIucG5nXCIpO1xufVxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dCAuYnV0dG9uLWltYWdlLXJpZ2h0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy9hcnJvd1JpZ2h0LXNtYWxsLW9wZW4tYmx1ZUhvdmVyLnBuZ1wiKTtcbn1cbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXZpZXdBbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy92aWV3U2xpZGVzaG93LXNtYWxsLW9wZW4ucG5nXCIpO1xufVxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtcHJldmlvdXM6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dDpob3ZlciAuYnV0dG9uLWltYWdlLXJpZ2h0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtdmlld0FsbDpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7XG59XG4uYnV0dG9uLW1lZGlhR2FsbGVyeS1wZS1wcmV2aW91czphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLmJ1dHRvbi1tZWRpYUdhbGxlcnktcGUtbmV4dDphY3RpdmUgLmJ1dHRvbi1pbWFnZS1yaWdodCxcbi5idXR0b24tbWVkaWFHYWxsZXJ5LXBlLXZpZXdBbGw6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzJweDtcbn1cblxuLyogbWVkaXVtICovXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS12aWV3Q2FydHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1wcmV2aW91cyAuYnV0dG9uLWltYWdlLWxlZnR7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9idXR0b25zL2Fycm93TGVmdC1tZWRpdW0tb3Blbi1ibHVlSG92ZXIucG5nXCIpO1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktbmV4dCAuYnV0dG9uLWltYWdlLXJpZ2h0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy9hcnJvd1JpZ2h0LW1lZGl1bS1vcGVuLWJsdWVIb3Zlci5wbmdcIik7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZSB7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjpub25lO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6bm9uZTtcbiAgfVxuICAuYnV0dG9uLWltYWdlLWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmJ1dHRvbi1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6bm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6bm9uZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6MS4yZW07XG4gICAgICBsZWZ0OjBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDAzXCI7XG4gICAgfVxuICB9XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1hZGRUb0NhcnQgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy9jYXJ0LW1lZGl1bS1jaXJjbGUtZ3JlZW4ucG5nXCIpO1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktZW1wdHlDYXJ0IC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcitcIi9hcHBfaW1hZ2VzL2J1dHRvbnMvWC1tZWRpdW0tY2lyY2xlLXJlZC5wbmdcIik7XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1idXlQaG90b3Mtc2hlbGwgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvYnV0dG9ucy9hcnJvd1JpZ2h0LW1lZGl1bS1jaXJjbGUtZ3JlZW4ucG5nXCIpO1xufVxuI21lZGlhR2FsbGVyeS1zaGFyZUJ5RW1haWxGb3JtIC50YWItY2xvc2V7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjpub25lO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6bm9uZTtcbiAgfVxuICAuYnV0dG9uLWltYWdlLWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmJ1dHRvbi1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6bm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6bm9uZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6MS4yZW07XG4gICAgICBsZWZ0OjBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgfVxuICB9XG59XG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1yZXR1cm46aG92ZXIgLmJ1dHRvbi1pbWFnZSxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LXByZXZpb3VzOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LW5leHQ6aG92ZXIgLmJ1dHRvbi1pbWFnZS1yaWdodCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LXNoYXJlOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LWFkZFRvQ2FydDpob3ZlciAuYnV0dG9uLWltYWdlLWxlZnQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1lbXB0eUNhcnQ6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktYnV5UGhvdG9zLXNoZWxsOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdCxcbi50YWItY2xvc2U6aG92ZXIgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNHB4O1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuOmFjdGl2ZSAuYnV0dG9uLWltYWdlLFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcHJldmlvdXM6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LW5leHQ6YWN0aXZlIC5idXR0b24taW1hZ2UtcmlnaHQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1zaGFyZTphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuI2J1dHRvbi1tZWRpYUdhbGxlcnktYWRkVG9DYXJ0OmFjdGl2ZSAuYnV0dG9uLWltYWdlLWxlZnQsXG4jYnV0dG9uLW1lZGlhR2FsbGVyeS1lbXB0eUNhcnQ6YWN0aXZlIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LWJ1eVBob3Rvcy1zaGVsbDphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0LFxuLnRhYi1jbG9zZTphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00OHB4O1xufVxuXG4vKiBsYXJnZSAqL1xuI2J1dHRvbi1tZWRpYUdhbGxlcnktYWRkUGhvdG9zIC5idXR0b24taW1hZ2UtbGVmdCxcbiNidXR0b24tbWVkaWFHYWxsZXJ5LWRvbmVBZGRpbmcgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvcGhvdG9fZ2FsbGVyeS9hZGRfcGhvdG8ucG5nXCIpO1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgZGlzcGxheTpub25lO1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuOmhvdmVyIC5idXR0b24taW1hZ2UtbGVmdHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzJweDtcbn1cbiNidXR0b24tbWVkaWFHYWxsZXJ5LXJldHVybjphY3RpdmUgLmJ1dHRvbi1pbWFnZS1sZWZ0e1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02NHB4O1xufVxuI2J1dHRvbi1tZWRpYUdhbGxlcnktcmV0dXJuIHtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgYm9yZGVyOm5vbmU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGluaXRpYWw7XG4gIH1cbiAgLmJ1dHRvbi1pbWFnZS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5idXR0b24tY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICBib3JkZXI6bm9uZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6Ljg3NWVtO1xuICAgICAgbGVmdDo1cHg7XG4gICAgICBjb250ZW50OiBcIlxcZjA2MFwiO1xuICAgIH1cbiAgfVxufVxuXG4vLyA3LiBFZGl0IE1vZGUgQWRqdXN0bWVudHNcbi5lZGl0X21vZGUgLmdhbGxlcnlFbGVtZW50X2xpbmsge1xuICBiYWNrZ3JvdW5kOnVybCggJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvY21zVGFiRm9vdGVyLmdpZlwiKSByZXBlYXQteCBsZWZ0IGJvdHRvbSAjRkRFODcyICFpbXBvcnRhbnQ7XG59XG4uZ2FsbGVyeUVsZW1lbnQgLnJhcGlkQ29udGVudENvbnN0cnVjdGlvbntcbiAgcGFkZGluZzogMTVweDtcbiAgaW1ne1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gIH1cbiAgcHtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5waG90b19nYWxsZXJ5X3ByZXZpZXd7XG4gIGltZ3tcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYnV0dG9uLW1lZGl1bXtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbn1cbiNtZWRpYUdhbGxlcnktdGFicywgI21lZGlhR2FsbGVyeS1zdGF0dXN7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbiNtZWRpYUdhbGxlcnlVcGxvYWRlck5vdGVze1xuICBtYXJnaW46IDE1cHggMCAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gOC4gU21hbGwgQ29sdW1uICYgTW9iaWxlIEFkanVzdG1lbnRzXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC50bjNlLWltYWdle1xuICAgIC8qIGhlaWdodDoyODBweCAhaW1wb3J0YW50OyAqL1xuICB9XG4gICN0aGVNZWRpYUdhbGxlcnlfZ2FsbGVyeSAudG4zZS1nYWxsZXJ5e1xuICAgIGhlaWdodDo0MDBweCAhaW1wb3J0YW50O1xuICB9XG4gICNtZWRpYUdhbGxlcnktdGFicywgI21lZGlhR2FsbGVyeS1zdGF0dXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNDBweCAwIDIwcHggMDtcbiAgfVxufVxuXG4vLyA5LiB0aGVtZSBvdmVycmlkZXNcbi5nYWxsZXJ5RWxlbWVudCB7XG4gIGFbY2xhc3MqPVwiYnV0dG9uLVwiXSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4iLCIjbGJXcmFwcGVyLmdhbGxlcnlMaWdodGJveCB7XG4gIGRpc3BsYXk6bm9uZTtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIHRvcDo1JTtcbiAgbGVmdDo1JTtcbiAgcmlnaHQ6NSU7XG4gIGJvdHRvbTo1JTtcbiAgd2lkdGg6YXV0bztcbiAgaGVpZ2h0OmF1dG87XG59XG4uZ2FsbGVyeUxpZ2h0Ym94ICNsaWdodGJveEJvZHkge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB0b3A6MDtcbiAgYm90dG9tOjA7XG4gIHBhZGRpbmc6MDtcbiAgd2lkdGg6MTAwJTtcbiAgaGVpZ2h0OjEwMCU7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xufVxuLmdhbGxlcnlJdGVtV3JhcHBlciB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6MDtcbiAgYm90dG9tOjA7XG4gIGxlZnQ6MDtcbiAgcmlnaHQ6MDtcbiAgYmFja2dyb3VuZDojMDAwO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCByZ2JhKDUxLDUxLDUxLDEpIDAlLCByZ2JhKDAsMCwwLDEpIDEwMCUpO1xuICBwYWRkaW5nOjAgMzAwcHggMCAwO1xuICBib3gtc2hhZG93OjAgM3B4IDEwcHggcmdiYSgwLDAsMCwuNSk7XG4gIG1hcmdpbjphdXRvO1xufVxuLmdhbGxlcnlMaWdodGJveC5wb3J0cmFpdCAuZ2FsbGVyeUl0ZW1XcmFwcGVyIHtcbiAgcGFkZGluZzowO1xufVxuLmdhbGxlcnlJdGVtQ29udGVudCB7XG4gIHdpZHRoOjEwMHB4O1xuICBoZWlnaHQ6MTAwcHg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtQ29udGVudCB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB6LWluZGV4OjI7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG4gIHJpZ2h0OjMwMHB4O1xuICBib3R0b206MDtcbiAgbWFyZ2luOmF1dG87XG59XG4uZ2FsbGVyeUxpZ2h0Ym94LmZ1bGxzY3JlZW4gLmdhbGxlcnlJdGVtQ29udGVudCB7IHotaW5kZXg6NjsgfVxuLmdhbGxlcnlJdGVtQ29udGVudCAudmlkZW9fYXNwZWN0X3JhdGlvIHsgYmFja2dyb3VuZDpub25lOyB9XG4uZ2FsbGVyeUxpZ2h0Ym94LmZ1bGxzY3JlZW4gLmdhbGxlcnlJdGVtTmV4dCxcbi5nYWxsZXJ5TGlnaHRib3guZnVsbHNjcmVlbiAuZ2FsbGVyeUl0ZW1QcmV2IHsgZGlzcGxheTpub25lOyB9XG4uZ2FsbGVyeUl0ZW1Mb2FkZXIge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgd2lkdGg6MTAwcHg7XG4gIGhlaWdodDoxMDBweDtcbiAgbWFyZ2luOi01MHB4IDAgMCAtMjAwcHg7XG4gIHRvcDo1MCU7XG4gIGxlZnQ6NTAlO1xuICBiYWNrZ3JvdW5kOnVybCggJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9sb2FkZXIyLmdpZicgKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtTG9hZGVyIHtcbiAgbWFyZ2luLWxlZnQ6LTUwcHg7XG4gIHRvcDoyNSU7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0IC5nYWxsZXJ5SXRlbUNvbnRlbnQge1xuICBib3R0b206NTAlO1xuICByaWdodDowO1xufVxuLmdhbGxlcnlJdGVtQ29udGVudCAuZ2FsbGVyeUl0ZW0sXG4uZ2FsbGVyeUl0ZW1Db250ZW50IC5nYWxsZXJ5SXRlbS5waG90byBpbWcge1xuICBkaXNwbGF5OmJsb2NrO1xuICB3aWR0aDoxMDAlO1xuICBoZWlnaHQ6MTAwJTtcbn1cblxuLmdhbGxlcnlJdGVtU3VtbWFyeSB7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOmFsbCAzMDBtcztcbiAgdHJhbnNpdGlvbjphbGwgMzAwbXM7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6LTM4cHg7XG4gIGxlZnQ6MDtcbiAgcmlnaHQ6MDtcbiAgcGFkZGluZzo1cHg7XG4gIHotaW5kZXg6MztcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgbGluZS1oZWlnaHQ6MThweDtcbn1cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtU3VtbWFyeSB7XG4gIGNvbG9yOiNGRkY7XG4gIGJhY2tncm91bmQ6IzExMTtcbiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC43KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOmFsbCAzMDBtcztcbiAgdHJhbnNpdGlvbjphbGwgMzAwbXM7XG4gIHJpZ2h0OjMwMHB4O1xuICBvcGFjaXR5OjA7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0IC5nYWxsZXJ5SXRlbVN1bW1hcnkgeyByaWdodDowOyB9XG4uZ2FsbGVyeUl0ZW1XcmFwcGVyLmhvdmVyIC5nYWxsZXJ5SXRlbVN1bW1hcnkgeyBvcGFjaXR5OjE7IHRvcDowOyB9XG4uZ2FsbGVyeUl0ZW1XcmFwcGVyLmhvdmVyLmhvdmVyU2lkZWJhciAuZ2FsbGVyeUl0ZW1TdW1tYXJ5IHsgb3BhY2l0eTowOyB0b3A6LTM4cHg7IH1cblxuLmdhbGxlcnlJdGVtU3VtbWFyeSBoMyB7XG4gIGZsb2F0OmxlZnQ7XG4gIGZvbnQtc2l6ZToxNHB4O1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzo1cHg7XG59XG4uZ2FsbGVyeUl0ZW1XcmFwcGVyIC5nYWxsZXJ5SXRlbVN1bW1hcnkgaDMgYSB7IGNvbG9yOiNGRkY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuLmdhbGxlcnlJdGVtU3VtbWFyeSAuY291bnQge1xuICBmb250LXNpemU6MTBweDtcbiAgY29sb3I6Izk5OTtcbn1cbi5nYWxsZXJ5SXRlbUxpbmtzIHtcbiAgZmxvYXQ6cmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OjE4cHg7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgcGFkZGluZzo1cHg7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0IC5nYWxsZXJ5SXRlbUxpbmtzIHsgcGFkZGluZy1yaWdodDoyNXB4OyB9XG4uZ2FsbGVyeUl0ZW1MaW5rcyA+IGxpIHtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBkaXNwbGF5OmlubGluZTtcbiAgbWFyZ2luLWxlZnQ6MTBweDtcbn1cblxuLmdhbGxlcnlJdGVtU2hhcmVNZW51IHtcbiAgdGV4dC1hbGlnbjpsZWZ0O1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgei1pbmRleDo0O1xuICB0b3A6MDtcbiAgcmlnaHQ6MTBweDtcbiAgZGlzcGxheTpub25lO1xuICBiYWNrZ3JvdW5kOiNGRkY7XG4gIHBhZGRpbmc6NXB4IDEwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMzAwbXM7XG4gIC1tb3otdHJhbnNpdGlvbjphbGwgMzAwbXM7XG4gIHRyYW5zaXRpb246YWxsIDMwMG1zO1xufVxuLmdhbGxlcnlJdGVtV3JhcHBlciAuZ2FsbGVyeUl0ZW1TaGFyZU1lbnUge1xuICByaWdodDozMTBweDtcbiAgb3BhY2l0eTowO1xuICBiYWNrZ3JvdW5kOiMxMTE7XG4gIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyk7XG59XG4uZ2FsbGVyeUl0ZW1XcmFwcGVyLmhvdmVyIC5nYWxsZXJ5SXRlbVNoYXJlTWVudSB7IG9wYWNpdHk6MTsgdG9wOjM4cHg7IH1cbi5nYWxsZXJ5SXRlbVdyYXBwZXIuaG92ZXIuaG92ZXJTaWRlYmFyIC5nYWxsZXJ5SXRlbVNoYXJlTWVudSB7IG9wYWNpdHk6MDsgdG9wOjA7IH1cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtU2hhcmVNZW51IHsgcmlnaHQ6MTBweDsgfVxuLmdhbGxlcnlJdGVtU2hhcmVNZW51IGgzIHtcbiAgZGlzcGxheTpub25lO1xufVxuLmdhbGxlcnlJdGVtU2hhcmVNZW51IC5zaGFyZV9saW5rcyB7IGxpc3Qtc3R5bGU6bm9uZTsgfVxuLmdhbGxlcnlJdGVtU2hhcmVNZW51IC5zaGFyZV9saW5rcyBsaSB7IG1hcmdpbi1ib3R0b206NXB4OyB9XG4jbGJfZ2FsbGVyeVBob3RvSW1nIHtcbiAgZGlzcGxheTpibG9jaztcbiAgaGVpZ2h0OjEwMCU7XG4gIHdpZHRoOjEwMCU7XG59XG5cbi5nYWxsZXJ5SXRlbVNpZGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7XG4gIG92ZXJmbG93OmF1dG87XG4gIG92ZXJmbG93LXk6YXV0bztcbiAgb3ZlcmZsb3cteDpoaWRkZW47XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHJpZ2h0OjA7XG4gIHRvcDowO1xuICBoZWlnaHQ6MTAwJTtcbiAgd2lkdGg6MzAwcHg7XG4gIHotaW5kZXg6Mztcbn1cbi5nYWxsZXJ5TGlnaHRib3gucG9ydHJhaXQgLmdhbGxlcnlJdGVtU2lkZWJhciB7XG4gIHdpZHRoOjEwMCU7XG4gIHRvcDo1MCU7XG4gIGhlaWdodDo1MCU7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94IC5sYXlvdXRDb250YWluZXIgeyBtYXJnaW46MDsgcGFkZGluZzowIDAgMTVweCAxNXB4OyB9XG4uZ2FsbGVyeUxpZ2h0Ym94IC5sYXlvdXRDb250YWluZXIgLmNvbHVtbiB7IG1hcmdpbjowOyBwYWRkaW5nOjA7IH1cbi5nYWxsZXJ5TGlnaHRib3ggLmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnQgeyBtYXJnaW46MTVweCAxNXB4IDAgMDsgcGFkZGluZzowOyB9XG5cbi5lZGl0X21vZGUgLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1UZXh0IHtcbiAgbWFyZ2luOjAgMCAxNXB4IC0xNXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6MTVweCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjRkRFODcyIHVybCgvYXBwX2ltYWdlcy9jbXNUYWJGb290ZXIuZ2lmPzEyODUwNzc5NTQpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0REQTMwMTtcbn1cbi5nYWxsZXJ5SXRlbVRleHQgLmJ5bGluZSB7XG4gIGZvbnQtc2l6ZToxNHB4O1xuICBmb250LXdlaWdodDpub3JtYWw7XG59XG4uZ2FsbGVyeUl0ZW1UZXh0IC5ieWxpbmUgLm5hbWUge1xuICBmb250LXNpemU6MThweDtcbiAgZm9udC13ZWlnaHQ6Ym9sZDtcbn1cbi5nYWxsZXJ5SXRlbVRleHQgLm1ldGEge1xuICBjb2xvcjojOTk5O1xufVxuLmdhbGxlcnlJdGVtVGV4dCAuZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6MTRweDtcbiAgbGluZS1oZWlnaHQ6MjFweDtcbn1cbi5nYWxsZXJ5SXRlbVRleHQgdGV4dGFyZWEuZGVzY3JpcHRpb24ge1xuICB3aWR0aDo5NCU7XG4gIGhlaWdodDoxMjBweDtcbiAgYm9yZGVyOjFweCBzb2xpZCAjRERBMzAxO1xuICBwYWRkaW5nOjMlO1xuICBtYXJnaW46MCAtMXB4O1xufVxuLmdhbGxlcnlJdGVtU2lkZWJhciAuZm9ybUJ1dHRvbnMge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbWFyZ2luLXRvcDoxMHB4O1xufVxuLmdhbGxlcnlJdGVtU2lkZWJhciAuZm9ybUJ1dHRvbnMgLmJ1dHRvbi1tZWRpdW0geyBtaW4td2lkdGg6MzAlOyB9XG4uZ2FsbGVyeUl0ZW1TaWRlYmFyIC5mb3JtQnV0dG9ucyAuYnV0dG9uLW1lZGl1bTpkaXNhYmxlZCB7IGJvcmRlcjoxcHggc29saWQgI0REQTMwMTsgbWFyZ2luOi0xcHg7IH1cblxuLmdhbGxlcnlMaWdodGJveCAjbGlnaHRib3hDbG9zZSB7IGRpc3BsYXk6bm9uZTsgfVxuLmdhbGxlcnlJdGVtV3JhcHBlciAjbGlnaHRib3hDbG9zZSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHJpZ2h0OjA7XG4gIHdpZHRoOiAyMXB4O1xuICBoZWlnaHQ6IDIzcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMXB4IC0xMDQzcHg7XG4gIHotaW5kZXg6MztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgMCAwIDcwJTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjAgMCAwIDcwJTtcbiAgYm9yZGVyLXJhZGl1czowIDAgMCA3MCU7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94LnBvcnRyYWl0ICNsaWdodGJveENsb3NlIHsgYmFja2dyb3VuZC1jb2xvcjojMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpOyB9XG4uZ2FsbGVyeUxpZ2h0Ym94ICNsaWdodGJveENsb3NlOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuLmVkaXRfbW9kZSAuZ2FsbGVyeUxpZ2h0Ym94ICNsaWdodGJveENsb3NlIHsgYmFja2dyb3VuZC1jb2xvcjojRkRFODcyOyB9XG5cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtUHJldixcbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtTmV4dCB7IGRpc3BsYXk6bm9uZTsgfVxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1QcmV2LFxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1OZXh0IHtcbiAgZGlzcGxheTpibG9jaztcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHdpZHRoOiAyNSU7XG4gIGhlaWdodDogMjAlO1xuICB0b3A6IDQwJTtcbn1cbi5nYWxsZXJ5SXRlbU5leHQge1xuICByaWdodDogMDtcbn1cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtUHJldiBzcGFuLFxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1OZXh0IHNwYW4ge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjUwJTtcbiAgd2lkdGg6NDBweDtcbiAgaGVpZ2h0OjA7XG4gIHBhZGRpbmctdG9wOjQwcHg7XG4gIG1hcmdpbi10b3A6LTIwcHg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6NSU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czo1JTtcbiAgYm9yZGVyLXJhZGl1czo1JTtcbiAgYmFja2dyb3VuZC1pbWFnZTp1cmwoICRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvd2hpdGVfYXJyb3dzLnBuZycgKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjoxMHB4IDEwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgb3BhY2l0eTowO1xuICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDMwMG1zO1xuICAtbW96LXRyYW5zaXRpb246YWxsIDMwMG1zO1xuICB0cmFuc2l0aW9uOmFsbCAzMDBtcztcbn1cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtUHJldiBzcGFuIHtcbiAgbGVmdDoyMHB4O1xufVxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1OZXh0IHNwYW4ge1xuICByaWdodDoyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOi0zNHB4IDEwcHg7XG59XG4uZ2FsbGVyeUl0ZW1Db250ZW50OmhvdmVyIC5nYWxsZXJ5SXRlbVByZXYgc3Bhbixcbi5nYWxsZXJ5SXRlbUNvbnRlbnQ6aG92ZXIgLmdhbGxlcnlJdGVtTmV4dCBzcGFuIHtcbiAgb3BhY2l0eTouMztcbn1cbi5nYWxsZXJ5TGlnaHRib3ggLmdhbGxlcnlJdGVtUHJldjpob3ZlciBzcGFuLFxuLmdhbGxlcnlMaWdodGJveCAuZ2FsbGVyeUl0ZW1OZXh0OmhvdmVyIHNwYW4ge1xuICBvcGFjaXR5OjE7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzowIDAgMjBweCByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbiAgLW1vei1ib3gtc2hhZG93OjAgMCAyMHB4IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICBib3gtc2hhZG93OjAgMCAyMHB4IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xufVxuLmdhbGxlcnlJdGVtVGV4dCBmb3JtIC5wcm9jZXNzaW5nIHtcbiAgZGlzcGxheTpub25lO1xuICBoZWlnaHQ6NDBweDtcbiAgYmFja2dyb3VuZDp1cmwoJy9hcHBfaW1hZ2VzL2xvYWRlckJhci5naWYnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuXG5cbi8qLyBHQUxMRVJZIElURU0gU0hPVyAvKi9cblxuLmdhbGxlcnlJdGVtRWxlbWVudCB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsIHJnYmEoNTEsNTEsNTEsMSkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBvdmVyZmxvdzp2aXNpYmxlO1xufVxuLmxheW91dENvbnRhaW5lciAuZ2FsbGVyeUl0ZW1FbGVtZW50IHsgbWFyZ2luLXRvcDo1MHB4OyB9XG4uZ2FsbGVyeUl0ZW1FbGVtZW50IC5nYWxsZXJ5SXRlbS5waG90byBpbWcgeyBtYXgtd2lkdGg6MTAwJTsgbWF4LWhlaWdodDo1MDBweDsgZGlzcGxheTpibG9jazsgbWFyZ2luOmF1dG87IH1cbi5nYWxsZXJ5TGlnaHRib3ggLmNvbW1lbnRUaHJlYWRFbGVtZW50IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG4jbGlnaHRib3ggLmdhbGxlcnlMaWdodGJveCAuY29tbWVudFRocmVhZEVsZW1lbnQtY29udGFpbmVyID4gaDMge1xuICBwYWRkaW5nLWxlZnQ6MTBweDtcbiAgZm9udC1zaXplOjE0cHg7XG59XG4uZ2FsbGVyeUxpZ2h0Ym94IC5wYWdlRWxlbWVudEFkbWluIHsgbWFyZ2luOjAgMTVweCAxNXB4IDA7IH1cblxuLyovIEFETUlOIFRIVU1CUyAvKi9cblxuI2dhbGxlcnlMaXN0LFxuLmdhbGxlcnlJdGVtTGlzdCB7XG4gIHBhZGRpbmc6MiU7XG59XG4jbWVkaWFHYWxsZXJ5LWRlc2NyaXB0aW9uICsgI2dhbGxlcnlMaXN0LFxuI21lZGlhR2FsbGVyeS1kZXNjcmlwdGlvbiArIC5nYWxsZXJ5SXRlbUxpc3Qge1xuICBwYWRkaW5nLXRvcDowO1xufVxuLmdhbGxlcnlUaHVtYkFkbWluIHtcbiAgdmVydGljYWwtYWxpZ246dG9wO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHpvb206MTsgKmRpc3BsYXk6aW5saW5lO1xuICBtYXJnaW46MiUgLjklO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDoyNy41JTtcbn1cbi5nYWxsZXJ5VGh1bWJEYXRlIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW46IC0yJSA4JSAwO1xufVxuLmdhbGxlcnlUaHVtYkFkbWluIC5hY3Rpb25zIHtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgcGFkZGluZzoxMHB4IDAgNiU7XG59XG4uZ2FsbGVyeVRodW1iQWRtaW4gLmFjdGlvbnMgYTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgZmxvYXQ6bGVmdDtcbn1cbi5nYWxsZXJ5VGh1bWJBZG1pbiAuYWN0aW9ucyBhOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDpyaWdodDtcbn1cbi5nYWxsZXJ5VGh1bWJBZG1pbiAuZ2FsbGVyeVRodW1iLFxuLmdhbGxlcnlUaHVtYkFkbWluIC5nYWxsZXJ5SXRlbVRodW1iIHtcbiAgZGlzcGxheTpibG9jaztcbiAgbWFyZ2luOjA7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDYlIDglO1xufVxuXG4vKi8gVEhVTUJTIC8qL1xuXG4uZ2FsbGVyeVRodW1iLFxuLmdhbGxlcnlJdGVtVGh1bWIge1xuICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgem9vbToxOyAqZGlzcGxheTppbmxpbmU7XG4gIG1hcmdpbjoxLjglO1xuICB3aWR0aDoyOSU7XG4gIGJhY2tncm91bmQ6I0RERDtcbn1cbi5nYWxsZXJ5VGh1bWIge1xuXG59XG4uZ2FsbGVyeVRodW1iIGEsXG4uZ2FsbGVyeUl0ZW1UaHVtYiBhLFxuLmdhbGxlcnlUaHVtYiBhOmhvdmVyLFxuLmdhbGxlcnlJdGVtVGh1bWIgYTpob3ZlciB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDojRkZGO1xuICBwYWRkaW5nOjdweDtcbiAgY29sb3I6IzExMTtcbn1cbi5nYWxsZXJ5VGh1bWIgLmltYWdlLFxuLmdhbGxlcnlJdGVtVGh1bWIgLmltYWdlIHtcbiAgZGlzcGxheTpibG9jaztcbiAgaGVpZ2h0OjA7XG4gIHBhZGRpbmc6MzMlIDA7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6MDtcbiAgYmFja2dyb3VuZDojREREO1xufVxuLmdhbGxlcnlUaHVtYiBpbWcsXG4uZ2FsbGVyeUl0ZW1UaHVtYiBpbWcge1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICBtYXJnaW46LTQwJSAwIC0zOCU7XG4gIHdpZHRoOjEwMCU7XG59XG4uZ2FsbGVyeUl0ZW1UaHVtYiB7XG4gICYgKyBkaXYge1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICB9XG59XG5cbi8qLyBHQUxMRVJZIFRIVU1CUyBPTkxZIC8qL1xuXG4uZ2FsbGVyeVRodW1iIGEge1xuICBtYXJnaW46LTFweCAtMnB4IDFweDtcbn1cbi5nYWxsZXJ5VGh1bWIgLm5hbWUge1xuICBwYWRkaW5nOjAgNXB4O1xuICBtYXJnaW4tdG9wOjEwcHg7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGZvbnQtd2VpZ2h0OmJvbGQ7XG59XG4uZ2FsbGVyeVRodW1iIC5kYXRlIHtcbiAgcGFkZGluZzowIDVweDtcbiAgZGlzcGxheTpibG9jaztcbiAgY29sb3I6Izk5OTtcbn1cbi5nYWxsZXJ5VGh1bWIgLmNvdW50IHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIGJvdHRvbTo3cHg7XG4gIHJpZ2h0OjdweDtcbiAgY29sb3I6Izk5OTtcbn1cblxuLyovIEdBTExFUlkgSVRFTVMgVEhVTUJTIE9OTFkgLyovXG5cbi5nYWxsZXJ5SXRlbVRodW1iIHtcbiAgd2lkdGg6MjIuNSU7XG4gIG1hcmdpbjouOSU7XG59XG5cbi5nYWxsZXJ5SXRlbUxpc3QgLmdhbGxlcnlUaHVtYkFkbWluIHtcbiAgd2lkdGg6MTklO1xufVxuXG4vKi8gU0lERSBCQVIgLyovXG5cbiNnYWxsZXJ5U2lkZWJhciB7XG4gIGxpbmUtaGVpZ2h0OjE0MCU7XG4gIGJhY2tncm91bmQ6I0VFRTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjVweDtcbiAgYm9yZGVyLXJhZGl1czo1cHg7XG59XG5cbiNnYWxsZXJ5U2lkZWJhciAuc3VtbWFyeSB7XG4gIHBhZGRpbmc6MTVweDtcbiAgYmFja2dyb3VuZDojREREO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6NXB4IDVweCAwIDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czo1cHggNXB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czo1cHggNXB4IDAgMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgLTEwcHggMTBweCAtMTBweCByZ2JhKDAsMCwwLC4yKTtcbiAgLW1vei1ib3gtc2hhZG93Omluc2V0IDAgLTEwcHggMTBweCAtMTBweCByZ2JhKDAsMCwwLC4yKTtcbiAgYm94LXNoYWRvdzppbnNldCAwIC0xMHB4IDEwcHggLTEwcHggcmdiYSgwLDAsMCwuMik7XG59XG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgLmJ1dHRvbi1tZWRpdW0geyBkaXNwbGF5OmJsb2NrOyB9XG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgdWwge1xuICBkaXNwbGF5OnRhYmxlO1xuICB3aWR0aDoxMDAlO1xuICBtYXJnaW46MTVweCAwIC0xNHB4O1xufVxuI2dhbGxlcnlTaWRlYmFyIC5zdW1tYXJ5IGxpIHtcbiAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICBsaXN0LXN0eWxlOm5vbmU7XG4gIGJvcmRlci1sZWZ0OjFweCBzb2xpZCAjRUVFO1xuICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmc6MCAxMHB4IDEwcHg7XG59XG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgbGk6Zmlyc3QtY2hpbGQgeyBib3JkZXItbGVmdDpub25lOyB9XG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgbGk6bGFzdC1jaGlsZCB7IGJvcmRlci1yaWdodDpub25lOyB9XG4jZ2FsbGVyeVNpZGViYXIgLnN1bW1hcnkgbGkgbGFiZWwge1xuICBkaXNwbGF5OmJsb2NrO1xuICBjb2xvcjojOTk5O1xuICBmb250LXNpemU6IC43NWVtO1xufVxuI2dhbGxlcnlTaWRlYmFyIC5zdW1tYXJ5IGxpIHNwYW4ge1xuICBjb2xvcjojMzMzO1xuICBmb250LXNpemU6MThweDtcbn1cblxuI2dhbGxlcnlTaWRlYmFyIGgzIHtcbiAgbWFyZ2luOjI1cHggMTVweCAxNXB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgeyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRkZGOyB9XG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgbGkge1xuICBmb250LXdlaWdodDpib2xkO1xuICBmb250LXNpemU6MTJweDtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBwYWRkaW5nOjEwcHggMTBweCAxMHB4IDQwcHg7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNEREQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6dXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvaWNvbnMvbWV0YURhdGFJY29ucy5wbmcnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xufVxuI2dhbGxlcnlTaWRlYmFyIC5tZXRhIGxpLmRhdGUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwcHggNnB4OyB9XG4jZ2FsbGVyeVNpZGViYXIgLm1ldGEgbGkudXNlciB7IGJhY2tncm91bmQtcG9zaXRpb246MTBweCAtOTRweDsgfVxuI2dhbGxlcnlTaWRlYmFyIC5tZXRhIGxpLmxvY2F0aW9uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjoxMHB4IC0xOTRweDsgfVxuI2dhbGxlcnlTaWRlYmFyIC5tZXRhIGxpLmZpbGVfc2l6ZSB7IGJhY2tncm91bmQtcG9zaXRpb246MTBweCAtMjk0cHg7IH1cbiNnYWxsZXJ5U2lkZWJhciAubWV0YSBsaS5nYWxsZXJ5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjoxMHB4IC0zOTRweDsgfVxuXG4jZ2FsbGVyeVNpZGViYXIgLnNoYXJlX2xpbmtzIHtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBtYXJnaW46MTBweCAxNXB4IDE1cHg7XG4gIHBhZGRpbmc6MCAwIDVweDtcbn1cbiNnYWxsZXJ5U2lkZWJhciAuc2hhcmVfbGlua3MgbGkge1xuICBmb250LXNpemU6MTFweDtcbiAgbWFyZ2luOjEwcHggNXB4O1xufVxuI2dhbGxlcnlTaWRlYmFyIC5zaGFyZV9saW5rcyBhIHtcbiAgbGluZS1oZWlnaHQ6MTIwJTtcbiAgZGlzcGxheTpibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIHBhZGRpbmc6MnB4IDVweCAycHggMjVweDtcbn1cblxuI2xpZ2h0Ym94ICNnYWxsZXJ5U2lkZWJhciAuZmJfZWRnZV9jb21tZW50X3dpZGdldC5mYl9pZnJhbWVfd2lkZ2V0IHtcbiAgbGVmdDphdXRvICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OjA7XG59XG5ib2R5IC50bjNlLWdhbGxlcnkge1xuICBiYWNrZ3JvdW5kOm5vbmUgIWltcG9ydGFudDtcbiAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xufVxuLnRuM2UtcHJldiwudG4zZS1uZXh0IHtcbiAgYm90dG9tOjUwJTtcbn1cbi50bjNlLXRleHQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDUlO1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1pbi1oZWlnaHQ6NjBweDtcbiAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgbGVmdDowICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG5ib2R5IC50bjNlLXRodW1icyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLnRuM2UtdGh1bWIge1xuICAmPiBkaXYge1xuICAgIG1hcmdpbjoycHggMCAwIDJweDtcbiAgfVxuICBpbWcge1xuICAgIGJvcmRlcjogJGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvcjtcbiAgfVxufVxuIiwiLnVubGltaXRlZEhpZXJhcmNoeXtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5TGluZXMuZ2lmXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDk1JTtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBsaXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5QXR0YWNoLmdpZlwiKSBuby1yZXBlYXQgMCAxMnB4OyAgICBcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBsaSBsaXtcbiAgICBtYXJnaW4tbGVmdDogNjVweDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBsaS5zZWxlY3RlZCA+IGRpdiBoMyBhe1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkNDRDIyO1xuICBiYWNrZ3JvdW5kOiAjRkVFQzhGO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLm5vZGVUaXRsZXtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udW5saW1pdGVkSGllcmFyY2h5IC5zdWJ0bGUgLm5vZGVUaXRsZXtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzY2Njtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSAuc3VidGxlIC5ub2RlVGl0bGU6aG92ZXJ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cblxuLnVubGltaXRlZEhpZXJhcmNoeSAucGVybWlzc2lvbnMgc3BhbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLnBlcm1pc3Npb25zIHNwYW4gLmVuYWJsZWR7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBsaSBkaXZ7XG4gICAgYmFja2dyb3VuZDogI0NDQztcbiAgICBwYWRkaW5nOiA1cHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgLm5vZGVBc3NldHtcbiAgICBwYWRkaW5nOiAwIDVweCA0cHggMTBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeSBzcGFue1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLmxhc3RMaXtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5QXR0YWNoTGFzdC5naWZcIikgbm8tcmVwZWF0IDAgMTJweDtcbn1cblxuLmNtc0FjY2VzcyAucHJpdmF0ZXtcbiAgICBjb2xvcjogI0NDMDAwMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kaXNhYmxlZFByaXZhdGVQdWJsaWNJY29uLnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgLTExNnB4O1xufVxuXG4uY21zQWNjZXNzIC5kaXNhYmxlZHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kaXNhYmxlZFByaXZhdGVQdWJsaWNJY29uLnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgMDtcbn1cblxuLmNtc0FjY2VzcyAucHVibGlje1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2Rpc2FibGVkUHJpdmF0ZVB1YmxpY0ljb24ucG5nXCIpIG5vLXJlcGVhdCByaWdodCAtMjMycHg7XG59XG5cbi51bmxpbWl0ZWRIaWVyYXJjaHkgLmRpc2FibGVkLCAudW5saW1pdGVkSGllcmFyY2h5IC5kaXNhYmxlZCBhe1xuICAgIGNvbG9yOiAjNzc3O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNtc0FjY2VzcyAucGVybWlzc2lvbnMgLmRpc2FibGVke1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnBlcm1pc3Npb25zSGVhZGVye1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW46IDEwcHggMCA1cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogQ29sbGVjdG9yIFRyZWUgKi9cblxuLmNvbGxlY3RvclRyZWUge1xuICAgIGltZ3tcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICAuaXRlbSB7XG4gICAgICAgIC5pbmZve1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoNHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuXG4gICAgbGkgaDQgYXtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG59XG5cblxuLyogb24gd2hpdGUgKi9cblxuLnVubGltaXRlZEhpZXJhcmNoeVdoaXRle1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9oaWVyYXJjaHlMaW5lc1doaXRlLmdpZlwiKTtcbn1cblxuLnVubGltaXRlZEhpZXJhcmNoeVdoaXRlIGxpIGRpdntcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xufVxuXG5cbi51bmxpbWl0ZWRIaWVyYXJjaHlXaGl0ZSAubGFzdExpe1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9oaWVyYXJjaHlBdHRhY2hMYXN0V2hpdGUuZ2lmXCIpO1xufVxuXG4vKiBDTVMgdHdlYWtzICovXG5cbi5yYXBpZENvbnRlbnRHZW5lcmFsIC5lZGl0UGVybWlzc2lvbnMgbGkgZGl2e1xuICAgIGJhY2tncm91bmQ6ICNmZWY3ZDA7XG59XG5cbi5yYXBpZENvbnRlbnRHZW5lcmFsIC5lZGl0UGVybWlzc2lvbnMgLnVubGltaXRlZEhpZXJhcmNoeXtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5TGluZXNDTVMuZ2lmXCIpO1xufVxuXG4ucmFwaWRDb250ZW50R2VuZXJhbCAuZWRpdFBlcm1pc3Npb25zIC51bmxpbWl0ZWRIaWVyYXJjaHkgbGl7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaENNUy5naWZcIik7ICBcbn1cblxuLnJhcGlkQ29udGVudEdlbmVyYWwgLmVkaXRQZXJtaXNzaW9ucyAudW5saW1pdGVkSGllcmFyY2h5IC5sYXN0TGl7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaExhc3RDTVMuZ2lmXCIpO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0ZDQ0QyMjtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgaGVpZ2h0OiAzMDBweDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbn1cblxuI2xpZ2h0Ym94IC5ub2RlUGlja2VyU2xpZGVCb3ggaDN7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuI2xpZ2h0Ym94IC51bmxpbWl0ZWRIaWVyYXJjaHkgbGkgZGl2e1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmZWY3ZDA7XG59XG5cblxuI2xpZ2h0Ym94IC51bmxpbWl0ZWRIaWVyYXJjaHl7XG4gICAgYmFja2dyb3VuZDogI2ZlZjdkMCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5TGluZXNDTVMuZ2lmXCIpO1xufVxuXG5cbiNsaWdodGJveCAudW5saW1pdGVkSGllcmFyY2h5IC5sYXN0TGl7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2hpZXJhcmNoeUF0dGFjaExhc3RDTVMuZ2lmXCIpO1xufVxuXG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCAudW5saW1pdGVkSGllcmFyY2h5IGxpIGRpdntcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xufVxuXG5cbiNsaWdodGJveCAubm9kZVBpY2tlclNsaWRlQm94IC51bmxpbWl0ZWRIaWVyYXJjaHl7XG4gICAgYmFja2dyb3VuZDogI0ZGRiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvaGllcmFyY2h5TGluZXNXaGl0ZS5naWZcIik7XG59XG5cblxuI2xpZ2h0Ym94IC5ub2RlUGlja2VyU2xpZGVCb3ggLnVubGltaXRlZEhpZXJhcmNoeSAubGFzdExpe1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9oaWVyYXJjaHlBdHRhY2hMYXN0V2hpdGUuZ2lmXCIpO1xufVxuXG4ucGVybWlzc2lvbnNIZWxwe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvcGVybWlzc2lvbnNIZWxwLnBuZ1wiKTtcbiAgICB0ZXh0LWluZGVudDogNDNweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4iLCIvKiBDb250ZW50IFRhYmJlZCBOYXZpZ2F0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY29udGVudFRhYnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGluay1jb2xvciAhaW1wb3J0YW50O1xuXG4gICY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBjb250ZW50LXRhYi1pdGVtO1xuXG4gICAgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGxlZnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRlbnQtdGFiO1xuXG4gICAgICAgIHNwYW4geyBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHt9XG5cbiAgICAmLnNlbGVjdGVkIHsgXG5cbiAgICAgIHNwYW4gYSB7XG4gICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAkbGluay1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkbGluay1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggJGxpbmstY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICAgICAgZm9udDogYm9sZCAxM3B4LzEuNSAkZm9udE9uZTtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgJi5yYXBpZFRhYnNDb25zdHJ1Y3Rpb24gYS50YWJMaW5rIHtcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5yb3N0ZXJQbGF5ZXJTdGF0RWxlbWVudCAuY29udGVudFRhYnMgeyBtYXJnaW46IDA7IH1cblxuLmRhdGFUYWJsZSAuZGlzYWJsZWQge1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxufVxuXG5cbi8qIExvYWRpbmcgVGFiIEFuaW1hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNjb250ZW50VGFic0xvYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDI1cHg7XG59XG5cblxuLyogUmFwaWQgVGFicyBDb25zdHJ1Y3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucmFwaWRUYWJzQ29uc3RydWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI0ZEREQ0MDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNEREEzMDE7XG4gIHBhZGRpbmc6IDAgMCAxcHg7XG5cbiAgbGkge1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4ICNEREEzMDE7XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgIGEgeyBmb250LXNpemU6IDE0cHg7IH1cblxuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VsZWN0ZWQgeyBiYWNrZ3JvdW5kOiAjRkRFODcyOyB9XG59XG4iLCIuc24tc2l0ZS1sb2dve1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiLyogIFNoYXJlZCBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbW9udGhWaWV3Q2FsZW5kYXIsXG4jbW9udGhfbGlzdCxcbiNkYXlWaWV3Q2FsZW5kYXIsXG4jZXZlbnRfc2hvdyB7XG4gIC52ZXZlbnQge1xuICAgIC5ub0VudHJ5IHtcbiAgICAgIG1hcmdpbi10b3A6IGluaXRpYWw7XG4gICAgICBmb250LXNpemU6IC43NWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICBib3JkZXItdG9wOiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4jbW9udGhWaWV3Q2FsZW5kYXIgLmNhcHRpb24sXG4jbW9udGhfbmF2aWdhdGlvbiBoMixcbiNkYXlWaWV3Q2FsZW5kYXIgaDIge1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzMzMztcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7IGZvbnQtc2l6ZTogMjhweDsgfVxuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMS41cmVtLzEgRm9udEF3ZXNvbWU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXGYwNjBcIjsgLy8gZmEtYXJyb3ctbGVmdFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxdnc7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7IC8vIGZhLWFycm93LXJpZ2h0XG4gICAgICBtYXJnaW4tbGVmdDogMXZ3O1xuICAgIH1cbiAgfVxufVxuXG4jbW9udGhfbmF2aWdhdGlvbiBoMixcbiNkYXlWaWV3Q2FsZW5kYXIgaDIge1xuICBAaW5jbHVkZSBsaW5lLXBhdHRlcm4tYm9yZGVyKCRwb3M6Ym90dG9tKTtcbn1cblxuLyogIE1vbnRoIFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbW9udGhWaWV3Q2FsZW5kYXIge1xuICB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgfVxuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggI2ZmZjtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgJjpmaXJzdC1sZXR0ZXIgeyBmb250LXNpemU6IGluaXRpYWw7IH1cbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ib2R5LWJhY2tncm91bmQ7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICB1bCxcbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC52ZXZlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAuc3VtbWFyeSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIG1hcmdpbi1ib3R0b206IC4yNWVtO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uLFxuICAudHlwZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAudGFncyB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4gIC50b2RheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICRsaW5rLWNvbG9yO1xuICB9XG5cbiAgLmRhdGVMaW5rIHsgZGlzcGxheTogYmxvY2s7IH1cblxuICAuZGF0ZUxpbmssXG4gIC5vdGhlck1vbnRoIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAub3RoZXJNb250aCB7IGNvbG9yOiAjZGRkOyB9XG59XG5cblxuLyogIERheSBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2RheVZpZXdDYWxlbmRhckV2ZW50cyB7XG4gIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IC5zdW1tYXJ5LFxuICAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCAuZGV0YWlscyB7IHBhZGRpbmctbGVmdDogMDsgfVxufVxuXG4jZGF5Vmlld0NhbGVuZGFyRXZlbnRzLFxuI21vbnRoX2xpc3Qge1xuICAvLyBtYWtlIHRoaXMgbG9vayBsaWtlIGEgYm94c2NvcmUgKG5vcm1hbGx5IHdyYXBwZWQgaW4gLmJveHNjb3JlLWNvbnRhaW5lcilcbiAgLmJveHNjb3JlIHsgQGV4dGVuZCAlYm94c2NvcmUtdGFibGU7IH1cbn1cblxuXG4vKiAgTW9udGggTGlzdCBWaWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI21vbnRoX2xpc3QsXG4jZXZlbnRfc2hvdyB7XG5cbiAgLnZldmVudCB7XG4gICAgLmxvY2F0aW9uIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5zaG93TW9yZUV2ZW50cyB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWJvZHktYmFja2dyb3VuZDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICBwYWRkaW5nOiA1cHggNXB4IDVweCA0MHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLyogIEV2ZW50IFNob3dcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiNldmVudF9zaG93IHtcblxuICArIC5ldmVudFRhZ3MgeyBtYXJnaW4tdG9wOiAtJGJhc2UtcGFkZGluZzsgfVxuXG4gIH4gLmV2ZW50VGFncyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmctbGVmdDogOTVweDtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzYwcHgpIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIH1cblxuICB+IC5ldmVudENvbnRlbnROb2RlIHtcbiAgICBAaW5jbHVkZSBsaW5lLXBhdHRlcm4tYm9yZGVyO1xuXG4gICAgfiAuZXZlbnRUYWdzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiAgRGliIEl0ZW1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZGliSXRlbSB7XG4gIC5sb2NhdGlvbixcbiAgLnRhZ3MsXG4gIC50eXBlIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbiAgLnRpbWUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC52ZXZlbnQgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuXG4vKiAgaUNhbCBFdmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaWNhbF9pY29uIHtcbiAgZmxvYXQ6cmlnaHQ7XG4gIG1hcmdpbjogMC41ZW0gMCAwIDAuM2VtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTRweDtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgI21vbnRoVmlld0NhbGVuZGFyICYge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgLjNlbSAwIDA7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIH1cbiAgfVxufVxuLmljc19maWxlX2Rvd25sb2FkLFxuLmFnZ3JlZ2F0b3JFbGVtZW50IGEgLmljc19maWxlX2Rvd25sb2FkIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG59XG5cblxuLyogIFNob3cgTW9yZSBMaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNob3dNb3JlRXZlbnRzIHNtYWxsIHsgZmxvYXQ6IHJpZ2h0OyB9XG4iLCIvKiBEaWIgQWdncmVnYXRvciAqL1xuXG4uYWdncmVnYXRvckVsZW1lbnQuZGliQWdncmVnYXRvckVsZW1lbnQgLnZldmVudCB7XG4gIC5kYXRlSW1hZ2UsXG4gIC5kYXRlSW1hZ2UgaW1nIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4uZGliQWdncmVnYXRvckVsZW1lbnQge1xuICAudmV2ZW50IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI2RkZDtcbiAgICBwYWRkaW5nOiAyNnB4IDBweDtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5kYXRlSW1hZ2Uge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICAuc3VtbWFyeSxcbiAgLmRldGFpbHMge1xuICAgIHBhZGRpbmctbGVmdDogODVweDtcbiAgfVxuXG4gIC5kZXRhaWxzIGxpIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4gIC5kYXRlIHsgZGlzcGxheTogaW5saW5lOyB9XG5cbiAgLnRpbWUge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd287XG4gIH1cblxuICAuY3JlZGl0cyB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuXG4gICAgc3BhbiB7IGZvbnQtc2l6ZTogOXB4OyB9XG4gIH1cbn1cblxuLyogRGliIFNlc3Npb24gKi9cblxuLmRpYlNlc3Npb24ge1xuICBwYWRkaW5nOiAxZW07XG4gIGJhY2tncm91bmQ6ICNFRkVGRUY7XG4gIG1hcmdpbjogLjVlbSAwIDFlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXBwX2ltYWdlcy9pY29uLWRpYnMtaGVyby1saWdodC5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICBoMyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICBtYXJnaW46IDAgMCAwIDIuNXJlbTtcbiAgfVxuXG4gID4gdWwge1xuICAgIG1hcmdpbjogMCAwIDAgMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5jcmVkaXRTdGF0dXMge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgY29sb3I6ICM2NjY7XG5cbiAgICBzdHJvbmcgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHsgY2xlYXI6IGJvdGg7IH1cblxuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcblxuICAgIHAgeyBtYXJnaW46IDA7IH1cbiAgfVxufVxuXG4jdGFiX2RpYl9pdGVtc191c2VyX2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogLjc1ZW07XG4gIGNsZWFyOiBib3RoO1xufVxuXG5cbi8qIERpYiBUYWJsZSAqL1xuXG5AbWl4aW4gZGliLWl0ZW0tbGluayB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgc3Ryb25nIHtcbiAgICAvLyBNYWtlIG5hbWUgY29sdW1uIHdpZGVyLCBhbmQgYWRkIGVsbGlwc2lzXG4gICAgLy8gdG8gbG9uZyBuYW1lcyByYXRoZXIgdGhhbiB3cmFwcGluZ1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxODBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxufVxuXG4jZGliX2l0ZW1zX3RhYmxlIHtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7IG1hcmdpbjogMDsgfVxuXG4gIC8vIEhpZGUgc29ydCBpbWFnZXMgYmVjYXVzZSB3ZSBhcmUgdXNpbmcgZm9udCBpY29uc1xuICAuYWpheF9zb3J0ID4gaW1nIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gIHRkIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxufVxuXG4vLyBVc2VyIE1vZGVcbi51c2VyX21vZGUgI2RpYl9pdGVtc190YWJsZSB7XG4gIC5hamF4X3NvcnQ6Zmlyc3QtY2hpbGQgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiAgdGQ6Zmlyc3QtY2hpbGQgeyBAaW5jbHVkZSBkaWItaXRlbS1saW5rOyB9XG59XG5cbi8vIEVkaXQgbW9kZSBhZGRzIGEgY2hlY2tib3ggY29sdW1uIGZvciBtYXNzIGVkaXQsXG4vLyB3aGljaCBicmVha3MgdGhlIHVzZXIgbW9kZSA6Zmlyc3QtY2hpbGQgc2VsZWN0b3JzXG4uZWRpdF9tb2RlICNkaWJfaXRlbXNfdGFibGUge1xuICAuYWpheF9zb3J0Om50aC1jaGlsZCgyKSB7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxuICB0ZDpudGgtY2hpbGQoMikgeyBAaW5jbHVkZSBkaWItaXRlbS1saW5rOyB9XG59XG5cbiNkaWJfaXRlbXNfZGl2IHsgLy8gUmUtc3R5bGUgd2hlbiBsaXF1aWQgZGF0YSBpcyBhdmFpbGFibGUuXG4gIC5hY3Rpb25MaW5rcyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuXG4gICAgYSB7IGNvbG9yOiAjMzMzOyB9XG4gICAgc3BhbiB7IGZsb2F0OiBub25lOyB9XG4gICAgLmxpbmtTZXQxIHsgbWFyZ2luLXJpZ2h0OiAxZW07IH1cblxuICAgIC5saW5rU2V0MiAuaWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVkaXQgbW9kZSBmaXguIFJlLXN0eWxlIHdoZW4gbGlxdWlkIGRhdGEgaXMgYXZhaWxhYmxlLlxuICAvLyBmb3JtIGFjdHMgYXMgdGFibGUgc2Nyb2xsIHdyYXBwZXJcbiAgZm9ybSNkaWJfaXRlbV9mb3JtIHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cblxuLyogRGliIEl0ZW0gKi9cblxuLmRpYkl0ZW0ge1xuICAudmV2ZW50IHtcbiAgICB3aWR0aDogNjAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgdWwgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIH1cblxuICAuc3VtbWFyeSB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjI1ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXBwX2ltYWdlcy9pY29uLWRpYnMtaGVyby1saWdodC5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBwYWRkaW5nOiAuNzVlbTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogLTEuNWVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWxzIHtcbiAgICAkYm9yZGVyLWNvbG9yOiAjY2NjO1xuXG4gICAgd2lkdGg6IDMwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNFRkVGRUY7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgbGFiZWwgeyBmb250LXdlaWdodDogYm9sZDsgfVxuICB9XG59XG5cblxuLyogRGlicyBDYWxlbmRhciBNb2RzICovXG4jdGFiX2RpYl9pdGVtX21vbnRoX2NvbnRlbnQgI21vbnRoVmlld0NhbGVuZGFyIC50b2RheSB7XG4gIGJhY2tncm91bmQ6ICNFRUU7XG5cbiAgYSB7IGNvbG9yOiAkbGluay1jb2xvcjsgfVxufVxuXG5cbi8qIERpYiBMYXlvdXQgTW9kcyAqL1xuXG4jZGlic1Rvb2wgI3BhZ2VDb250ZW50Q29udGFpbmVyICNkaXNwbGF5Qm9keUNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoI3snPCU9IGFzc2V0X3BhdGhfZm9yKFwiL2FwcF9pbWFnZXMvZGlic19oZWFkZXIuanBnXCIpICU+J30pIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbn1cblxuI2RpYnNUb29sIHtcbiAgI3BhbmVsT25lIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICNzaXRlQ29udGFpbmVyMiB7XG4gICAgI3BhbmVsVHdvIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAjZGlzcGxheUJvZHlIZWFkZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cbn1cblxuXG4vKiBEaWIgSXRlbSBGaWx0ZXIgKi9cblxuLmRpYnNGaWx0ZXIge1xuICBAaW5jbHVkZSBkaXNwbGF5LWZsZXg7XG4gIEBpbmNsdWRlIGZsZXgtd3JhcDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgLy8gU3RvcCBjbGVhcmZpeCBmcm9tIG1pc2FsaWduaW5nIGNvbnRlbnRzXG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIH1cbiAgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICAvLyBNaW1pY2tpbmcgdGhlbWUgdGV4dCBpbnB1dCBzdHlsZSAoYWN0dWFsIHRoZW1lIHN0eWxlcyBicm9rZSB0ZXh0IGJhc2VsaW5lKVxuICAgICZbdHlwZT1cInRleHRcIl0ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcbiAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjFzIGVhc2U7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9keUNvcHlDb2xvclR3bztcbiAgICAgIH1cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIC8vIERlc2F0dXJhdGUgc2VsZWN0IGVsZW1lbnRcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcbiAgICAvLyBQcmV2ZW50IHNlbGVjdCBmcm9tIGJyZWFraW5nIGZsZXggbGF5b3V0XG4gICAgbWF4LXdpZHRoOiAxMzBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAuZmlsdGVyLWNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1ncm93O1xuICAgIHBhZGRpbmc6IDAgMjBweCA3cHggMDtcbiAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9yY2UgYnV0dG9uIHRvIHdyYXAgdG8gaXRzIG93biBsaW5lXG4gIC5maWx0ZXItYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpbmUgdXAgZGF0ZSBpbnB1dHNcbiAgLmZpbHRlci1kYXRlcyBsYWJlbCB7XG4gICAgbWluLXdpZHRoOiAzZW07XG4gIH1cblxuICAjY3JlZGl0cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgbWF4LXdpZHRoOiA0ZW07XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogODgwcHgpIHtcbiAgICAvLyBUaHJlZSBjb2x1bW5zXG4gICAgLmZpbHRlci1jb2x1bW4ge1xuICAgICAgQGluY2x1ZGUgZmxleC1iYXNpcygzMy4zJSk7XG4gICAgICBAaW5jbHVkZSBmbGV4LWdyb3coMCk7XG4gICAgfVxuICAgIC5maWx0ZXItYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLy8gVHdvIGNvbHVtbnNcbiAgICAuZmlsdGVyLWNvbHVtbiB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWJhc2lzKDUwJSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qIFByb2ZpbGUgVG9rZW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBUb2tlbnMgYW5kIE1pbmlUb2tlbnMgKi9cblxuLnByb2ZpbGVUb2tlbiwgLnByb2ZpbGVNaW5pVG9rZW57XG4gICAgYmFja2dyb3VuZDogIzQ0NDtcbn1cblxuLnBhZ2VFbGVtZW50QWRtaW4gLnByb2ZpbGVUb2tlbntcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4ucHJvZmlsZVRva2VuIGltZywgLnByb2ZpbGVNaW5pVG9rZW4gaW1nLCAjcHJvZmlsZUF2YXRhckRpc3BsYXkgaW1ne1xuICAgICBfbWFyZ2luLWJvdHRvbTogLTJweDtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW57XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6OHB4O1xuICAgIG1hcmdpbi1ib3R0b206MTBweDtcbn1cblxuLnByb2ZpbGVUb2tlbiAuaW1hZ2UsIC5wcm9maWxlTWluaVRva2VuIC5pbWFnZXtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMTBweCAwIDVweDtcbiAgICB3aWR0aDozMHB4O1xuICAgIGhlaWdodDozMHB4O1xuICAgIGJvcmRlcjoycHggc29saWQgI0RERDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGltZ3tcblx0ICAgIGRpc3BsYXk6YmxvY2s7XG5cdCAgICB0b3A6LTElO1xuXHQgICAgbGVmdDotMSU7XG5cdCAgICB3aWR0aDoxMDMlO1xuICAgIH1cbn1cblxuLnByb2ZpbGVUb2tlbiAuaW5mb3tcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uc3ViUGFuZWxBIC5wcm9maWxlVG9rZW4gLmluZm8gLnByb2ZpbGVOYW1le1xuICAgIHdpZHRoOiAyMDBweDtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW4gLmluZm97XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG59XG5cbi5wcm9maWxlVG9rZW4gLmluZm8gbGl7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pbmZvIC5wcm9maWxlTmFtZSwgLmluZm8gLnByb2ZpbGVOYW1lIGF7XG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZXtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6ICNGRkY7XG59XG5cbi5wcm9maWxlTWluaVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZXtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiAjRkZGO1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAuaW5mbyAucHJvZmlsZU5hbWUgYXtcbiAgICBjb2xvcjogI0ZGRjsgICAgXG59XG5cbi5wcm9maWxlVG9rZW4gLmluZm8gLnByb2ZpbGVOYW1lIC50eXBlLCAubWluaVBlcnNvbmEgLnR5cGV7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY29sb3I6ICM2NjY7XG59XG5cbi5pbmZvIC5wcm9maWxlTmFtZSBhOmhvdmVye1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5uZXR3b3JrTGFiZWwsIC5wcm9maWxlTWluaVRva2VuIC5pbmZvIC5uZXR3b3JrTGFiZWx7XG4gICAgY29sb3I6ICNDQ0M7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucHJvZmlsZVRva2VuIC5pbmZvIC5uZXR3b3JrTGFiZWwgYXtcbiAgICBjb2xvcjogI0ZGRjtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW4gLmluZm8gLm5ldHdvcmtCYWRnZXN7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogNXB4IDVweCAwIDA7XG59XG5cbi5pbmZvIC5uZXR3b3JrQmFkZ2VzIGltZ3tcbiAgICBwYWRkaW5nOiAxcHg7XG4gICAgYmFja2dyb3VuZDogIzY2Njtcbn1cblxuLnByb2ZpbGVUb2tlbiAudG9rZW5BY3Rpb25ze1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9wcm9maWxlX3Rva2VuX2FjdGlvbnMuanBnXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuLnByb2ZpbGVNaW5pVG9rZW4gLmluZm8gLnRva2VuQWN0aW9uc3tcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmc6MXB4IDVweDtcbn1cbi5wcm9maWxlTWluaVRva2VuIC50b2tlbkFjdGlvbnMgYXtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6MC44ZW07XG5cdHBhZGRpbmctbGVmdDoyMnB4O1xufVxuXG4ucHJvZmlsZVRva2VuIC50b2tlbkhpZXJhcmNoeXtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvcHJvZmlsZV90b2tlbl9oaWVyYXJjaHkuanBnXCIpIG5vLXJlcGVhdCA0MDBweCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLnByb2ZpbGVUb2tlbiAuYWN0aW9uc3tcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmc6IDNweCAzcHggMCAwO1xuICAgIGNvbG9yOiAjQ0NDO1xufVxuXG4ucHJvZmlsZVRva2VuIC5hY3Rpb25zIGF7XG4gICAgY29sb3I6ICNDQ0M7XG59XG5cbi5wcm9maWxlVG9rZW4gLmFjdGlvbnMgYTpob3ZlcntcbiAgICBjb2xvcjogI0ZGRjtcbn1cblxuI3N1cnZleV9zdGVwcyAucHJvZmlsZVRva2VuIC5hY3Rpb25zIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5wcm9maWxlVG9rZW5BY3Rpb257XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJvZmlsZVRva2VuQWN0aW9uIGF7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbiNuZXdfZnVsbF9uYW1lIHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1sZWZ0OiA2NnB4OyB9XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuXHQucHJvZmlsZU1pbmlUb2tlbiAuaW5mb3tcblx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdFx0LnRva2VuQWN0aW9uc3tcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRwYWRkaW5nOjEwcHggNXB4O1xuXHRcdH1cblx0fVxufVxuXG5cbi8qIE93bmVyICovXG5cbi5wcm9maWxlTWluaVRva2VuIC5vd25lciAucHJvZmlsZU5hbWV7XG4gICAgcGFkZGluZy1yaWdodDogMTdweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvbWluaV90b2tlbl9oaWVyYXJjaHkuanBnXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG59XG5cbi5wcm9maWxlTWluaVRva2VuIC5vd25lciAuaW1hZ2V7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ucHJvZmlsZU1pbmlUb2tlbiAub3duZXIgaW1ne1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW46IDVweCA3cHggNXB4IDVweDtcbn1cblxuLnByb2ZpbGVNaW5pVG9rZW4gLm93bmVyIC5wcm9maWxlTmFtZXtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5wcm9maWxlTWluaVRva2VuIC5vd25lciAucHJvZmlsZU5hbWUgYXtcbiAgICBjb2xvcjogI0NDQztcbiAgICBmb250LXNpemU6IDEycHg7XG59XG5cbi8qIE1hc3RlciBUb2tlbiAqL1xuXG4ubWFzdGVyUHJvZmlsZSAubWFzdGVyUHJvZmlsZVRva2Vue1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLyogU3ViIFRva2VucyAqL1xuXG4uc3ViUHJvZmlsZVRva2Vue1xuICAgIGJhY2tncm91bmQ6ICNiMmIyYjIgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Byb2ZpbGVfdG9rZW5fYmFja19zdWIuanBnXCIpIHJlcGVhdC14O1xuICAgIGJvcmRlcjogc29saWQgMnB4ICNCQUJBQkE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW1hZ2UgaW1nLCAucHJvZmlsZVRva2VuIC5pbWFnZSBpbWd7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC50b2tlbkFjdGlvbnN7XG4gICAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Byb2ZpbGVfdG9rZW5fYWN0aW9uc19zdWIuanBnXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmluZm8gLnByb2ZpbGVOYW1lLCAuc3ViUHJvZmlsZVRva2VuIC5pbmZvIC5wcm9maWxlTmFtZSBhe1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW5mbyAucHJvZmlsZU5hbWV7XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmFjdGlvbnN7XG4gICAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5hY3Rpb25zIGF7XG4gICAgY29sb3I6ICM2NjY7XG59ICAgIFxuXG4uc3ViUHJvZmlsZVRva2VuIC5hY3Rpb25zIGE6aG92ZXJ7XG4gICAgY29sb3I6ICMzMzM7XG59XG5cbi5zdWJQcm9maWxlVG9rZW4gLmluZm8gLm5ldHdvcmtMYWJlbHtcbiAgICBjb2xvcjogIzY2Njtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW5mb3tcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uc3ViUHJvZmlsZVRva2VuIC5pbmZvIC5uZXR3b3JrQmFkZ2Vze1xuICAgIG1hcmdpbjogM3B4IDAgMDtcbn1cblxuLnN1YlByb2ZpbGVUb2tlbiAuaW5mbyAubmV0d29ya0JhZGdlcyBpbWd7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjY2O1xufVxuXG4udHJhbnNmZXJPcHRpb25ze1xuICAgIG1hcmdpbjogLTJweCAwIDJweDtcbiAgICBwYWRkaW5nOiAycHggMCA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNDQ0M7XG59XG5cbi8qIG1pbmlQZXJzb25hXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubWluaVBlcnNvbmF7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI0NDQztcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgYmFja2dyb3VuZDogI0RERCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdXNlci9zdWJ0bGVfZ3JhZGllbnRfMS5wbmdcIikgcmVwZWF0LXggdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjJweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xufVxuLm1pbmlQZXJzb25hLnNlbGVjdGVkIHsgYm9yZGVyLWNvbG9yOiM5OTk7IGJhY2tncm91bmQtY29sb3I6IzY2NjsgfVxuLm1pbmlQZXJzb25hRm9ybSB7XG4gIGNsZWFyOmJvdGg7XG4gIGJhY2tncm91bmQ6I2YyZjJmMjtcbiAgYm9yZGVyOjFweCBzb2xpZCAjQ0NDO1xuICBwYWRkaW5nOjEwcHggMjBweDtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRvcDotNHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MCAwIDRweCA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czowIDAgNHB4IDRweDtcbiAgYm9yZGVyLXJhZGl1czowIDAgNHB4IDRweDtcbn1cbi5taW5pUGVyc29uYUZvcm0gLmZvcm1FbGVtZW50IHsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4ubWluaVBlcnNvbmEuc2VsZWN0ZWQgKyAubWluaVBlcnNvbmFGb3JtIHsgYm9yZGVyLWNvbG9yOiM5OTk7IH1cblxuLm1pbmlQZXJzb25hIGlucHV0e1xuICAgIG1hcmdpbjogOHB4IDEwcHggMCA4cHg7XG4gICAgX21hcmdpbjogNXB4IDEwcHggMCA4cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG4ubWluaVBlcnNvbmEgLnRvZ2dsZV9tZW1iZXJzaGlwIHtcbiAgICBtYXJnaW46IDVweCA1cHggMCAwO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLm1pbmlQZXJzb25hIGxhYmVse1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDEzcHg7XG59XG5cbi5taW5pUGVyc29uYSAucHJvZmlsZVBpY3tcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLm1pbmlQZXJzb25hIGltZ3tcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5taW5pUGVyc29uYSAubmFtZXtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLm1pbmlQZXJzb25hIC5uYW1lIGEge1xuICBjb2xvcjogIzkwMDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWluaVBlcnNvbmEgLm5hbWUgYTpob3ZlciB7XG4gIGNvbG9yOiAjZjAwO1xufVxuXG4ubWluaVBlcnNvbmEucGVuZGluZ3tcbiAgICBiYWNrZ3JvdW5kOiAjRUZFRkVGO1xuICAgIGJvcmRlci1jb2xvcjogI0NDQztcbn1cblxuLm1pbmlQZXJzb25hLm93bmVyIC5uYW1le1xuICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xufVxuXG4ubWluaVBlcnNvbmEucGVuZGluZyAubmFtZXtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbn1cblxuLm1pbmlQZXJzb25hIGVte1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xufVxuXG4ubWluaVBlcnNvbmEgLnJlcXVpcmVkIGVtIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZjAwMDA7XG59XG5cbi5taW5pUGVyc29uYSB1bHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5taW5pUGVyc29uYSAubmFtZSBpbnB1dHtcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG59XG5cbi5yZXN1bHRzVGFibGUgLm1pbmlQZXJzb25he1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5kYXRhVGFibGUgLm1pbmlQZXJzb25he1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI0ZGRjtcbn1cblxuLmRhdGFUYWJsZSAubWluaVBlcnNvbmEgdGR7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uZGF0YVRhYmxlIC5taW5pUGVyc29uYSAubW9yZUluZm97XG4gICAgd2lkdGg6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmc6IDNweCA1cHggM3B4IDJweDtcbn1cblxuLyogTmV3IENvbW11bmljYXRpb24gRW1haWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5uZXdDb21tdW5pY2F0aW9uRW1haWx7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgXG59XG5cbi8qIE1lbWJlciBEaXJlY3RvcnkgVmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wcm9maWxlVG9rZW4gLmFkbWluT3B0aW9ucyB7IGZsb2F0OnJpZ2h0OyB0ZXh0LWFsaWduOnJpZ2h0OyBwYWRkaW5nOjhweDsgfVxuLnByb2ZpbGVUb2tlbiAuYWRtaW5PcHRpb25zIGEgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgdG9wOi0ycHg7IH1cbi5wcm9maWxlVG9rZW4gLmFkbWluT3B0aW9ucyAuYXNzdW1lX3VzZXIgeyBtYXJnaW4tbGVmdDo4cHg7IH1cblxuLyogTWVtYmVyIFN0YXR1cyAqL1xuLnByb2ZpbGVQaWNrZXIgLnN0YXR1cyBhIHsgcG9zaXRpb246cmVsYXRpdmU7IHRvcDotMnB4OyB9XG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzIGEuaGVscCBpbWcgeyBmbG9hdDpyaWdodDsgfVxuLnByb2ZpbGVQaWNrZXIgLnN0YXR1cyB7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBiYWNrZ3JvdW5kOiM5OTkgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3VzZXIvYnV0dG9uX2JnLnBuZ1wiKSBsZWZ0IGNlbnRlcjtcbiAgYm9yZGVyOjFweCBzb2xpZCAjOTk5O1xuICBwYWRkaW5nOjdweCA2cHggMnB4O1xuICBjb2xvcjojRkZGO1xuICBmb250LXNpemU6MTZweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCA0cHggcmdiYSgwLDAsMCwuNCk7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCA0cHggcmdiYSgwLDAsMCwuNCk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCA0cHggcmdiYSgwLDAsMCwuNCk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG4ucHJvZmlsZVBpY2tlciAuaGVscCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4zKTtcbiAgcGFkZGluZzogN3B4IDdweCA2cHggNXB4O1xuICBtYXJnaW46IC03cHggLTZweCAtN3B4IDFweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDlweCA5cHggMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDlweCA5cHggMDtcbiAgYm9yZGVyLXJhZGl1czogMCA5cHggOXB4IDA7XG59XG5cbi5wcm9maWxlUGlja2VyIC5zdGF0dXMuYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjojMDkwOyB9XG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzLmJsYWNrbGlzdGVkIHsgYmFja2dyb3VuZC1jb2xvcjojOTAwOyB9XG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzLmFjdGl2ZS1pbmNvbXBsZXRlIHsgYmFja2dyb3VuZC1jb2xvcjojNjk2OyB9XG4ucHJvZmlsZVBpY2tlciAuc3RhdHVzLmFwcHJvdmFsLW5lZWRlZCB7IGJhY2tncm91bmQtY29sb3I6Izk3MDsgfVxuLnByb2ZpbGVQaWNrZXIgLnN0YXR1cy5wcm9jZXNzaW5nIHsgXG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKCAkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9wcm9jZXNzaW5nX2JnLmdpZlwiKTsgXG59XG5cbiIsIi8qIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdpbmF0aW9uRWxlbWVudCwgLmRpcmVjdG9yeVNlYXJjaEVsZW1lbnQsIC5maWx0ZXJFbGVtZW50e1xuXHRiYWNrZ3JvdW5kOiAjQ0NDIHVybCgkYXNzZXQtcGF0aC1mb3IrXCIvYXBwX2ltYWdlcy9wYWdlT3B0aW9uc0JvZHkuanBnXCIpIHJlcGVhdC14O1xuXHRwYWRkaW5nOiA1cHggMDtcblx0Ym9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNDQ0NDQ0M7XG59XG5cbi5wYWdpbmF0aW9uRWxlbWVudCwgLmZpbHRlckVsZW1lbnR7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG59XG5cbi5maWx0ZXJFbGVtZW50e1xuXHRwYWRkaW5nOiA1cHggMTVweDtcbn1cblxuLnBhZ2luYXRpb25FbGVtZW50IGg0e1xuXHRmbG9hdDogbGVmdDtcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ucGFnaW5hdGlvbk5hdntcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ucGFnaW5hdGlvbk5hdiAuY3VycmVudCwgLnBhZ2luYXRpb25OYXYgZW17XG5cdHBhZGRpbmc6IDAgM3B4IDFweCAzcHg7XG59XG5cbi5wYWdpbmF0aW9uTmF2IC5kaXNhYmxlZHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2luYXRpb25FbGVtZW50IC5yZXN1bHRze1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdHBhZGRpbmctdG9wOiAycHg7XG59XG5cbi8qIFRvb2wgUGFnaW5hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udG9vbF9wYWdpbmF0aW9uIHtcbiAgY3Vyc29yOmRlZmF1bHQ7XG4gIHBhZGRpbmc6MTBweDtcbiAgYm9yZGVyLXRvcDoxcHggc29saWQgI0RERDtcbiAgbGluZS1oZWlnaHQ6MTFweDtcbiAgZm9udC1zaXplOjExcHg7XG4gIGNvbG9yOiM5OTk7XG4gIHRleHQtYWxpZ246cmlnaHQ7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbn1cblxuLnRvb2xfcGFnaW5hdGlvbiBhLFxuLnRvb2xfcGFnaW5hdGlvbiBzcGFuLFxuLnRvb2xfcGFnaW5hdGlvbiBlbSB7XG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICBmb250LXdlaWdodDpib2xkO1xuICBjb2xvcjojOTk5O1xuICBib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICBwYWRkaW5nOjVweCAwO1xuICB3aWR0aDoyMXB4O1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjRweDtcbiAgYm9yZGVyLXJhZGl1czo0cHg7XG59XG4udG9vbF9wYWdpbmF0aW9uIGE6aG92ZXIge1xuICBjb2xvcjojMzMzO1xuICBiYWNrZ3JvdW5kOiNFRUU7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMC4xKSA1MCUsIHJnYmEoMCwwLDAsMC4xKSA1MSUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoNTAlLHJnYmEoMjU1LDI1NSwyNTUsMC4xKSksIGNvbG9yLXN0b3AoNTElLHJnYmEoMCwwLDAsMC4xKSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDAsMCwwLDApKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjU1LDI1NSwyNTUsMC4xKSA1MCUscmdiYSgwLDAsMCwwLjEpIDUxJSxyZ2JhKDAsMCwwLDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgyNTUsMjU1LDI1NSwwLjEpIDUwJSxyZ2JhKDAsMCwwLDAuMSkgNTElLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgyNTUsMjU1LDI1NSwwLjEpIDUwJSxyZ2JhKDAsMCwwLDAuMSkgNTElLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDI1NSwyNTUsMjU1LDAuMSkgNTAlLHJnYmEoMCwwLDAsMC4xKSA1MSUscmdiYSgwLDAsMCwwKSAxMDAlKTtcbiAgYm9yZGVyLWNvbG9yOiM5OTk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNyk7XG4gIC1tb3otYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNyk7XG4gIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xufVxuLnRvb2xfcGFnaW5hdGlvbiBlbSB7XG4gIGZvbnQtc3R5bGU6bm9ybWFsO1xuICBiYWNrZ3JvdW5kOiNEREQ7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC4xKSAwJSwgcmdiYSgwLDAsMCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDAsMCwwLDAuMSkpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgwLDAsMCwwKSkpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDAsMCwwLDAuMSkgMCUscmdiYSgwLDAsMCwwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC4xKSAwJSxyZ2JhKDAsMCwwLDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC4xKSAwJSxyZ2JhKDAsMCwwLDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjEpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG4gIGJvcmRlci1jb2xvcjojQkJCO1xuICAtd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICAtbW96LWJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbn1cbi50b29sX3BhZ2luYXRpb24gLnByZXZpb3VzX3BhZ2UsXG4udG9vbF9wYWdpbmF0aW9uIC5uZXh0X3BhZ2Uge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qIFB1bGxkb3duIE1lbnUgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucHVsbGRvd25TZWxlY3RNZW51e1xuICBwYWRkaW5nOjE1cHggMTBweCAxMHB4O1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucmFwaWRDb250ZW50Q29uc3RydWN0aW9uIC5wdWxsZG93blNlbGVjdE1lbnV7XG4gICAgcGFkZGluZzogNXB4IDBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucHVsbGRvd25TZWxlY3RNZW51IHNwYW57XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBzdHJvbmd7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbn1cbiIsIi8qIE5vZGUgUGlja2VyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5vZGVQaWNrZXJTbGlkZUJveHtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogNDgwcHg7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBsaW5lLWhlaWdodDoxLjVlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNFRUU7XG4gIHBhZGRpbmc6IDFlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLWJvdHRvbTogMWVtIHNvbGlkICNFRUU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQUFBO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0I2xpZ2h0Ym94ICYge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxZW0gc29saWQgI0VFRTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0FBQTtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICB9XG59XG4ubm9kZVBpY2tlclNpdGVCb3gge1xuICBwYWRkaW5nLWJvdHRvbToxZW07XG59XG4jbGlnaHRib3ggLm5vZGVQaWNrZXJTbGlkZUJveCxcbi5ub2RlUGlja2VyU2xpZGVCb3gge1xuICAudW5saW1pdGVkSGllcmFyY2h5IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogLjc1ZW07XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNBQUE7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgcGFkZGluZzogMCAwIDAgNXB4O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGRpdiB7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgICAgbWFyZ2luOiAwIC41ZW0gMCAwO1xuICAgICAgfVxuICAgIH1cbiAgICAubGFzdExpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICA+IHVsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5vZGVQaWNrZXJ7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAwIDI1cHg7XG59XG5cbi5ub2RlUGlja2VyIHVse1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDAgMzBweDtcbn1cblxuLm5vZGVQaWNrZXIgbGl7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM2NjY7XG4gIGNsZWFyOiBib3RoO1xuICBfaGVpZ2h0OiAxOHB4OyAvKiBJRSA2IGhhY2sgKi9cbn1cblxuLmFjY2Vzc1RyZWUgbGl7XG4gIGNvbG9yOiAjMzMzO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0ZDQ0QyMjtcbiAgcGFkZGluZzogMnB4IDA7XG59XG5cbi5ub2RlUGlja2VyIGE6bGluaywgLm5vZGVQaWNrZXIgYTp2aXNpdGVke1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5vZGVQaWNrZXIgYTpob3ZlcntcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5ub2RlUGlja2VyIGxhYmVse1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwIDNweDtcbn1cblxuLm5vZGVQaWNrZXIgLnNlbGVjdExpbmt7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5cblxuLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYixcbiNub2RlUGlja2VyQ29udGFpbmVyX25ld3NfYWdncmVnYXRvcl9sYiAudGFie1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMHB4IDFlbSAtMWVtIDFlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYXtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICAgIGZvbnQtc2l6ZTogLjYyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBhZGRpbmc6IC41ZW0gLjhlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2l0aW9uOiAuMnMgMHMgZWFzZS1pbi1vdXQ7XG4gICAgJi51cEFycm93OmFmdGVye2NvbnRlbnQ6IFwiXFxmMDc3XCI7fVxuICAgICYuZG93bkFycm93OmFmdGVye2NvbnRlbnQ6IFwiXFxmMDc4XCI7fVxuICAgICY6YWZ0ZXJ7XG4gICAgICBmb250LWZhbWlseTogJ0ZvbnRhd2Vzb21lJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICNEREQ7XG4gICAgfVxuICB9XG59XG4jbWFpbl9jYWxlbmRhcl9mb3Jte1xuICAjdGFiU2hvd19tYWlue1xuICAgIG1hcmdpbjogMCAxZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLm5vZGVQaWNrZXJDb250YWluZXJ7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cbi5ub2RlUGlja2VyQ29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpe1xuICAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLnBlMjUsIC5wZTMze1xuICAgIC5ub2RlUGlja2VyQ29udGFpbmVyIC50YWIsXG4gICAgI25vZGVQaWNrZXJDb250YWluZXJfbmV3c19hZ2dyZWdhdG9yX2xiIC50YWJ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgIG1hcmdpbjogLS43NWVtIDAgMCAwO1xuICAgICAgcGFkZGluZzogMHB4IDFlbSAxZW0gMWVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYmFja2dyb3VuZDogI0VFRTtcbiAgICAgICYjdGFiSGlkZV9tYWlue21hcmdpbjogMHB4O31cbiAgICB9XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzgwcHgpe1xuICAubm9kZVBpY2tlckNvbnRhaW5lciAudGFiLFxuICAjbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYntcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICBtYXJnaW46IC0uNzVlbSAwIDAgMDtcbiAgICBwYWRkaW5nOiAwcHggMWVtIDFlbSAxZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICAgICYjdGFiSGlkZV9tYWlue21hcmdpbjogMHB4O31cbiAgfVxuICAjbWFpbl9jYWxlbmRhcl9mb3Jte1xuICAgIC50YWIjdGFiSGlkZV9tYWlue1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cblxuXG4vKiBOb2RlIFBpY2tlciBGb3JtIENvbnRyb2xzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmxvYWRpbmcge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogMCA0cHggMCAwO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0d2lkdGg6IDE2cHg7XG59XG4ubm9kZVBpY2tlci1mb3JtQ29udHJvbHMge1xuXHRtYXJnaW46IC0xLjg1ZW0gMCAwIDA7XG59XG5cbi5ub2RlUGlja2VyLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICM0NDQ7XG4gIGZvbnQtc2l6ZTogMC42MjVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogLjVlbSAuOGVtO1xuICBtYXJnaW46IDAgLjVlbSAuNDVlbSAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjRkZGO1xuICB0cmFuc2l0aW9uOiAuMnMgMHMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlcntcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNEREQ7XG4gIH1cbn1cblxuI2Zvcm1fdmFsdWVzX21hdGNoX29wdGlvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAtNHB4IDAgMCAwO1xufVxuLm5vZGVQaWNrZXJDb250YWluZXIgLnRhYiBhLCAjbm9kZVBpY2tlckNvbnRhaW5lcl9uZXdzX2FnZ3JlZ2F0b3JfbGIgLnRhYiBhe31cblxuXG4vKiBTaW5nbGUgU2VsZWN0IFBpY2tlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXJ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXB4IDEwcHg7XG59XG5cbi5zaW5nbGVTZWxlY3RCb2R5SGVhZGVyIGF7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xufVxuXG4uc2luZ2xlU2VsZWN0Qm9keUhlYWRlciBzcGFue1xuICB0ZXh0LWluZGVudDogLTIwMDBweDtcbn1cblxuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXIgLmRpc2FibGVke1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnByZXZpb3VzU2luZ2xlU2VsZWN0e1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUlO1xufVxuXG4uc2luZ2xlU2VsZWN0Qm9keUhlYWRlciAjZGlzcGxheUJvZHlIZWFkZXJ7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA4OS41JTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI0ZGRjtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggI0ZGRjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwcHggLTJweDtcbn1cblxuLnNpbmdsZVNlbGVjdEJvZHlIZWFkZXIgI2Rpc3BsYXlCb2R5SGVhZGVyIGF7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmV4dFNpbmdsZVNlbGVjdHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNSU7XG59XG5cbi5ucFNpbmdsZVNlbGVjdHtcbiAgei1pbmRleDogMjAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE2OHB4O1xufVxuXG4ucGFnZVB1c2h7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbGVmdDogMDtcbn1cblxuI3NpdGVDb250YWluZXIzIC5ucFNpbmdsZVNlbGVjdCAgICAgeyB3aWR0aDogNTkycHg7IH1cbiNzaXRlQ29udGFpbmVyMiAubnBTaW5nbGVTZWxlY3QgICAgIHsgd2lkdGg6IDc2MnB4OyB9XG4jc2l0ZUNvbnRhaW5lcjMgLnBhZ2VFbGVtZW50QWRtaW4gLm5wU2luZ2xlU2VsZWN0LCAjc2l0ZUNvbnRhaW5lcjIgLnBhZ2VFbGVtZW50QWRtaW4gLm5wU2luZ2xlU2VsZWN0eyB3aWR0aDogYXV0bzsgfVxuLm5wU2luZ2xlU2VsZWN0IC5ub2RlUGlja2VyU2xpZGVCb3ggeyBwYWRkaW5nLWJvdHRvbTogMTBweDsgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM2NjY7IH1cblxuXG4vKiBTZWxlY3RlZCBOb2Rlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWxlY3RlZE5vZGVzIHtcbiAgbWluLWhlaWdodDogNmVtO1xuICBwYWRkaW5nOiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRUU7XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBwYWRkaW5nOiAuNWVtIDA7XG4gIH1cbn1cbi5zZWxlY3RlZE5vZGVDaG9pY2VzX21haW4sIC5zZWxlY3RlZE5vZGVDaG9pY2VzX2xiIHtcbiAgICBtYXJnaW46IDFlbSAwIDNlbSAwO1xufVxuLnBhZ2VFbGVtZW50QWRtaW4gLnNlbGVjdGVkTm9kZXMge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuI2ZvY3VzQ29udGFpbmVyICNzZWxlY3RlZE5vZGVDaG9pY2VzIHtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuYm9keSAuc2VsZWN0ZWROb2RlcyBwLFxuI2xpZ2h0Ym94Qm9keSAuc2VsZWN0ZWROb2RlcyBwIHtcbiAgY29sb3I6ICM2NjY7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5ub2RlUGlja2VyLXByZXNlbGVjdGVkVGFncyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udGFnIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogLjVlbSAuOGVtO1xuICBtYXJnaW46IDAgLjVlbSAuNWVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdHJhbnNpdGlvbjogLjJzIDBzIGVhc2UtaW4tb3V0O1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gIH1cbn1cblxuXG4vKiBUYWdzICYgVGFnIEdyb3Vwc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmRsLnRhZ0dyb3VwICAgIHsgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjZjJmMmYyOyBsaW5lLWhlaWdodDogMS43NWVtOyBtYXJnaW46IDA7IHBhZGRpbmc6IDVweDsgfVxuZGwudGFnR3JvdXAgZHQgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMnB4IDVweCAwIDA7IHRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDE1cHg7IH1cbmRsLnRhZ0dyb3VwIGRkIHsgbWFyZ2luOiAwIDAgMCAyMHB4OyB9XG5cbiNsaWdodGJveEJvZHkgZGwudGFnR3JvdXAgeyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNmZGU2ODY7IH1cbiNsaWdodGJveEJvZHkgZGwudGFnR3JvdXAgLnRhZyB7IGJhY2tncm91bmQ6ICNmY2YwYWI7IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZmNmMGFiLCAjZmRlNjg2KTsgYm9yZGVyOiAxcHggc29saWQgI2ZkZTY4NjsgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuI2xpZ2h0Ym94Qm9keSAubGlzdEl0ZW0geyBtYXJnaW46MzBweDsgcGFkZGluZzoyMHB4OyBiYWNrZ3JvdW5kOiNGRkY7IGJvcmRlcjogMXB4IHNvbGlkICM5OTk7IH1cbiNsaWdodGJveEJvZHkgLmxpc3RJdGVtIGgyIHsgbWFyZ2luOiAwIDAgMC41ZW07IH1cblxuXG4vKiBDcm9zcy1TaXRlIE5vZGUgUGlja2VyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5vZGVQaWNrZXItc2l0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgeyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICM5OTk7IG1hcmdpbjogMTBweCAwIDA7IHBhZGRpbmc6IDAgMCAxMHB4OyB9XG4vLyAjbm9kZVBpY2tlci1zaXRlLTwlPSBAc2l0ZS5pZCAlPi1sYixcbi8vICNub2RlUGlja2VyLXNpdGUtPCU9IEBzaXRlLmlkICU+LW1haW4gICAgIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICAjOTk5OyB9XG4ubm9kZVBpY2tlci1zaXRlOmxhc3QtY2hpbGQgICAgICAgICAgICAgICB7IGJvcmRlcjogbm9uZTsgfVxuLnNlbGVjdGVkTm9kZXMgLm5vZGVQaWNrZXItc2l0ZS1uYW1lICAgICAgeyBsaW5lLWhlaWdodDogMTZweDsgbWFyZ2luOiAwIDAgNXB4OyB9XG4uc2VsZWN0ZWROb2RlcyAubm9kZVBpY2tlci1zaXRlLW5hbWUgYSAgICB7IGNvbG9yOiAjMzMzOyBmbG9hdDogbm9uZTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc2l6ZTogMTJweDsgfVxuLnNlbGVjdGVkTm9kZXMgLm5vZGVQaWNrZXItc2l0ZS1uYW1lIGltZyAgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMCA0cHggMCAwOyBoZWlnaHQ6IDE2cHg7IHdpZHRoOiAxNnB4OyB9XG4ubm9kZVBpY2tlci1jcm9zc1NpdGUgICAgICAgICAgICAgICAgICAgICB7IGJhY2tncm91bmQ6ICNlNWU1ZTU7IHBhZGRpbmc6IDVweCAxMHB4OyB9XG4iLCIvKiBMb2JhciBzdHlsZXMgKi9cblxuLmxvYmFyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNDk4OyAvLyAxIGxlc3MgdGhhbiB0aGUgei1pbmRleCBvZiBgZGl2LnNuLXBhZ2VNYW5hZ2VyYFxuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6ICMxMzc1OWI7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggcmdiYSgwLDAsMCwwLjYpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246XG4gICAgdHJhbnNmb3JtIDEwMG1zIGxpbmVhcixcbiAgICBvcGFjaXR5IDEwMG1zIGxpbmVhcixcbiAgICB2aXNpYmlsaXR5IDEwMG1zIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjpcbiAgICB0cmFuc2Zvcm0gMTAwbXMgbGluZWFyLFxuICAgIG9wYWNpdHkgMTAwbXMgbGluZWFyLFxuICAgIHZpc2liaWxpdHkgMTAwbXMgbGluZWFyO1xuXG4gICYubG9iYXItZXhpdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNSUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLnBhZ2UtbWFuYWdlci12aXNpYmxlICYgeyBsZWZ0OiA2MHB4OyB9XG59XG5cbi5sb2Jhci1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldC1wYXRoLWZvcitcIi9hcHBfaW1hZ2VzL21hcmtldGluZy9lbWJsZW0tbG9iYXIucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdDtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDEwcHg7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBwYWRkaW5nOiAuNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAyLjE1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250OiA0MDAgMTRweC8xMDAlICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgIGEsXG4gICAgYTpsaW5rLFxuICAgIGE6aG92ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgaGVpZ2h0OiAyM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgICBwYWRkaW5nOiAwIDdweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgIH1cbiAgfVxufVxuXG4ubG9iYXItbGluayxcbi5sb2Jhci1saW5rOmxpbmssXG4ubG9iYXItbGluazp2aXNpdGVkIHtcbiAgYmFja2dyb3VuZDogIzEzYWEzNztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5sb2Jhci1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNjY2M7XG4gIGJhY2tncm91bmQ6ICMwZTg1MmI7XG59XG5cbi5sb2Jhci1jbG9zZSxcbi5wYXltZW50LWxvYmFyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDhweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzZweDtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvbWFya2V0aW5nL2ljb24tY2xvc2UucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG5cbi8qIFBheW1lbnQgU3RhdHVzIExvYmFyIHN0eWxlcyAqL1xuLnBheW1lbnQtbG9iYXIgLmxvYmFyLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yK1wiL2FwcF9pbWFnZXMvbWFya2V0aW5nL2VtYmxlbS1sb2Jhci5wbmdcIikgbm8tcmVwZWF0IDE2cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG59XG5cbi5wYXltZW50LWludm9pY2VzLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4ucGF5bWVudC1pbnZvaWNlcy1idXR0b246aG92ZXIge1xuICBjb2xvcjogI2NjYztcbn1cblxuLmxvYmFyLWdyZWVuIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxM2FhMzc7XG59XG5cbi5sb2Jhci15ZWxsb3cge1xuICBjb2xvcjogIzIyMjcyYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2Q0MTtcbiAgYm9yZGVyLWNvbG9yOiAjOGY3ODM0O1xufVxuLmxvYmFyLXJlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ExYzFiO1xuICBib3JkZXItY29sb3I6ICM3NjFiMjU7XG59XG5cbi5sb2Jhci1ncmVlbiAucGF5bWVudC1pbnZvaWNlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE2MDFmO1xufVxuLmxvYmFyLXllbGxvdyAucGF5bWVudC1pbnZvaWNlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODY3MDJiO1xufVxuLmxvYmFyLXJlZCAucGF5bWVudC1pbnZvaWNlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQxNzE4O1xufVxuIiwiXG5cbi8qIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cblRpdGxlIDogTGlnaHRib3ggQ1NTXG5BdXRob3IgOiBLZXZpbiBIYWxlXG5VUkwgOiBodHRwOi8vcGFydGljbGV0cmVlLmNvbS9mZWF0dXJlcy9saWdodGJveC1nb25lLXdpbGQvXG5DcmVhdGVkIDogSmFudWFyeSAxMywgMjAwNlxuTW9kaWZpZWQgOiBKYW51YXJ5IDE4LCAyMDA4IChUU1QgVmVyc2lvbilcblxuLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gKi9cblxuLypcbiNsaWdodGJveHtcbiAgZGlzcGxheTpub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDo1MCU7XG4gIGxlZnQ6NTAlO1xuICB6LWluZGV4Ojk5OTk7XG4gIHdpZHRoOjcwMHB4O1xuICBtYXJnaW46LTIyMHB4IDAgMCAtMzUwcHg7XG4gIHRleHQtYWxpZ246bGVmdDtcbn1cbiovXG4jbGlnaHRib3h7XG4gIHotaW5kZXg6OTk5OTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2xiTG9hZE1lc3NhZ2V7XG4gIC8vd2lkdGg6IDcwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNsYkxvYWRNZXNzYWdlIHB7XG4gIC8vbWFyZ2luLXRvcDogMTc1cHg7XG59XG5cbiNsaWdodGJveFtpZF17XG4gIHBvc2l0aW9uOmZpeGVkO1xufVxuXG4jb3ZlcmxheXtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDoxMDAlO1xuICB6LWluZGV4Ojk5OTg7XG4gIGJhY2tncm91bmQtY29sb3I6IzAwMDtcbn1cbiNvdmVybGF5W2lkXXtcbiAgcG9zaXRpb246Zml4ZWQ7XG59XG5cbiNvdmVybGF5LmxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiAjMDAwIHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xvYWRlcjIuZ2lmJykgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuI292ZXJsYXkubG9hZGluZyBwIHtcbiAgcGFkZGluZzogNDUlIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2xpZ2h0Ym94LmRvbmUgI2xiTG9hZE1lc3NhZ2V7XG4gIGRpc3BsYXk6bm9uZTtcbn1cbiNsaWdodGJveC5kb25lICNsYkNvbnRlbnR7XG4gIGRpc3BsYXk6YmxvY2s7XG59XG4jbGlnaHRib3gubG9hZGluZyAjbGJDb250ZW50e1xuICBkaXNwbGF5Om5vbmU7XG59XG4jbGlnaHRib3gubG9hZGluZyAjbGJMb2FkTWVzc2FnZXtcbiAgZGlzcGxheTpibG9jaztcbn1cblxuLyogIE5HSU4gTGlnaHRib3ggQ1NTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4jbGlnaHRib3hIZWFkZXJ7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG59XG5cbiNsaWdodGJveEhlYWRlciBoMXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA5MCU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xiVG9wTGVmdC5naWYnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuI2xpZ2h0Ym94SGVhZGVyIGF7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwJTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjRERBMzAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xiVG9wUmlnaHQuZ2lmJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuI2xpZ2h0Ym94SGVhZGVyIGE6aG92ZXJ7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jbGlnaHRib3hQcmV2aWV3e1xuICBtYXgtaGVpZ2h0OiAxMjVweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZENztcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNEREEzMDE7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uZWxlbWVudE1lbnVPcHRpb24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4jbGlnaHRib3hCb2R5e1xuICAvL2hlaWdodDogNDAwcHg7XG4gIC8vd2lkdGg6IDY4MHB4O1xuICBwYWRkaW5nOiAwIDEwcHggMTBweDtcbiAgYmFja2dyb3VuZDogI2ZlZjdkMDtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uc3VibWl0TGlnaHRib3h7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmY2NkMjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWVjOGY7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG59XG4uc3VibWl0TGlnaHRib3ggLmVtYmVkZGVkX2xpbmt7XG4gIGZvbnQtc2l6ZTo4MCU7XG4gIG1hcmdpbi10b3A6LjNlbTtcbn1cblxuLmxiSGlnaGxpZ2h0IHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZlZWM4ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjRiYztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4jbGlnaHRib3hCb2R5IC5lbGVtZW50TWVudU9wdGlvbntcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmY2NkMjI7XG59XG5cbiNsaWdodGJveCAjd2FpdGluZ190ZXh0LCAjbGlnaHRib3ggLndhaXRpbmdfdGV4dHtcbiAgY29sb3I6ICNEREEzMDE7XG59XG5cbiNsaWdodGJveCAuaGVscGVyTGlnaHRib3ggI3dhaXRpbmdfdGV4dHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbiNsaWdodGJveFN1Ym1pdCAucHJldmlvdXN7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jbGlnaHRib3hTdWJtaXQgLm5leHR7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuI2xpZ2h0Ym94Rm9vdGVye1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vdG9wOiA0MzBweDtcbiAvLyB3aWR0aDogNzAwcHg7XG4gIGhlaWdodDogMTRweDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNEREEzMDE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xiQm90dG9tUmlnaHQuZ2lmJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuI2xpZ2h0Ym94Rm9vdGVyICNsaWdodGJveEZlZWRiYWNre1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA5NSU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9sYkJvdHRvbUxlZnQuZ2lmJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBsZWZ0O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94Qm9keSAuZm9ybUVsZW1lbnQge1xuICBiYWNrZ3JvdW5kOiAjZTBlMGUwO1xufVxuXG5cbi8qICBSZWN1cnJpbmcgRXZlbnRzIERpc3BsYXlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiNodW1hbl9yZWFkYWJsZV9yZWN1cl9zdHJpbmcge1xuICBiYWNrZ3JvdW5kOiAjZmVlYzhmO1xuICBwYWRkaW5nOiA1cHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmNjZDIyO1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA4NCU7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xufVxuXG4vKiAgRmVlZCBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmZlZWRMaW5re1xuICB3aWR0aDogOTklO1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbjogMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qICBVc2VyIE1vZGUgTW9kaWZpY2F0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEhlYWRlcntcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM5OTk7XG59XG4uaGVscGVyTGlnaHRib3ggI2xpZ2h0Ym94SGVhZGVyIGgxe1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9sYlRvcExlZnRVc2VyTW9kZS5naWYnKTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEhlYWRlciBhe1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9sYlRvcFJpZ2h0VXNlck1vZGUuZ2lmJyk7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggIzk5OTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEJvZHkgLmVsZW1lbnRNZW51T3B0aW9ue1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzk5OTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEZvb3RlcntcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICM5OTk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL2xiQm90dG9tUmlnaHRVc2VyTW9kZS5naWYnKTtcbn1cblxuLmhlbHBlckxpZ2h0Ym94ICNsaWdodGJveEZvb3RlciAjbGlnaHRib3hGZWVkYmFja3tcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldC1wYXRoLWZvcisnL2FwcF9pbWFnZXMvbGJCb3R0b21MZWZ0VXNlck1vZGUuZ2lmJyk7XG59XG5cbi5oZWxwZXJMaWdodGJveCAjbGlnaHRib3hCb2R5e1xuICBiYWNrZ3JvdW5kOiAjRUZFRkVGO1xufVxuXG4uaGVscGVyTGlnaHRib3ggLnN1Ym1pdExpZ2h0Ym94e1xuICBib3JkZXI6IHNvbGlkIDFweCAjOTk5O1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xufVxuXG4ubGlnaHRib3hIZWxwe1xuICAgIGNvbG9yOiAjNzc3O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHBhZGRpbmctdG9wOiAzcHg7XG59XG5cbi5zaXRlTGlnaHRib3hCYW5uZXJ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byA1cHg7XG59XG5cbi8qICBFZGl0IFN1cnZleSBFbnRyeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2xpZ2h0Ym94Qm9keSAuZm9ybUVsZW1lbnR7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRUVDOEY7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbiNsaWdodGJveEJvZHkgI3Byb2ZpbGVzX3RhYmxle1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRUVDOEY7XG59XG5cbiNsaWdodGJveEJvZHkgI3Byb2ZpbGVzX3RhYmxlIHRkLCAjbGlnaHRib3hCb2R5ICNwcm9maWxlc190YWJsZSB0aHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjRkVGN0QwO1xufVxuXG4vKiBVc2VyIFNlYXJjaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNwcm9maWxlc190YWJsZXtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbiNsaWdodGJveEJvZHkgLnVzZXJfc2VhcmNoLCAjbGlnaHRib3hCb2R5IC5zcGlubmVye1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4jbGlnaHRib3hCb2R5ICNwcm9maWxlc190YWJsZXtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbiNsaWdodGJveEJvZHkgLnBlcnNvbmFTZWxlY3R7XG4gIG1hcmdpbjoyMHB4IDIwcHggMDtcbn1cblxuLyogQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGJhc2ljcyAqL1xuLmJ1dHRvbi1hZGQsICAgICAgLmJ1dHRvbi1hZGQ6aG92ZXIgICAgIHsgY29sb3I6ICMzOTM7IH1cbi5idXR0b24tcmVtb3ZlLCAgIC5idXR0b24tcmVtb3ZlOmhvdmVyICB7IGNvbG9yOiAjOTAwOyB9XG4uYnV0dG9uLWFkZCwgICAgICAuYnV0dG9uLXJlbW92ZSAgICAgICAgeyBiYWNrZ3JvdW5kOiAjZmZmYmU4OyBib3JkZXI6IDFweCBzb2xpZCAjZmRlYTg4OyBib3JkZXItcmFkaXVzOiA0cHg7IC1tb3otYm9yZGVyLXJhZGl1czogNHB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDsgY3Vyc29yOiBwb2ludGVyOyBwYWRkaW5nOiAwIDNweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4uYnV0dG9uLWFkZCBpbWcsICAuYnV0dG9uLXJlbW92ZSBpbWcgICAgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy91aUFkZFJlbW92ZS5wbmcnKSA5cHggMDsgY3Vyc29yOiBwb2ludGVyOyBoZWlnaHQ6IDlweDsgd2lkdGg6IDlweDsgfVxuLmJ1dHRvbi1hZGQgc3BhbiwgLmJ1dHRvbi1yZW1vdmUgc3BhbiAgIHsgZm9udC1zaXplOiAxMHB4OyB9XG5cbi8qIHNwZWNpZmljcyAqL1xuLmJ1dHRvbi1hZGQgaW1nICAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuLmJ1dHRvbi1yZW1vdmUgICAgICB7IG1hcmdpbjogMCAwIDAgNXB4OyB9XG5cbi8qIGxpbmsgc3RhdGVzICovXG4uYnV0dG9uLWFkZDpob3Zlcixcbi5idXR0b24tcmVtb3ZlOmhvdmVyICAgICAgeyBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4uYnV0dG9uLWFkZDpob3ZlciBpbWcgICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOXB4OyB9XG4uYnV0dG9uLWFkZDphY3RpdmUgaW1nICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMThweDsgfVxuLmJ1dHRvbi1yZW1vdmU6aG92ZXIgaW1nICB7IGJhY2tncm91bmQtcG9zaXRpb246IDlweCAtOXB4OyB9XG4uYnV0dG9uLXJlbW92ZTphY3RpdmUgaW1nIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogOXB4IC0xOHB4OyB9XG5cbi8qIExpc3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Njcm9sbF9jb250ZW50IHVsLnBhZCB7IG1hcmdpbjogMWVtIDEuNWVtOyB9XG5cbi8qIENoZWNrYm94ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZmNGb3JtIC5jaGVja2JveGVzICAgIHsgbWFyZ2luOiAwIGF1dG87IH1cbi5mY0Zvcm0gLmNoZWNrYm94ZXMgdHIgeyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNmZWVjOGY7IH1cbi5mY0Zvcm0gLmNoZWNrYm94ZXMgdGggeyBjb2xvcjogIzdmN2I2ODsgZm9udC1zaXplOiAxMHB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IHBhZGRpbmc6IDVweCAxMHB4IDVweCAwOyB3aWR0aDogYXV0bzsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLmZjRm9ybSAuY2hlY2tib3hlcyB0ZCB7IHBhZGRpbmc6IDVweDsgfVxuLmZjRm9ybSAuY2hlY2tib3hlcyBiICB7IGNvbG9yOiAjMDAwOyBmb250LXNpemU6IDEycHg7IH1cblxuLyogU2xpZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sYlNsaWRlci1pbnB1dCAgICAgICAgIHsgZmxvYXQ6IGxlZnQ7IHRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogMzVweDsgfVxuLmxiU2xpZGVyLXRyYWNrICAgICAgICAgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0LXBhdGgtZm9yKycvYXBwX2ltYWdlcy9zbGlkZXJDb250cm9scy5wbmcnKTsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogNXB4OyBtYXJnaW46IDVweCAxMHB4IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDM1MHB4OyB9XG4ubGJTbGlkZXItaGFuZGxlICAgICAgICB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXQtcGF0aC1mb3IrJy9hcHBfaW1hZ2VzL3NsaWRlckNvbnRyb2xzLnBuZycpIDAgLTVweDsgY3Vyc29yOiBtb3ZlOyBoZWlnaHQ6IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAtOHB4OyB3aWR0aDogMjBweDsgfVxuLmxiU2xpZGVyLWhhbmRsZTpob3ZlciAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNXB4OyBjdXJzb3I6IG1vdmU7IH1cbi5sYlNsaWRlci1oYW5kbGU6YWN0aXZlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTVweDsgY3Vyc29yOiBtb3ZlOyB9XG5cbi8qIFNsaWRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jcGFnZU5vZGUtY29sdW1ucyAgICAgICAgICAgICAgICAgICAgIHsgLypsaW5lLWhlaWdodDoxOHB4OyovIG1hcmdpbjo0cHggMCAwOyB9XG4jcGFnZU5vZGUtY29sdW1ucyBpbWcsXG4jcGFnZU5vZGUtY29sdW1ucyBpbnB1dCAgICAgICAgICAgICAgIHsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMCA0cHggMCAwOyB9XG4jbGlnaHRib3hCb2R5ICNwYWdlTm9kZS1jb2x1bW5zIHAgICAgIHsgbWFyZ2luOiAwIDAgOHB4OyB9XG5cbi8qIFRhYmJlZCBFbGVtZW50IEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWI6Zmlyc3QtY2hpbGQgLmJ1dHRvbi1tb3ZlLXVwIHsgZGlzcGxheTogbm9uZTsgfVxuLnRhYkVsZW1lbnRGb3JtIC5sYXlvdXRfdGFiOmxhc3QtY2hpbGQgLmJ1dHRvbi1tb3ZlLWRvd24geyBkaXNwbGF5OiBub25lOyB9XG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwLCAudGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLWRvd24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmYmU4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmRlYTg4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMCAzcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzVGNjU2Njtcbn1cbi50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtdXA6aG92ZXIsIC50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtZG93bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwOmFjdGl2ZSwgLnRhYkVsZW1lbnRGb3JtIC5sYXlvdXRfdGFiIC5idXR0b24tbW92ZS1kb3duOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmU5OGM7XG59XG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwIGltZywgLnRhYkVsZW1lbnRGb3JtIC5sYXlvdXRfdGFiIC5idXR0b24tbW92ZS1kb3duIGltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxNHB4O1xuICB3aWR0aDogMTRweDtcbiAgdG9wOiAycHg7XG59XG4udGFiRWxlbWVudEZvcm0gLmxheW91dF90YWIgLmJ1dHRvbi1tb3ZlLXVwIHNwYW4sIC50YWJFbGVtZW50Rm9ybSAubGF5b3V0X3RhYiAuYnV0dG9uLW1vdmUtZG93biBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0ycHg7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4vLyBSU1MgRmVlZCBTdHlsaW5nXG4uaGVscGVyTGlnaHRib3h7XG4gICNsaWdodGJveEhlYWRlcntcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzk5OTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogI0RERDtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgICBoMXtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDg1JTtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gICAgYXtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjOTk5O1xuICAgIH1cbiAgfVxuICAjbGlnaHRib3hCb2R5IGg0e1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM5OTk7XG4gIH1cbiAgI2xpZ2h0Ym94Rm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjREREO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgI2xpZ2h0Ym94RmVlZGJhY2t7XG4gICAgICBiYWNrZ3JvdW5kOiAjREREO1xuICAgIH1cbiAgfVxuICAuZmVlZExpbmt7XG4gICAgbWF4LXdpZHRoOjEwMCU7XG4gIH1cbn0iLCIucGFnZUVsZW1lbnQuc3RyZWFtaW5nVmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcblxuICBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsIiNzdXJ2ZXlfc3RlcHMge1xuICAudmV2ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLmRhdGVJbWFnZSB7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubW9udGgge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlua19jb2xvcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICAuZGF0ZSB7XG4gICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxuICAuc3VtbWFyeSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5zdGF0dXMge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5kZXRhaWxzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gIC5zdXJ2ZXlCdXR0b25XcmFwIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5zZWN1cmVDaGVja291dE1lc3NhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4iLCJib2R5I3N1cnZleV9zdGVwcyB7IHBhZGRpbmc6IDA7IH1cblxuaHRtbCB7XG5cbiAgYm9keSB7XG4gICAgcGFkZGluZy10b3A6ICRhY2NvdW50LW5hdi1oZWlnaHQtZGVza3RvcDtcblxuICAgICYubm9Vc2VyQmFyIHsgcGFkZGluZy10b3A6IDA7IH1cbiAgfVxuXG4gICYuaGFzLW1vYmlsZS1uYXYge1xuICAgIGJvZHkge1xuICAgICAgcGFkZGluZy10b3A6ICRhY2NvdW50LW5hdi1oZWlnaHQtbW9iaWxlO1xuICAgIH1cblxuICAgIC8vIHBvc2l0aW9uIHJlbGF0aXZlIHRvIGF2b2lkIGNvbmZsaWN0cyB3aXRoIHRoZSBzbWFydCBhcHAgYmFubmVyIChhZGRzIGh0bWwgbWFyZ2luKVxuICAgICNhY2NvdW50TmF2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IC0kYWNjb3VudC1uYXYtaGVpZ2h0LW1vYmlsZTtcbiAgICB9XG4gIH1cblxuICAmLnBhZ2UtbWFuYWdlci12aXNpYmxlIHtcbiAgICBib2R5IHsgcGFkZGluZy1sZWZ0OiAkcGFnZS1tYW5hZ2VyLXdpZHRoOyB9XG4gICAgI3RvcE5hdiB7IG1hcmdpbi1sZWZ0OiAkcGFnZS1tYW5hZ2VyLXdpZHRoOyB9XG4gIH1cblxuICAmLm5hdi1maXhlZCB7XG4gICAgLnNpdGUtYmFja2dyb3VuZCB7XG4gICAgICBtYXJnaW4tdG9wOiAkbmF2LXBsYWNlaG9sZGVyLWhlaWdodC1maXhlZCAtICRuYXYtcGxhY2Vob2xkZXItaGVpZ2h0O1xuICAgICAgYm90dG9tOiAkbmF2LXBsYWNlaG9sZGVyLWhlaWdodC1maXhlZCAtICRuYXYtcGxhY2Vob2xkZXItaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gICY6bm90KC5jb2xsYXBzZWQtbW9iaWxlLW5hdikge1xuXG4gICAgLnNpdGUtYmFja2dyb3VuZCB7XG4gICAgICB0cmFuc2l0aW9uOiBtYXJnaW4tdG9wICR0cmFuc2l0aW9uLWxpbmVhciwgYm90dG9tICR0cmFuc2l0aW9uLWxpbmVhcjtcbiAgICB9XG5cbiAgICAmOm5vdCguaGFzLXN1Yi1uYXYpIHtcbiAgICAgIC5zaXRlLWJhY2tncm91bmQgeyBtYXJnaW4tdG9wOiAtJHN1Yi1uYXYtaGVpZ2h0OyB9XG5cbiAgICAgICYubmF2LWZpeGVkIHtcbiAgICAgICAgLnNpdGUtYmFja2dyb3VuZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogJG5hdi1wbGFjZWhvbGRlci1oZWlnaHQtZml4ZWQgLSAkbmF2LXBsYWNlaG9sZGVyLWhlaWdodCAtICRzdWItbmF2LWhlaWdodC1maXhlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY29sbGFwc2VkLW1vYmlsZS1uYXYge1xuICAgIC5zaXRlLWJhY2tncm91bmQgeyBtYXJnaW4tdG9wOiAtJG5hdi1wbGFjZWhvbGRlci1oZWlnaHQ7IH1cbiAgfVxufVxuIiwiI3NpdGVDb250YWluZXIge1xuICAmLCAjc2l0ZUNvbnRhaW5lci5jb250YWluZXItZmx1aWQge1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6ICRtYXhXaWR0aDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRuYXYtcGxhY2Vob2xkZXItaGVpZ2h0fSAtICN7JHNpdGUtZm9vdGVyLWhlaWdodH0gLSAjeyRhY2NvdW50LW5hdi1oZWlnaHQtZGVza3RvcH0pO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgeyBtYXgtd2lkdGg6MTAyNHB4OyB9XG5cbiAgI2Rpc3BsYXlCb2R5SGVhZGVyOm5vdCguZGlzcGxheUJvZHlIZWFkZXItaW1hZ2UpIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gICN5aWVsZENvbnRlbnQucm93IHsgbWFyZ2luOiBhdXRvOyB9XG5cbiAgI3BhbmVsT25lIHsgcGFkZGluZzogMDsgfVxuXG4gIC55aWVsZFBhZ2VDb250ZW50IHsgcGFkZGluZzowOyB9XG59XG4iLCIvLyA0LiBTaXRlIEhlYWRlclxuXG4vLyAuaG9tZSAjZGlzcGxheUJvZHlIZWFkZXIgeyBkaXNwbGF5OiBub25lOyB9XG4uc2l0ZS1iYW5uZXItd3JhcHBlciB7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogJG1heFdpZHRoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5zaXRlLWJhbm5lci10ZXh0LXdyYXBwZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAuNWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGgyLCBoMyB7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2OTlweCkge1xuICAuc2l0ZS1iYW5uZXItd3JhcHBlciAuc2l0ZS1iYW5uZXItdGV4dC13cmFwcGVyIHtcbiAgICBmb250LXNpemU6IDQuNXZ3O1xuXG4gICAgaDEgeyBmb250LXdlaWdodDogNzAwOyB9XG4gICAgaDIsIGgzIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAuc2l0ZS1iYW5uZXItd3JhcHBlciAuc2l0ZS1iYW5uZXItdGV4dC13cmFwcGVyIHsgZm9udC1zaXplOiAzLjZ2dzsgfVxufVxuIiwiLy8gTU9EUyBGT1IgTU9CSUxFIE5BViBESVNQTEFZXG5cbmh0bWwuaGFzLW1vYmlsZS1uYXYge1xuICAudGhlbWUtc2VhcmNoLXdyYXBwZXIsXG4gIC50aGVtZS1tYWluLW5hdixcbiAgLnRoZW1lLXN1Yi1uYXYsXG4gICNzbi1zaXRlLWxvZ28sXG4gICN0b3BOYXZQbGFjZWhvbGRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbn1cblxuQG1peGluIG5hdkl0ZW1BZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJG5hdi1pdGVtLWJlZm9yZS1zaXplO1xuICBoZWlnaHQ6ICRuYXYtaXRlbS1iZWZvcmUtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRuYXYtaXRlbS1iZWZvcmUtc2l6ZTtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6ICRuYXYtaXRlbS1iZWZvcmUtc2l6ZTtcbiAgY29sb3I6ICRtYWluLW5hdi10ZXh0LWNvbG9yO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICB0cmFuc2l0aW9uOlxuICAgIGNvbG9yICR0cmFuc2l0aW9uLWxpbmVhcixcbiAgICB0b3AgJHRyYW5zaXRpb24tbGluZWFyO1xufVxuXG5AbWl4aW4gbmF2SXRlbUFmdGVySG92ZXIge1xuICBjb2xvcjogJGFjY2VudC1jb2xvcjtcbn1cblxuI3RvcE5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWluLXdpZHRoOiAyNTBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgei1pbmRleDogNDAwO1xuXG4gIC5jb2xsYXBzZWQtbW9iaWxlLW5hdiAmIHsgdG9wOiAkYWNjb3VudC1uYXYtaGVpZ2h0LW1vYmlsZTsgfVxuXG4gIC8vIFNFQVJDSCBCQVJcblxuICAudGhlbWUtc2VhcmNoLWJhciB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgaGVpZ2h0OiAkc2l0ZS10YWdsaW5lLWhlaWdodDtcblxuICAgIC50aGVtZS1zZWFyY2gtYm94IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogLSRzaXRlLXNlYXJjaC1oZWlnaHQgMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBAaW5jbHVkZSBmbGV4KDAsMCxhdXRvKTtcbiAgICAgIGhlaWdodDogJHNpdGUtc2VhcmNoLWhlaWdodDtcblxuICAgICAgfiAudGhlbWUtc2VhcmNoLWJveCB7IG1hcmdpbi1sZWZ0OiAkc2l0ZS1zZWFyY2gtc3BhY2luZzsgfVxuICAgIH1cblxuICAgIC50aGVtZS1zZWFyY2gtaW5wdXQsXG4gICAgLnRoZW1lLXNlYXJjaC1zdWJtaXQsXG4gICAgLnRoZW1lLXNlYXJjaC1jbGVhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGhlaWdodDogJHNpdGUtc2VhcmNoLWhlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc2l0ZS1zZWFyY2gtaGVpZ2h0O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkdHJhbnNpdGlvbi1saW5lYXI7XG4gICAgfVxuXG4gICAgLnRoZW1lLXNlYXJjaC1pbnB1dCxcbiAgICAudGhlbWUtc2VhcmNoLWNsZWFyIHsgZm9udC1zaXplOiAkc2l0ZS1zZWFyY2gtaW5wdXQtZm9udC1zaXplOyB9XG5cbiAgICAudGhlbWUtc2VhcmNoLWlucHV0IHtcbiAgICAgIGJhY2tncm91bmQ6ICRzaXRlLXNlYXJjaC1pbnB1dC1iYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyOiAkc2l0ZS1zZWFyY2gtYm9yZGVyLXdpZHRoIHNvbGlkICRzaXRlLXNlYXJjaC1pbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwICgkc2l0ZS1zZWFyY2gtaGVpZ2h0IC0gJHNpdGUtc2VhcmNoLWJvcmRlci13aWR0aCAqIDIpIDAgJHNpdGUtc2VhcmNoLXNwYWNpbmc7XG5cbiAgICAgICY6Oi1tcy1jbGVhciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2l0ZS1zZWFyY2gtaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGhlbWUtc2VhcmNoLXN1Ym1pdCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogJHNpdGUtc2VhcmNoLXN1Ym1pdC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogJHNpdGUtc2VhcmNoLXN1Ym1pdC1mb250LXNpemU7XG4gICAgICBib3JkZXI6ICRzaXRlLXNlYXJjaC1ib3JkZXItd2lkdGggc29saWQgJHNpdGUtc2VhcmNoLXN1Ym1pdC1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAwICRzaXRlLXNlYXJjaC1zcGFjaW5nO1xuICAgICAgYmFja2dyb3VuZDogJHNpdGUtc2VhcmNoLXN1Ym1pdC1iYWNrZ3JvdW5kO1xuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICRzaXRlLXNlYXJjaC1zdWJtaXQtYmFja2dyb3VuZC1mb2N1czsgfVxuICAgIH1cblxuICAgIC50aGVtZS1zZWFyY2gtY2xlYXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tbGVmdDogMCAtICRzaXRlLXNlYXJjaC1oZWlnaHQgLSAkc2l0ZS1zZWFyY2gtYm9yZGVyLXdpZHRoO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkc2l0ZS1zZWFyY2gtYm9yZGVyLXdpZHRoO1xuICAgICAgd2lkdGg6ICRzaXRlLXNlYXJjaC1oZWlnaHQ7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLinJVcIjtcbiAgICAgICAgY29sb3I6ICM5Y2E4YWY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zaXplOiAkc2l0ZS1zZWFyY2gtaW5wdXQtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1BSU4gJiBTVUIgTkFWIFNIQVJFRCBTVFlMRVNcblxuICAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duLFxuICAudGhlbWUtbmF2LWRyb3Bkb3duIHtcbiAgICAucGF5d2FsbF9pbWFnZSB7XG4gICAgICBoZWlnaHQ6IC43NWVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuMWVtO1xuICAgIH1cbiAgfVxuXG4gIC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24ge1xuXG4gICAgLyogTGV2ZWwgT25lICovXG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gLnRoZW1lLW5hdi1pdGVtLFxuICAgID4gLnRoZW1lLW5hdi10aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICA+IC50aGVtZS1uYXYtdGl0bGUgYSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6ICRzdWItbmF2LXRpdGxlLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwICRzdWItbmF2LXRpdGxlLXNwYWNpbmcqLjcgMCAkc3ViLW5hdi10aXRsZS1zcGFjaW5nO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZjEwNSc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRzdWItbmF2LXRpdGxlLXNwYWNpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAudGhlbWUtbmF2LWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmLmhhc0NoaWxkID4gLnRoZW1lLW5hdi1saW5rOmFmdGVyIHsgQGluY2x1ZGUgbmF2SXRlbUFmdGVyOyB9XG4gICAgICAmLmRyb3Bkb3duLW9wZW4gPiAudGhlbWUtbmF2LWxpbms6YWZ0ZXIgeyBAaW5jbHVkZSBuYXZJdGVtQWZ0ZXJIb3ZlcjsgfVxuXG4gICAgICA+IC50aGVtZS1uYXYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO1xuXG4gICAgICAgICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEUk9QRE9XTlMgKG1haW5uYXYgJiBzdWJuYXYpXG5cbiAgICAudGhlbWUtbmF2LW1vcmUgPiBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgICAgbWFyZ2luLWxlZnQ6IC4zZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0uMWVtO1xuICAgIH1cblxuICAgIC50aGVtZS1uYXYtbGluayB7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBjb2xvciAkdHJhbnNpdGlvbi1saW5lYXIsXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tbGluZWFyO1xuICAgIH1cblxuICAgIH4gLnRoZW1lLW5hdi1kcm9wZG93biB7XG4gICAgICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG4gICAgXHRkaXNwbGF5OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBcdHRleHQtYWxpZ246IGxlZnQ7XG4gICAgXHRiYWNrZ3JvdW5kOiAkZHJvcGRvd24tY29sb3I7XG4gICAgXHRib3JkZXItdG9wOiAkZHJvcGRvd24tYm9yZGVyO1xuICAgIFx0ei1pbmRleDogMjAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLDAsMCwuMSk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgb3BhY2l0eSAkdHJhbnNpdGlvbi1saW5lYXIsXG4gICAgICAgIG1hcmdpbi10b3AgJHRyYW5zaXRpb24tbGluZWFyO1xuXG4gICAgICAmLmxvYWRpbmc6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJMb2FkaW5nLi4uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHBhZGRpbmc6IDAgJGRyb3Bkb3duLXNwYWNpbmc7XG4gICAgICB9XG5cbiAgICBcdD4gLnRoZW1lLW5hdi1pdGVtIHtcbiAgICAgIFx0ZGlzcGxheTogdGFibGU7XG4gICAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcdFx0d2lkdGg6IDEwMCU7XG4gICAgXHRcdG1pbi1oZWlnaHQ6ICRkcm9wZG93bi1pdGVtLWhlaWdodDtcbiAgICBcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXG4gICAgXHRcdCY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuICAgICAgICAmLmhhc0NoaWxkID4gLnRoZW1lLW5hdi1saW5rIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2luZyAqIDI7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJG5hdi1pdGVtLWJlZm9yZS1zaXplIC8gLTI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJG5hdi1pdGVtLWJlZm9yZS1zaXplO1xuICAgICAgICAgICAgd2lkdGg6ICRkcm9wZG93bi1zcGFjaW5nICsgJG5hdi1pdGVtLWJlZm9yZS1zaXplIC8gMjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBmb250LXNpemU6ICRuYXYtaXRlbS1iZWZvcmUtc2l6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoICR0cmFuc2l0aW9uLWxpbmVhcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRyb3Bkb3duLW9wZW4gPiAudGhlbWUtbmF2LWxpbms6YmVmb3JlIHtcbiAgICAgICAgICBjb2xvcjogJGFjY2VudC1jb2xvcjtcbiAgICAgICAgICB3aWR0aDogJGRyb3Bkb3duLXNwYWNpbmcgKiAwLjIgKyAkbmF2LWl0ZW0tYmVmb3JlLXNpemU7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICBcdD4gLnRoZW1lLW5hdi1saW5rIHtcbiAgICAgICAgICBjb2xvcjogJGRyb3Bkb3duLXRleHQtY29sb3I7XG4gICAgICAgIFx0ZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBcdHBhZGRpbmc6ICRkcm9wZG93bi1zcGFjaW5nLzIgJGRyb3Bkb3duLXNwYWNpbmc7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIFx0XHRsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgIFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgJjpub3QoeCk6aG92ZXIgeyAvLyA6bm90KCkgZm9yIHNwZWNpZmljaXR5IG92ZXIgc2VsZWN0ZWQgc3RhdGVcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICAgIH1cbiAgICAgIFx0fVxuXG5cbiAgICAgICAgJi5zZWxlY3RlZCA+IC50aGVtZS1uYXYtbGluayB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1zZWxlY3RlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzYWJsZWQgPiAudGhlbWUtbmF2LWxpbmsge1xuICAgICAgICAgIGNvbG9yOiAkZHJvcGRvd24tdGV4dC1kaXNhYmxlZDtcblxuICAgICAgICAgICY6aG92ZXIgeyBjb2xvcjogJGRyb3Bkb3duLXRleHQtZGlzYWJsZWQtaG92ZXI7IH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmW2RhdGEtbmF2LWxldmVsPVwiMlwiXSB7IG1hcmdpbi10b3A6IC0kZHJvcGRvd24tc2hpZnQtdmVydDsgfVxuXG4gICAgICAmOm5vdChbZGF0YS1uYXYtbGV2ZWw9XCIyXCJdKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7ICAvLyBvZnNldCBmb3IgMXB4IGJvZGVyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGRyb3Bkb3duLXNoaWZ0LWhvcml6O1xuICAgICAgfVxuXG4gICAgICAmLmRyb3Bkb3duLWFsaWduLXJpZ2h0Om5vdChbZGF0YS1uYXYtbGV2ZWw9XCIyXCJdKSB7IG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc2hpZnQtaG9yaXo7IH1cblxuICAgICAgJi5kcm9wZG93bi1vcGVuaW5nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG5cbiAgICAgICYuZHJvcGRvd24tb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICZbZGF0YS1uYXYtbGV2ZWw9XCIyXCJdIHsgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAmOm5vdChbZGF0YS1uYXYtbGV2ZWw9XCIyXCJdKSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC13cmFwcGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAkc2l0ZS10YWdsaW5lLXNlcGFyYXRvcjtcbiAgICBjb2xvcjogJHNpdGUtdGFnbGluZS10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaXRlLXRhZ2xpbmUtY29sb3I7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LWZhbWlseTogJGZvbnRPbmU7XG4gICAgZm9udC1zaXplOmVtKDEyKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnNpdGUtdGFnbGluZS10ZXh0IHtcbiAgICBwYWRkaW5nOiAwICRzaXRlLXRhZ2xpbmUtc3BhY2luZztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGZsZXgoMSwxLDEwMCUpO1xuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC1iYXIge1xuICAgIGxpbmUtaGVpZ2h0OiAkc2l0ZS10YWdsaW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBmbGV4LWJveChyb3cpO1xuXG4gICAgLnRoZW1lLXBhZ2Utc2VhcmNoIHsgQGluY2x1ZGUgZmxleCgwKTsgfVxuICB9XG5cbiAgLnRoZW1lLW1haW4tbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAkbWFpbi1uYXYtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkbWFpbi1uYXYtdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcblxuICAgIC50aGVtZS1uYXYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRtYWluLW5hdi1oZWlnaHQ7XG5cbiAgICAgID4gLnRoZW1lLW5hdi1pdGVtIHtcblxuICAgICAgICA+IC50aGVtZS1uYXYtbGluayB7XG4gICAgICAgICAgY29sb3I6ICRtYWluLW5hdi10ZXh0LWNvbG9yO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDAgJG1haW4tbmF2LXNwYWNpbmc7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcblxuICAgICAgICAgICY6bm90KHgpOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gLy8gOm5vdCgpIGZvciBzcGVjaWZpY2l0eSBvdmVyIHNlbGVjdGVkIHN0YXRlXG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICA+IC50aGVtZS1uYXYtbGluayB7IGNvbG9yOiAkbWFpbi1uYXYtdGV4dC1kaXNhYmxlZDsgfVxuICAgICAgICAgICY6aG92ZXIgPiAudGhlbWUtbmF2LWxpbmsgeyBjb2xvcjogJG1haW4tbmF2LXRleHQtZGlzYWJsZWQtaG92ZXI7IH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VsZWN0ZWQgPiAudGhlbWUtbmF2LWxpbmsgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aGVtZS1zdWItbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAkc3ViLW5hdi1mb250LXNpemU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogJHNpdGUtdGFnbGluZS1zZXBhcmF0b3I7XG5cbiAgICAudGhlbWUtbmF2IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc3ViLW5hdi1oZWlnaHQ7XG5cbiAgICAgID4gLnRoZW1lLW5hdi1pdGVtLmRpc2FibGVkIHtcbiAgICAgICAgPiAudGhlbWUtbmF2LWxpbmsgeyBjb2xvcjogJHN1Yi1uYXYtdGV4dC1kaXNhYmxlZDsgfVxuICAgICAgICAmOmhvdmVyID4gLnRoZW1lLW5hdi1saW5rIHsgY29sb3I6ICRzdWItbmF2LXRleHQtZGlzYWJsZWQtaG92ZXI7IH1cbiAgICAgIH1cblxuICAgICAgPiAudGhlbWUtbmF2LWl0ZW0ge1xuXG4gICAgICAgID4gLnRoZW1lLW5hdi1saW5rIHtcbiAgICAgICAgICBjb2xvcjogJHN1Yi1uYXYtdGV4dC1jb2xvcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAwICRzdWItbmF2LXNwYWNpbmc7XG5cbiAgICAgICAgICAmOm5vdCh4KTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICRzdWItbmF2LWhvdmVyLWNvbG9yOyB9IC8vIDpub3QoKSBmb3Igc3BlY2lmaWNpdHkgb3ZlciBzZWxlY3RlZCBzdGF0ZVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWxlY3RlZCA+IC50aGVtZS1uYXYtbGluayB7IGJhY2tncm91bmQtY29sb3I6ICRzdWItbmF2LXNlbGVjdGVkOyB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmVtcHR5IHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG5cbiAgLnRoZW1lLXNlYXJjaC13cmFwcGVyLFxuICAudGhlbWUtbWFpbi1uYXYsXG4gIC50aGVtZS1zdWItbmF2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC50aGVtZS1zZWFyY2gtYmFyLFxuICAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogJG1heFdpZHRoO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBtYXgtd2lkdGggJHRyYW5zaXRpb24tbGluZWFyLFxuICAgICAgbGVmdCAkdHJhbnNpdGlvbi1saW5lYXIsXG4gICAgICBoZWlnaHQgJHRyYW5zaXRpb24tbGluZWFyLFxuICAgICAgbGluZS1oZWlnaHQgJHRyYW5zaXRpb24tbGluZWFyO1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICB9XG5cbiAgJi5oYXMtc2l0ZS1sb2dvIHtcbiAgICAudGhlbWUtc2VhcmNoLWJhcixcbiAgICAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIHtcbiAgICAgIG1heC13aWR0aDogJG1heFdpZHRoIC0gJHNpdGUtbG9nby1zaXplO1xuICAgICAgbGVmdDogJHNpdGUtbG9nby1zaXplLzI7XG4gICAgfVxuXG4gICAgLnRoZW1lLXN1Yi1uYXYge1xuICAgICAgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB7XG4gICAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cblxuI2hvbWUgI3RvcE5hdiB7XG5cbiAgJi5oYXMtc2l0ZS1sb2dvIHtcbiAgICAudGhlbWUtc3ViLW5hdiB7XG4gICAgICAudGhlbWUtbmF2LXN0eWxlLWRyb3Bkb3duIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTQ1cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8gMy4gTmF2aWdhdGlvbiBhbmQgTG9nb1xuI3RvcE5hdi5uYXYtZml4ZWQge1xuICB0b3A6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcblxuICAudGhlbWUtc2VhcmNoLWJhciB7XG4gICAgbGluZS1oZWlnaHQ6ICRzaXRlLXRhZ2xpbmUtaGVpZ2h0LWZpeGVkO1xuICAgIGhlaWdodDogJHNpdGUtdGFnbGluZS1oZWlnaHQtZml4ZWQ7XG4gIH1cblxuICAudGhlbWUtbWFpbi1uYXYge1xuICAgIC50aGVtZS1uYXYgeyBsaW5lLWhlaWdodDogJG1haW4tbmF2LWhlaWdodC1maXhlZDsgfVxuXG4gICAgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5oYXNDaGlsZCA+IC50aGVtZS1uYXYtbGluazpiZWZvcmUgeyBoZWlnaHQ6IDhweDsgfVxuICB9XG5cbiAgLnRoZW1lLXN1Yi1uYXYge1xuICAgIC50aGVtZS1uYXYgeyBsaW5lLWhlaWdodDogJHN1Yi1uYXYtaGVpZ2h0LWZpeGVkOyB9XG4gIH1cblxuICAmLmhhcy1zaXRlLWxvZ28ge1xuICAgIC50aGVtZS1zZWFyY2gtYmFyLFxuICAgIC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24geyBsZWZ0OiAkc2l0ZS1sb2dvLXNpemUtZml4ZWQgLSAkc2l0ZS1sb2dvLXNpemUgLyAyOyB9XG4gIH1cbn1cblxuLy8gUGxhY2Vob2xkZXIgc3R5bGVzIGZvciB3aGVuIHRvcCBuYXYgZ29lcyBmaXhlZC4gSWYgdGhlcmUgaXMgbm8gc3ViIG5hdiBhbmQgbm9cbi8vIGJhbm5lciBncmFwaGljLCB0aGlzIGZpbGxzIGluIHRoZSBnYXAgYW5kIHZpc3VhbGx5IGJsZW5kcyB3aXRoIHRoZSBwYWdlIGNvbnRlbnQuXG5cbiN0b3BOYXZQbGFjZWhvbGRlciB7XG4gIGJvcmRlci1ib3R0b206ICRzdWItbmF2LWhlaWdodCBzb2xpZCAjZmZmO1xuICBtYXgtd2lkdGg6ICRtYXhXaWR0aDtcbiAgbWFyZ2luOiBhdXRvO1xuICBoZWlnaHQ6ICRuYXYtcGxhY2Vob2xkZXItaGVpZ2h0O1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgJHRyYW5zaXRpb24tbGluZWFyO1xuXG4gICYucGFnZS1oYXMtYmFubmVyIHsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxufVxuXG4jdG9wTmF2Lm5hdi1maXhlZCArICN0b3BOYXZQbGFjZWhvbGRlciB7XG4gIGhlaWdodDogJG5hdi1wbGFjZWhvbGRlci1oZWlnaHQtZml4ZWQ7XG59XG5cbi8vIEFkZCBwYWRkaW5nIHRvIGh0bWwgdG8gYWNjb3VuZCBmb3IgY29sbGFwc2luZyBuYXYgKGFuZCBhdm9pZCBmbGlja2VyIGFuaW1hdGlvbilcbmh0bWwge1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nLWJvdHRvbSAkdHJhbnNpdGlvbi1saW5lYXI7XG59XG5cbi8vIElmIHN1Ym5hdiBpcyBub3QgcHJlc2VudCwgdGhlIHNpdGUgYmFubmVyIHNob3VsZCBzbGlkZSB1cCB1bmRlciB0aGUgc2l0ZSBsb2dvLlxuaHRtbC5oYXMtbWFpbi1uYXY6bm90KC5oYXMtc3ViLW5hdikge1xuICAjc2l0ZUhlYWRlciB7IG1hcmdpbi10b3A6IC0kc3ViLW5hdi1oZWlnaHQ7IH1cbiAgI3RvcE5hdi5uYXYtZml4ZWQgfiAjc2l0ZUhlYWRlciB7IG1hcmdpbi10b3A6IC0kc3ViLW5hdi1oZWlnaHQtZml4ZWQ7IH1cbn1cbiIsIi50aGVtZS1uZXR3b3JrLWJhciB7XG4gIHBhZGRpbmc6IDAgJHNpdGUtdGFnbGluZS1zcGFjaW5nO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgQGluY2x1ZGUgZmxleCgxLDEsMTAwJSk7XG5cbiAgLnRoZW1lLW5ldHdvcmstYmFyLXNpdGUtdGl0bGUgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgJjpub3QoLmNvbXBhY3Qtc3R5bGUpIHtcblxuICAgIC50aGVtZS1uZXR3b3JrLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAudGhlbWUtbmV0d29yay1iYXItc2l0ZXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICAudGhlbWUtbmV0d29yay1iYXItc2l0ZSB7XG4gICAgICBwYWRkaW5nOiA1cHggM3B4O1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4zKTsgfVxuICAgIH1cblxuICAgIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLWxvZ28ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgJiArIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLW5hbWUgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG4gICAgLnRoZW1lLW5ldHdvcmstYmFyLXNpdGUtbmFtZSB7IHBhZGRpbmc6IDAgNHB4OyB9XG4gIH1cblxuICAmLmNvbXBhY3Qtc3R5bGUge1xuICAgIC50aGVtZS1uZXR3b3JrLWJhci10aXRsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3ItZGFya2VuLTEwO1xuICAgICAgcGFkZGluZzogMnB4IDVweDtcblxuICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yLWRhcmtlbi0yMDsgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgQGluY2x1ZGUgZmEtaWNvbjtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjsgLy8gZHJvcGRvd24gYXJyb3dcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLk5HSU5fdGlwLnRoZW1lLW5ldHdvcmstYmFyLWRyb3Bkb3duIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYmFja2dyb3VuZDogJGxpbmstY29sb3ItZGFya2VuLTEwO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuXG4gIC5jb250YWluZXIgeyBwYWRkaW5nOiAwOyB9XG5cbiAgLmNsb3NlX3RpcCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAudGhlbWUtbmV0d29yay1iYXItc2l0ZXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAudGhlbWUtbmV0d29yay1iYXItc2l0ZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTUpOyB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aGVtZS1uZXR3b3JrLWJhci1zaXRlLWxvZ28geyBkaXNwbGF5OiBub25lOyB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmYS1pY29uIHtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xufVxuIiwiI25ldHdvcmtOYXZNZW51VGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAmLCAudGhlbWUtbmF2LWJhY2sgeyBiYWNrZ3JvdW5kOiAkbGluay1jb2xvci1kYXJrZW4tMTA7IH1cbiAgLnRoZW1lLW5hdi10aXRsZS10ZXh0IHsgcGFkZGluZy1yaWdodDogJHNsaWRlLW5hdi10aXRsZS1oZWlnaHQ7IH1cbn1cblxuI25ldHdvcmtOYXZNZW51U2l0ZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogLTEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMTtcbiAgdHJhbnNpdGlvbjogbGVmdCAyMDBtcyBlYXNlLWluLW91dDtcbiAgQGluY2x1ZGUgZmxleC1ib3goY29sdW1uKTtcblxuICAmLCAudGhlbWUtbmF2LXRpdGxlIHsgYmFja2dyb3VuZDogJGxpbmstY29sb3ItZGFya2VuLTEwOyB9XG4gIC5uZXR3b3JrLW5hdi1leHBhbmRlZCAmIHsgbGVmdDogMDsgfVxufVxuIiwiJHNpdGUtbG9nby1zaXplOiAkc2l0ZS10YWdsaW5lLWhlaWdodCArICRtYWluLW5hdi1oZWlnaHQgKyAkc3ViLW5hdi1oZWlnaHQgKyAzO1xuJHNpdGUtbG9nby1zaXplLWZpeGVkOiAkc2l0ZS10YWdsaW5lLWhlaWdodC1maXhlZCArICRtYWluLW5hdi1oZWlnaHQtZml4ZWQgKyAkc3ViLW5hdi1oZWlnaHQtZml4ZWQgKyAzO1xuXG4jc24tc2l0ZS1sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IDAgLSAkbWF4V2lkdGgvMjtcbiAgd2lkdGg6ICRzaXRlLWxvZ28tc2l6ZTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgcGFkZGluZzogOHB4O1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tbGluZWFyO1xuXG4gICNob21lICYge1xuICAgIG1hcmdpbi1sZWZ0OiAwIC0gJG1heFdpZHRoLzIgLSA3MHB4O1xuICB9XG5cbiAgLm5hdi1maXhlZCAmIHtcbiAgICB3aWR0aDogJHNpdGUtbG9nby1zaXplLWZpeGVkO1xuICAgIGhlaWdodDogNDVweDtcbiAgfVxuXG4gIC5zbi1zaXRlLWxvZ28td3JhcCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuc24tc2l0ZS1sb2dvLWJhY2tncm91bmQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIH1cbn1cbiIsIi8qIFBhZ2UgRWxlbWVudCBEZWZhdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2VFbGVtZW50QWRtaW4geyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuLy8gLnBhZ2VFbGVtZW50IGgzIHsgbWFyZ2luLWJvdHRvbTogLjNlbTsgfVxuLnBhZ2VFbGVtZW50IC5pbnB1dEZvcm0gaDMgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4vLyAucGFnZUVsZW1lbnQgcCB7IG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4ucGFnZUVsZW1lbnQgdGQgcCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmhyRWxlbWVudCB7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybigjRERELHRyYW5zcGFyZW50KTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbjogJGJhc2UtcGFkZGluZy1zbSAwO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5sZWZ0VGV4dEltYWdle1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiA1cHggMTVweCAxMHB4IDA7XG59XG5cbi5yaWdodFRleHRJbWFnZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA1cHggMCAxMHB4IDEwcHg7XG59XG5cbi50ZXh0SW1hZ2VTbWFsbCB7IHdpZHRoOiAxNTBweDsgfVxuLnRleHRJbWFnZU1lZGl1bSB7IHdpZHRoOiAyMDBweDsgfVxuLnRleHRJbWFnZUxhcmdlIHsgd2lkdGg6IDI1MHB4OyB9XG5cbmJvZHkgLmN1dGxpbmUge1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgQGluY2x1ZGUgY2FwdGlvbi1zdHlsZTtcbn1cblxuLyogTWlycm9yIEJ1dHRvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm1pcnJvckJ1dHRvbiB7IGZsb2F0OiBsZWZ0OyB9XG4ubWlycm9yQnV0dG9uIGEge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvbWlycm9yX2NvbnRlbnRfYnV0dG9uLnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIxcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICB3aWR0aDogNzdweDtcbn1cblxuLyogUGFnZSBFbGVtZW50IE1hcmdpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlRWxlbWVudCB7XG4gIGNsZWFyOiBib3RoO1xuXG4gIC5wYWdlRWxlbWVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmxheW91dENvbnRhaW5lciAmIHsgbWFyZ2luOiAwIDAgMTVweDsgfVxufVxuXG4jcGFuZWxUd28gLm1pcnJvck9yaWdpbkxpbmssXG4jcGFuZWxUd28gLm1pcnJvckJ1dHRvbiB7IG1hcmdpbi10b3A6IDNweDsgfVxuXG4ubGF5b3V0Q29udGFpbmVyIC5wYWdlRWxlbWVudEFkbWluIHsgbWFyZ2luOiAwIDEwcHg7IH1cbi5sYXlvdXRDb250YWluZXIgLmNvbHVtbjEgLnBhZ2VFbGVtZW50QWRtaW4gLnBhZ2VFbGVtZW50LFxuLmxheW91dENvbnRhaW5lciAuY29sdW1uMSAucGFnZUVsZW1lbnRBZG1pbiAuaHJFbGVtZW50IHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmhyRWxlbWVudCB7IG1hcmdpbjogMTVweCAxNXB4OyB9XG5cbi8qIFBhZ2UgRWxlbWVudCBUeXBvZ3JhcGh5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi5ib2FyZE1lbWJlckVsZW1lbnQgaDMsXG4vLyAuc3BvbnNvckVsZW1lbnQgaDMsXG4ucGhvdG9HYWxsZXJ5RWxlbWVudCBoMyxcbi5kaXJlY3RvcnlTZWFyY2hFbGVtZW50IGgzLFxuLmRvY3VtZW50RWxlbWVudCBoMyB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTRweDtcbn1cblxuLm1hcmtkb3duRWxlbWVudCBoMSB7IG1hcmdpbi1ib3R0b206IC41ZW07IH1cblxuLmxpbmtFbGVtZW50IGg0LFxuLnBhZ2luYXRpb25FbGVtZW50IGg0LFxuLnBhZ2luYXRpb25OYXYsXG4uc2VhcmNoUmVzdWx0c0VsZW1lbnQgaDMge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnJvc3RlckVsZW1lbnQgaDR7XG5cdG1hcmdpbjo2cHggMDtcbn1cblxuLmJvYXJkTWVtYmVyRWxlbWVudCAucG9zaXRpb24sXG4ucGFnaW5hdGlvbkVsZW1lbnQgLnJlc3VsdHMsXG4uc2VhcmNoQmxvY2sgbGFiZWwsXG4uY2FsUHJldmlld0V2ZW50IC50aW1lIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTFweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5ib2FyZE1lbWJlckVsZW1lbnQgLnBvc2l0aW9uIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uZ2FsbGVyeUVsZW1lbnQgcCB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG59XG5cbi5saW5rRWxlbWVudCAudGV4dCxcbi5jb250YWN0Rm9ybUVsZW1lbnQgLmNvbnRhY3RFbWFpbCxcbi5zaWRlR3JhcGhpY0xpbmsge1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5oZWxwVGV4dCB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5tYXJrZG93bkVsZW1lbnQgcHJlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzMzMztcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5tYXJrZG93bkVsZW1lbnQgcHJlIHsgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLyogUGFnZSBFbGVtZW50IE1pcnJvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5lbGVtZW50UHJldmlldyB7XG4gIGJhY2tncm91bmQ6ICMzQzQwNDYgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL21pcnJvcl9iYWNrZ3JvdW5kLmpwZ1wiKSBuby1yZXBlYXQ7XG4gIF9oZWlnaHQ6IDEwMHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xuICBwYWRkaW5nOiA1cHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jbGlnaHRib3ggLmVsZW1lbnRQcmV2aWV3IHsgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4uZWxlbWVudFByZXZpZXdUaXRsZSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDJweCAwIDNweCAyNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuXG4uZWxlbWVudFByZXZpZXdJbWcgeyBtYXJnaW46IDAgMCA1cHggMjVweDsgfVxuXG4ubWlycm9yU2l0ZUhlYWRlciB7IG1hcmdpbi1ib3R0b206IDNweDsgfVxuXG4ubWlycm9yT3JpZ2luTGluayB7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBsaW5lLWhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogM3B4IDAgM3B4IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI2xpZ2h0Ym94IC5lbGVtZW50UHJldmlldyAubWlycm9yT3JpZ2luTGluayxcbiNwYW5lbFR3byAuZWxlbWVudFByZXZpZXcgLm1pcnJvck9yaWdpbkxpbmssXG4uZWxlbWVudFByZXZpZXcgLm1pcnJvck9yaWdpbkxpbms6aG92ZXIge1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICM2NjY7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDRweCA1cHg7XG4gIHBhZGRpbmc6IDdweCAwIDNweCAyNXB4O1xufVxuXG4ubWlycm9yT3JpZ2luIHtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogM3B4IDAgM3B4IDI1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDNweCAwcHg7XG59XG5cbi5taXJyb3JPcHRpb24geyBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuXG4vKiBNaXJyb3JlZCBQYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lbGVtZW50UHJldmlld1RpdGxlIGEsXG4uZWxlbWVudFByZXZpZXdUaXRsZSBhOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cblxuLnJhcGlkQ29udGVudE1pcnJvciBwIHsgbWFyZ2luOiAxZW0gMDsgfVxuXG5cbi8qIERpc3BsYXkgQm9keSBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZGlzcGxheUJvZHlIZWFkZXItaW1hZ2Uge1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbiIsIi8qIERvY3VtZW50IFBhZ2UgRWxlbWVudCAqL1xuLy8gMS4gRWxlbWVudCBTdHlsaW5nXG4vLyAyLiBEb2N1bWVudCBJY29uc1xuXG4vLyAxLiBFbGVtZW50IFN0eWxpbmdcbi5kb2N1bWVudEVsZW1lbnQge1xuICBoMyB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMCAxZW0gMDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMCA2MHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udFR3bztcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICYuaWNvblNpemVYU3tcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICAgICAgbWluLWhlaWdodDogMTZweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmLmljb25TaXplU3tcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweCAyNHB4O1xuICAgICAgbWluLWhlaWdodDogMjRweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmLmljb25TaXplTXtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzJweCAzMnB4O1xuICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmLmljb25TaXplTHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDhweCA0OHB4O1xuICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNTZweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmLmljb25TaXplWEx7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDYwcHggNjBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDY4cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gMi4gRG9jdW1lbnQgSWNvbnNcbi5wZGZ7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvblBkZi5zdmdcIik7XG59XG5cbi53b3Jke1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25Xb3JkLnN2Z1wiKTtcbn1cblxuLmV4Y2Vse1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25FeGNlbC5zdmdcIik7XG59XG5cbi5wb3dlcnBvaW50e1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25QcHQuc3ZnXCIpO1xufVxuXG4uaWNvblRleHR7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvblRleHQuc3ZnXCIpO1xufVxuXG4uaW1hZ2VCbXB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvbkJtcC5zdmdcIik7XG59XG5cbi5pbWFnZUVwc3tcbiAgYmFja2dyb3VuZC1pbWFnZTogIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kb2NJY29uRXBzLnN2Z1wiKTtcbn1cblxuLmltYWdlR2lme1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25HaWYuc3ZnXCIpO1xufVxuXG4uaW1hZ2VKcGd7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvbkpwZy5zdmdcIik7XG59XG5cbi5pbWFnZVBuZ3tcbiAgYmFja2dyb3VuZC1pbWFnZTogIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kb2NJY29uUG5nLnN2Z1wiKTtcbn1cblxuLmltYWdlVGlme1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25UaWYuc3ZnXCIpO1xufVxuXG4udmlkZW9Bdml7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvbkF2aS5zdmdcIik7XG59XG5cbi52aWRlb01vdntcbiAgYmFja2dyb3VuZC1pbWFnZTogIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kb2NJY29uTW92LnN2Z1wiKTtcbn1cblxuLnZpZGVvTXBne1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25NcGcuc3ZnXCIpO1xufVxuXG4uaWNvbkNzdntcbiAgYmFja2dyb3VuZC1pbWFnZTogIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9kb2NJY29uQ3N2LnN2Z1wiKTtcbn1cblxuLmF1ZGlvTXAze1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25NcDMuc3ZnXCIpO1xufVxuXG4uYXVkaW9XYXZ7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvbldhdi5zdmdcIik7XG59XG5cbi56aXB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZG9jSWNvblppcC5zdmdcIik7XG59XG5cbi5nZW5lcmlje1xuICBiYWNrZ3JvdW5kLWltYWdlOiAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2RvY0ljb25HZW5lcmljLnN2Z1wiKTtcbn1cbiIsIi8qIExpbmsgUGFnZSBFbGVtZW50ICovXG4vLyBBbGwgU3R5bGVzIC0gU3BlY2lmaWMgLmdvVG9MaW5rIGljb24gcmVmZXJlbmNlZCBpbiBfbGlua19pY29uc1xuXG4vLyAxLiBQYWdlIEVsZW1lbnQgU3R5bGVzXG4ubGlua0VsZW1lbnR7XG4gIGg0e1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnQtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcbiAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBvcGFjaXR5OiAuODtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdvVG9MaW5rLFxuICAuZW1haWxMaW5re1xuICAgICY6YmVmb3Jle1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICAmOmFmdGVye1xuICAgICAgY29sb3I6ICRhY2NlbnQtY29sb3I7XG4gICAgICBjb250ZW50OiBcIlxcZjA2MVwiOyAvLyBSaWdodCBBcnJvd1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IC44ZW07XG4gICAgICBtYXJnaW46MCAwIDAgNnB4O1xuICAgICAgcGFkZGluZzowO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xuICAgIH1cbiAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuICAuZW1haWxMaW5rIHtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcXGYwMDNcIjsgLy8gZW52ZWxvcGUtb1xuICAgIH1cbiAgfVxuICAudGV4dHtcbiAgICBmb250LXNpemU6cmVtKDEzKTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgfVxuXG4gIC8vIEFsdGVybmF0IFdoaXRlIExpbmtzXG4gICYuYWx0TGluayB7XG5cbiAgICBoNCBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICAgICAgYm9yZGVyOiBzb2xpZCAycHggd2hpdGU7XG4gICAgICBwYWRkaW5nOiAyOHB4IDMwcHg7XG4gICAgfVxuXG4gIH1cblxuICAvLyBGaW5kL0xvY2F0aW9uIExpbmtzXG4gICYuZmluZCB7XG5cbiAgICBoNCBhIHtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMDQxJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8vIDIuIEFkbWluIFBhbmVsIFN0eWxlc1xuLmFkbWluIC5saW5rRWxlbWVudHtcbiAgaDR7XG4gICAgZm9udC1mYW1pbHk6JGZvbnRPbmU7XG4gICAgZm9udC1zaXplOnJlbSgxOCk7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzoxMHB4IDAgNXB4IDA7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIGF7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBjb2xvcjokbGluay1jb2xvcjtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdvVG9MaW5re1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXJ7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gIC50ZXh0e1xuICAgIGZvbnQtc2l6ZTpyZW0oMTMpO1xuICAgIHBhZGRpbmc6IDAgMCAxMHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxufVxuIiwiLyogQWdncmVnYXRvciBFbGVtZW50cyAqL1xuLy8gMS4gQWdncmVnYXRvciBFbGVtZW50XG4vLyAyLiBBdWRpdCBJdGVtc1xuLy8gVEhJUyBGSUxFIE5FRURTIFRPIEJFIEFVRElURUQgV0hFTi9BUyBBR0dSRUdBVE9SUyBBUkUgQ09NUExFVEVEXG5cbi8vIEFnZ3JlZ2F0b3IgRWxlbWVudFxuLmFnZ3JlZ2F0b3JFbGVtZW50e1xuXHRoNntcblx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEycHg7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRtYXJnaW46IDRweCAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC4xZW07XG5cdH1cblx0Lm5ld3NJbWFnZXtcblx0XHRpbWd7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG5cdC5ib3hzY29yZXtcblx0XHRtYXJnaW46IDNweCAwO1xuXHR9XG5cdC5nYW1lQXJlYXtcblx0XHQuZGV0YWlscywgLnZldmVudCAuc3VtbWFyeXtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cdH1cblx0LnZldmVudHtcblx0XHQuc3RhdFRhYmxle1xuXHRcdFx0YmFja2dyb3VuZDogI0ZGRjtcblx0XHR9XHRcblx0fVxuXHQubmV3c0ltYWdlQ2FwdGlvbntcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG4uYWdncmVnYXRvckVsZW1lbnQgLnBhaWR7XG5cdGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9wYWlkU3RhbXAuZ2lmXCIpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IFxufVxuXG4vLyAyLiBBVURJVCBUSEVTRSBJVEVNUyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBOZXdzIFByZXZpZXc/IChTaG91bGQgYmUgbG9va2VkIGF0KVxuLm5ld3NQcmV2aWV3VGh1bWJ7XG5cdG1hcmdpbjogMCAxMHB4IDEwcHggMDtcblx0ZmxvYXQ6IGxlZnQ7XG5cdGNsZWFyOiBsZWZ0O1xufVxuLm5ld3NQcmV2aWV3VGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiNnYW1lTmV3c0FnZ3JlZ2F0b3J7XG5cdGJvcmRlcjogbm9uZTtcblx0LnRlYXNlciwgLmNvbW1lbnRzQW5kTW9yZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4vLyBMYXlvdXQgQ29udGFpbmVyIEFnZ3JlZ2dhdG9yIE1vZGlmaWNhdGlvbnMgKClcbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiAubmV3c0ltYWdlLFxuLnRocmVlQ29sdW1uNTAyNTI1IC5jb2x1bW4zIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4yNTUwMjUgLmNvbHVtbjEgLm5ld3NJbWFnZSxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyAubmV3c0ltYWdlLFxuLnRocmVlQ29sdW1uMjUyNTUwIC5jb2x1bW4xIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4yNTI1NTAgLmNvbHVtbjIgLm5ld3NJbWFnZSxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMyAubmV3c0ltYWdlLFxuLnR3b0NvbHVtbjY2MzMgLmNvbHVtbjIgLm5ld3NJbWFnZSxcbi50d29Db2x1bW4zMzY2IC5jb2x1bW4xIC5uZXdzSW1hZ2UsXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEgLm5ld3NJbWFnZSxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMiAubmV3c0ltYWdle1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbn1cbi50d29Db2x1bW41MDUwIC5uZXdzSW1hZ2V7XG4gICAgd2lkdGg6IDUwJTtcbn1cbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMiAubmV3c0ltYWdlIGltZyxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMyAubmV3c0ltYWdlIGltZyxcbi50d29Db2x1bW42NjMzIC5jb2x1bW4yIC5uZXdzSW1hZ2UgaW1nLFxuLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLm5ld3NJbWFnZSBpbWcsXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEgLm5ld3NJbWFnZSBpbWcsXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIgLm5ld3NJbWFnZSBpbWcsXG4udHdvQ29sdW1uNTA1MCAubmV3c0ltYWdlIGltZ3tcbiAgICB3aWR0aDogMTAwJTtcbn1cbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMiAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjUwMjUyNSAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMSAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1NTAyNSAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMSAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjI1MjU1MCAuY29sdW1uMiAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50aHJlZUNvbHVtbjMzMzMzMyAuY29sdW1uMyAuZXZlbnRQcmV2aWV3IC5ub3RUb2RheSxcbi50d29Db2x1bW42NjMzIC5jb2x1bW4yIC5ldmVudFByZXZpZXcgLm5vdFRvZGF5LFxuLnR3b0NvbHVtbjMzNjYgLmNvbHVtbjEgLmV2ZW50UHJldmlldyAubm90VG9kYXksXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjEgLmV2ZW50UHJldmlldyAubm90VG9kYXksXG4udGhyZWVDb2x1bW4zMzMzMzMgLmNvbHVtbjIgLmV2ZW50UHJldmlldyAubm90VG9kYXl7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5nYW1lQXJlYSAuaXRlbSBzdHJvbmd7XG5cdG1hcmdpbi1yaWdodDogNHB4O1xuXHRmb250LXNpemU6IDEwcHg7XG5cdHBhZGRpbmc6IDAgMnB4O1xuXHRjb2xvcjogI0ZGRjtcbn1cbi5tb3Jle1xuXHRmb250LXNpemU6IDEwcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gUGl0Y2ggVHJhY2tlclxuLnJlZ3VsYXRpb25ze1xuXHRtYXJnaW4tdG9wOiA1cHg7XG5cdGZvbnQtc2l6ZTogMTBweDtcblx0Y29sb3I6ICM2NjY7XG59XG4ucmVndWxhdGlvbnMgbGl7XG5cdG1hcmdpbi1sZWZ0OiAzMHB4O1xufVxuLmluZWxpZ2libGV7XG5cdGNvbG9yOiAjY2MwMDAwO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cbi5lbGlnaWJsZXtcblx0Y29sb3I6ICMwMDk5MzM7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1x0XG59XG5cbi8vIFN0YW5kaW5ncyBBZ2cgXG4uc3RhbmRpbmdzQWdne1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uc3RhbmRpbmdzQWdnIGg0e1xuICAgIG1hcmdpbjogNXB4IDVweCAwO1xufVxuLnN0YW5kaW5nc0FnZyAuc3RhdFRhYmxle1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDVweDtcbn1cbi5zdGFuZGluZ3NBZ2cgLnN0YXRUYWJsZSB0ZCwgLnN0YW5kaW5nc0FnZyAuc3RhdFRhYmxlIHRoe1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWR0aDogNyU7XG59XG4uc3RhbmRpbmdzQWdnIC5zdGF0VGFibGUgLnN0YW5kaW5nc1RlYW1OYW1le1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR3aWR0aDogNDAlO1xufVxuLnN0YW5kaW5nc0FnZyAudmV2ZW50e1xuICAgIHBhZGRpbmc6IDVweDtcbn1cbi5zdGFuZGluZ3NBZ2cgLnZldmVudCAuc3RhdFRhYmxle1xuICAgIG1hcmdpbjogMDtcbn1cbi5zdGFuZGluZ3NSZXN1bHRzTGlua3MgYXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4vLyBUcmFuc2FjdGlvbiBIZWxwXG4uZmFpbGVke1xuXHRiYWNrZ3JvdW5kOiBwaW5rO1xufVxuLmZhaWxlZCBhe1xuXHRjb2xvcjogcmVkO1xufVxuIiwiLyogTmV3cyBBZ2dyZWdhdG9yICovXG4vLyBNQUtFIExJUVVJRCEhISFcbi8vIDEuIE1peGluc1xuLy8gMi4gR2xvYmFsIFN0eWxlc1xuLy8gMy4gRXhwYW5kZWQgVmlld1xuLy8gNC4gQ29uZGVuc2VkIFZpZXdcbi8vIDUuIENvbW1lbnQgQ291bnQgYW5kIFJlYWQgTW9yZVxuXG4vLyAxLiBNaXhpbnMgKFJlbW92ZSB3aGVuIGxpcXVpZClcbkBtaXhpbiBuZXdzYWdnLWhlYWRlcntcbiAgZm9udC1zaXplOiBlbSgxNik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cbkBtaXhpbiBuZXdzYWdnLWltYWdle1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAzcHggMTVweCA3cHggMHB4O1xuICBpbWd7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtaXhpbiBuZXdzYWdnLWRhdGUtYXV0aG9ye1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiBlbSgxMik7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogLjVlbTtcbn1cbkBtaXhpbiBuZXdzYWdnLXRlYXNlcntcbiAgZm9udC1mYW1pbHk6ICRmb250VHdvO1xuICBmb250LXNpemU6IGVtKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAkYm9keUNvcHlDb2xvclR3bztcbiAgbWFyZ2luOiAuNzVlbSAwO1xufVxuXG4vLyAyLiBHbG9iYWwgc3R5bGVzXG4ubmV3c0FnZ3JlZ2F0b3JFbGVtZW50e1xuICAuaXRlbXsgQGluY2x1ZGUgbGlzdC1pdGVtKCk7IH1cbiAgLmRhdGVBdXRob3J7bGluZS1oZWlnaHQ6IDE7fVxuICAubmV3c0F1dGhvciwgLm5ld3NEYXRlIHtcbiAgICBAaW5jbHVkZSBuZXdzYWdnLWRhdGUtYXV0aG9yO1xuICB9XG4gIC5hcnRpY2xlSGFzSW1hZ2V7XG4gICAgPiBoNCwgLm5ld3NUZXh0LCAuY29tbWVudHNBbmRNb3JlLCAubmV3c0l0ZW1IZWFkZXJ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgfVxuICAgIC5uZXdzSXRlbUhlYWRlcntcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgID4gYXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFxuLmFnZ0hlYWRlcntcbiAgQGluY2x1ZGUgc3BlY2lhbC1oZWFkZXI7XG59XG5cbi8vIDMuIEV4cGFuZGVkIFByZXZpZXdzXG4uZXhwYW5kZWR7XG4gIC5uZXdzSXRlbUhlYWRlciA+IGF7XG4gICAgQGluY2x1ZGUgbmV3c2FnZy1pbWFnZTtcbiAgfVxuICAubmV3c0l0ZW1FbGVtZW50e1xuICAgIGg0eyBAaW5jbHVkZSBuZXdzYWdnLXRlYXNlcjsgfVxuICB9XG4gIC5uZXdzSXRlbUhlYWRlcnsgXG4gICAgaDIgeyBAaW5jbHVkZSBuZXdzYWdnLWhlYWRlcjsgfVxuICB9XG4gIC5uZXdzVGV4dHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICBtYXJnaW46IDAgMCAuNWVtIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICB1bHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICB9XG4gIH1cbn1cblxuLy8gNC4gQ29uZGVuc2VkIFByZXZpZXdzXG4uY29uZGVuc2Vke1xuICBsaSB7bGluZS1oZWlnaHQ6IDE7fVxuICA+IGF7XG4gICAgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudCAmeyBAaW5jbHVkZSBuZXdzYWdnLWltYWdlOyB9XG4gIH1cbiAgLnRlYXNlcnsgQGluY2x1ZGUgbmV3c2FnZy10ZWFzZXI7IH1cbiAgLmRldGFpbHMsID4gdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBoNHsgQGluY2x1ZGUgbmV3c2FnZy1oZWFkZXI7IH1cbiAgfVxuICAuZGV0YWlsc3tcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gIH1cbn1cblxuLy8gNS4gUmVhZCBtb3JlIGFuZCBjb21tZW50c1xuLmNvbW1lbnRDb3VudCB7XG4gIC5idXR0b24tY29tbWVudENvdW50IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAmOmhvdmVye2JhY2tncm91bmQ6IG5vbmU7fVxuICAgIC5idXR0b24taW1hZ2UtcmlnaHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJ1dHRvbi1jb250ZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgY29udGVudDogXCJcXGYwZTVcIjtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuMjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5jb21tZW50c0FuZE1vcmV7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDVweCAwIDAgMDtcbiAgLnJlYWRNb3Jle1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XG4gICAgYXttYXJnaW46IDA7fVxuICB9XG59XG5cbi8vIDcuIFJlc3BvbnNpdmVcbkBpbmNsdWRlIHBhZ2UtZWxlbWVudC1icmVhayg0MDApe1xuICAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50e1xuICAgIC5hcnRpY2xlSGFzSW1hZ2V7XG4gICAgICA+IGg0LCAubmV3c1RleHQsIC5jb21tZW50c0FuZE1vcmUsIC5uZXdzSXRlbUhlYWRlcntcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgLm5ld3NJdGVtSGVhZGVye1xuICAgICAgICA+IGF7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pdGVtID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsOyAgICBcbiAgICB9XG4gICAgLmNvbmRlbnNlZCAuZGV0YWlsc3tcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgcGFnZS1lbGVtZW50LWJyZWFrKDMwMCl7XG4gIC5uZXdzQWdncmVnYXRvckVsZW1lbnR7XG4gICAgLmFydGljbGVIYXNJbWFnZXtcbiAgICAgID4gaDQsIC5uZXdzVGV4dCwgLmNvbW1lbnRzQW5kTW9yZSwgLm5ld3NJdGVtSGVhZGVye1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAubmV3c0l0ZW1IZWFkZXJ7XG4gICAgICAgID4gYXtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLml0ZW0gPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgICAuY29uZGVuc2VkIC5kZXRhaWxze1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIb3BpbmcgdG8gZ2V0IHJpZCBvZiB0aGVzZSBncm9zcyBtcXMgd2hlbiB3ZSBmaWd1cmUgb3V0IG91ciBicmVha3BvaW50cyBhbmQgZnVsbHkgaW1wbGVtZW50IGJvb3RzdHJhcFxuLy8gVW50aWwgdGhlbiwgdGhlc2UgZWRnZSBjYXNlcyB3aWxsIGhhdmUgdG8gYmUgZGVmaW5lZCBvdXRzaWRlIG9mIHRoZSBcInBhZ2UtZWxlbWVudC1icmVha1wiIG1peGluXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpe1xuICAubGF5b3V0LTI1LTI1LTUwLFxuICAubGF5b3V0LTUwLTI1LTI1e1xuICAgIC5jb2wtbWQtMywgLmNvbC1tZC02e1xuICAgICAgLm5ld3NBZ2dyZWdhdG9yRWxlbWVudHtcbiAgICAgICAgLmFydGljbGVIYXNJbWFnZXtcbiAgICAgICAgICA+IGg0LCAubmV3c1RleHQsIC5jb21tZW50c0FuZE1vcmUsIC5uZXdzSXRlbUhlYWRlcntcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm5ld3NJdGVtSGVhZGVye1xuICAgICAgICAgICAgPiBhe1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbmRlbnNlZCA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nOiA3cHggMTVweCA3cHggMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb25kZW5zZWQgLmRldGFpbHN7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5sYXlvdXQtMjUtNTAtMjV7XG4gICAgLmNvbC1tZC0zLCAuY29sLW1kLTZ7XG4gICAgICAubmV3c0FnZ3JlZ2F0b3JFbGVtZW50e1xuICAgICAgICAuYXJ0aWNsZUhhc0ltYWdle1xuICAgICAgICAgID4gaDQsIC5uZXdzVGV4dCwgLmNvbW1lbnRzQW5kTW9yZSwgLm5ld3NJdGVtSGVhZGVye1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubmV3c0l0ZW1IZWFkZXJ7XG4gICAgICAgICAgICA+IGF7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29uZGVuc2VkID4gYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbmRlbnNlZCAuZGV0YWlsc3tcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIEV2ZW50IEFnZ3JlZ2F0b3JzICovXG4vLyAxLiBHbG9iYWwgU3R5bGVzXG4vLyAyLiBMaXN0IFZpZXdzXG4vLyAzLiBMaXN0IFZpZXdzIC0gTWVkaWEgUXVlcmllc1xuLy8gNC4gRml2ZSBEYXkgVmlld1xuLy8gNS4gRml2ZSBEYXkgVmlldyAtIE1lZGlhIFF1ZXJpZXNcblxuXG4vLyAxLiBHbG9iYWwgU3R5bGVzXG4uZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCB7XG4gIC5hZ2dIZWFkZXIge1xuICAgIEBpbmNsdWRlIHNwZWNpYWwtaGVhZGVyO1xuICB9XG59XG5cbi8vIDIuIExpc3QgVmlld3Ncbi5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IHtcbiAgLnZldmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6ICRiYXNlLXBhZGRpbmcgMDtcbiAgICB+IC52ZXZlbnQgeyBAaW5jbHVkZSBsaW5lLXBhdHRlcm4tYm9yZGVyOyB9XG5cbiAgICAmLm9kZCxcbiAgICAmLmV2ZW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gIC5zdW1tYXJ5LFxuICAuZGV0YWlscyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDk1cHg7XG4gIH1cbiAgLnN1bW1hcnkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udFR3bztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC50aW1lLFxuICAubG9jYXRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XG4gICAgZm9udC1zaXplOiBlbSgxMik7XG4gIH1cbiAgLmxvY2F0aW9uIHtcblxuICAgICYsID4gYSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRPbmU7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICRsaW5rX2NvbG9yO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cbiAgLnRhZ3MgeyBmb250LXNpemU6IDEycHg7IH1cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBlbSgxMik7XG4gIH1cbiAgLmRhdGVJbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjRUVFO1xuICAgIHBhZGRpbmc6IC41ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDQ1JSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgd2lkdGg6IC43NWVtO1xuICAgICAgaGVpZ2h0OiAuNzVlbTtcbiAgICB9XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICAgIC5tb250aCB7XG4gICAgICBmb250LXNpemU6IC43NWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgY29sb3I6ICRsaW5rX2NvbG9yO1xuICAgIH1cbiAgICAuZGF0ZSB7XG4gICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG4gIC5mb3JtRWxlbWVudCB7XG4gICAgcGFkZGluZzogMTBweCAwOyAvLyBUaGlzIHNob3VsZCBiZSBiZXR0ZXIgZGVmaW5lZCBpbiBnbG9iYWwgZm9ybSBzdHlsZXMgKG9yIHJlbW92ZWQgZnJvbSB0aGVyZSB0byBiZSBzdHlsZWQgcGVyIGVsZW1lbnQpXG4gICAgW2lkJD1cIl9zdGFydF9kYXRlX2RheVwiXSxcbiAgICBbaWQkPVwiX2VuZF9kYXRlX2RheVwiXSB7XG4gICAgICB3aWR0aDogOGVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyAzLiBMaXN0IFZpZXdzIC0gTWVkaWEgUXVlcmllc1xuQGluY2x1ZGUgcGFnZS1lbGVtZW50LWJyZWFrKDMzMCkge1xuICAuZXZlbnRBZ2dyZWdhdG9yRWxlbWVudCB7XG4gICAgLmRhdGVJbWFnZSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDQ1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnN1bW1hcnksXG4gICAgLmRldGFpbHMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtMjUtMjUtNTAsXG4gIC5sYXlvdXQtNTAtMjUtMjUge1xuICAgIC5jb2wtbWQtNixcbiAgICAuY29sLW1kLTMge1xuICAgICAgLmV2ZW50QWdncmVnYXRvckVsZW1lbnQge1xuICAgICAgICAuZGF0ZUltYWdlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NSUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDUlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDUlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3VtbWFyeSxcbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogOTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubGF5b3V0LTI1LTUwLTI1IHtcbiAgICAuY29sLW1kLTYsXG4gICAgLmNvbC1tZC0zIHtcbiAgICAgIC5ldmVudEFnZ3JlZ2F0b3JFbGVtZW50IHtcbiAgICAgICAgLmRhdGVJbWFnZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0NSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNDUlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNDUlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3VtbWFyeSxcbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA0LiBGaXZlIERheSBWaWV3XG4uZXZlbnRQcmV2aWV3IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHRoIHtcbiAgICBAaW5jbHVkZSB0YWJsZS10aDtcbiAgICBAaW5jbHVkZSB0YWJsZS10aC10ZXh0O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgYSB7XG4gICAgICBjb2xvcjojRkZGO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cbiAgdGQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS13ZWVrLXZpZXctZGF0ZSknJztcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1jZWxsLXNwYWNpbmcgc29saWQgI0ZGRjtcbiAgICAgIGJhY2tncm91bmQ6ICRsaW5rX2NvbG9yO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cbiAgdGQsXG4gIHRoIHtcbiAgICBib3JkZXI6ICR0YWJsZS1jZWxsLXNwYWNpbmcgc29saWQgI0ZGRjtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAuZXZlbnQgKyAuZXZlbnQge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG4gIC5ub2VudHJ5IHtcbiAgICB3b3JkLWJyZWFrOm5vcm1hbDtcbiAgfVxufVxuXG4vLyA1LiBGaXZlIERheSBWaWV3IC0gTWVkaWEgUXVlcmllc1xuQGluY2x1ZGUgcGFnZS1lbGVtZW50LWJyZWFrKDQzMCkge1xuICAuZXZlbnRQcmV2aWV3IHtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtY2VsbC1zcGFjaW5nIHNvbGlkICNGRkY7XG4gICAgJixcbiAgICB0Ym9keSxcbiAgICB0cixcbiAgICB0ZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgdGQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICR0YWJsZS1jZWxsLXNwYWNpbmc7XG4gICAgICB3b3JkLWJyZWFrOiB3b3JkLWJyZWFrO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmV2ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAmICsgLmV2ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmxheW91dC0yNS0yNS01MCxcbiAgLmxheW91dC01MC0yNS0yNSB7XG4gICAgLmNvbC1tZC02IHtcbiAgICAgIC5ldmVudFByZXZpZXcge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICAgICAgfVxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICAgICAgICB9XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgIH1cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IG5vbmU7XG4gICAgICAgICAgd29yZC1icmVhazogd29yZC1icmVhaztcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZXZlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNSB7XG4gICAgLmNvbC1tZC02IHtcbiAgICAgIC5ldmVudFByZXZpZXcge1xuICAgICAgICBib3JkZXItdG9wOiAkdGFibGUtY2VsbC1zcGFjaW5nIHNvbGlkICNGRkY7XG4gICAgICAgICYsXG4gICAgICAgIHRib2R5LFxuICAgICAgICB0cixcbiAgICAgICAgdGQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkdGFibGUtY2VsbC1zcGFjaW5nO1xuICAgICAgICAgIHdvcmQtYnJlYWs6IHdvcmQtYnJlYWs7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ldmVudCB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAmICsgLmV2ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OTFweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtMjUtMjUtNTAsXG4gIC5sYXlvdXQtNTAtMjUtMjUge1xuICAgIC5jb2wtbWQtMyB7XG4gICAgICAuZXZlbnRQcmV2aWV3IHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgICAgIH1cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgICAgICAgfVxuICAgICAgICB0ciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICB9XG4gICAgICAgIHRkLFxuICAgICAgICB0aCB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBub25lO1xuICAgICAgICAgIHdvcmQtYnJlYWs6IHdvcmQtYnJlYWs7XG4gICAgICAgICAgYm9yZGVyOiAkdGFibGUtY2VsbC1zcGFjaW5nIHNvbGlkICNGRkY7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmV2ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucGFnZUVsIC5hdWRpb0VsZW1lbnQge1xuICBoMyB7IG1hcmdpbi1ib3R0b206IC41ZW07IH1cbn1cbiIsIi8qIENvbGxlY3RvcnMgKi9cbi8vIDEuIE1peGlucyAoUmVtb3ZlIHdoZW4gbGlxdWlkKVxuLy8gMi4gQ29sbGVjdG9yIEVsZW1lbnRzIChHbG9iYWwgc3R5bGVzKVxuLy8gMy4gTmV3cyBDb2xsZWN0aW9uXG4vLyA0LiBNZWRpYSBRdWVyaWVzXG4vLyA1LiBEb2N1bWVudCBDb2xsZWN0aW9uIGFuZCBQaG90byBDb2xsZWN0aW9uIChQbGVhc2UgYXVkaXQgdGhlc2Ugc3R5bGVzKVxuLy8gTm90ZTogTmV3cyBDb2xsZWN0aW9uIGVsZW1lbnQgc2hvdWxkIG1pcnJvciBuZXdzIGFnZ3JlZ2F0b3Igc3R5bGUuXG4vLyBOb3RlOiBDb25zaWRlciBicmVha2luZyB0aGlzIGZpbGUgaW50byBtdWx0aXBsZSBmaWxlcyB3aGVuIHN0eWxpbmcgUGhvdG8gYW5kIERvY3VtZW50IGNvbGxlY3RvcnMsIGlmIGl0IGlzIGxvZ2ljYWwsIG9yIGRlbGV0ZSB0aGlzIG5vdGUuXG5cbi8vIDEuIE1peGlucyAoUmVtb3ZlIHdoZW4gbGlxdWlkKVxuQG1peGluIG5ld3Njb2wtaGVhZGVye1xuICBmb250LXNpemU6IGVtKDE4KTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5AbWl4aW4gbmV3c2NvbC1pbWFnZXtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAzcHggMTVweCA3cHggMHB4O1xuICBpbWd7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtaXhpbiBuZXdzY29sLWRhdGUtYXV0aG9ye1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuQG1peGluIG5ld3Njb2wtdGVhc2Vye1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IC43NWVtIDA7XG59XG5cbi8vIDIuIENvbGxlY3RvciBFbGVtZW50cyAoR2xvYmFsIHN0eWxlcylcbi5jb2xsZWN0b3JFbGVtZW50IHtcbiAgLnRhZ3N7XG4gICAgZm9udC1zaXplOiBlbSgxMik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLy8gMy4gTmV3cyBDb2xsZWN0aW9uXG4uY29sbGVjdG9yTmV3c3tcbiAgLml0ZW17XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGxpc3QtaXRlbSgpO1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgID4gYXsgQGluY2x1ZGUgbmV3c2NvbC1pbWFnZTsgfVxuICAgID4gaDQgeyBAaW5jbHVkZSBuZXdzY29sLWhlYWRlcjsgfVxuICB9XG4gIC5kYXRlQXV0aG9ye1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubmV3c0F1dGhvciwgLm5ld3NEYXRle1xuICAgIEBpbmNsdWRlIG5ld3Njb2wtZGF0ZS1hdXRob3I7XG4gIH1cbiAgLnRlYXNlcntcbiAgICBAaW5jbHVkZSBuZXdzY29sLXRlYXNlcjtcbiAgfVxuICAudGFnc3tcbiAgICBmb250LXNpemU6IGVtKDEyKTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAuY2xlYXJBbGx7XG4gICAgZGlzcGxheTogbm9uZTsgLy8gT2xkIG1hcmt1cCwgcmVtb3ZlIHdoZW4gbGlxdWlkXG4gIH1cbiAgLmFydGljbGVIYXNJbWFnZXtcbiAgICA+IGg0LCAuZGF0ZUF1dGhvciwgLnRlYXNlciwgLnRhZ3N7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIDQuIE1lZGlhIFF1ZXJpZXNcbkBpbmNsdWRlIHBhZ2UtZWxlbWVudC1icmVhaygzNTApe1xuICAuY29sbGVjdG9yTmV3c3tcbiAgICAuYXJ0aWNsZUhhc0ltYWdle1xuICAgICAgPiBhe2Zsb2F0OiBub25lO31cbiAgICAgID4gaDQsIC5kYXRlQXV0aG9yLCAudGVhc2VyLCAudGFnc3tcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCl7XG4gIC5sYXlvdXQtNTAtMjUtMjUsXG4gIC5sYXlvdXQtMjUtMjUtNTB7XG4gICAgLmNvbC1tZC0zLCB7XG4gICAgICAuY29sbGVjdG9yTmV3c3tcbiAgICAgICAgLmFydGljbGVIYXNJbWFnZXtcbiAgICAgICAgICA+IGF7ZmxvYXQ6IGxlZnQ7fVxuICAgICAgICAgID4gaDQsIC5kYXRlQXV0aG9yLCAudGVhc2VyLCAudGFnc3tcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxheW91dC0yNS01MC0yNXtcbiAgICAuY29sLW1kLTMsIC5jb2wtbWQtNntcbiAgICAgIC5jb2xsZWN0b3JOZXdze1xuICAgICAgICAuYXJ0aWNsZUhhc0ltYWdle1xuICAgICAgICAgID4gYXtmbG9hdDogbm9uZTt9XG4gICAgICAgICAgPiBoNCwgLmRhdGVBdXRob3IsIC50ZWFzZXIsIC50YWdze1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIDUuIERvY3VtZW50IENvbGxlY3Rpb24gYW5kIFBob3RvIENvbGxlY3Rpb25cbi5jb2xsZWN0b3JEb2N1bWVudHMsXG4uY29sbGVjdG9yUGhvdG9zIHtcbiAgLml0ZW0ge1xuICAgIEBpbmNsdWRlIGxpc3QtaXRlbTtcblxuICAgIC5pbmZvIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7IC8vIE9mZnNldCB0aGUgaWNvblxuICAgIH1cblxuICAgICYgPiBhIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW46IDAgMTBweCAxMHB4IDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICB9XG5cbiAgbGkgaDQgYSB7XG4gICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAuZGF0ZUF1dGhvciB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAuMjVlbTtcbiAgfVxufVxuIiwiLyogRmVlZCBSZWFkZXIgKi9cblxuLy8gRmVlZCByZWFkZXJcbi5mZWVkZXJ7XG4gID4gaDN7XG4gICAgQGluY2x1ZGUgc3BlY2lhbC1oZWFkZXI7XG4gICAgQGluY2x1ZGUgd29yZC13cmFwKCk7XG4gIH1cbiAgPiBkaXY6bnRoLW9mLXR5cGUoMSl7XG4gICAgPiBkaXZ7XG4gICAgICBAaW5jbHVkZSBsaXN0LWl0ZW0oKTtcbiAgICAgID4gdWwgbGk6bGFzdC1jaGlsZHtcbiAgICAgICAgPiBwOmxhc3QtY2hpbGR7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZXZlbiwgLm9kZHtcbiAgICA+IHVse1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgdWx7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNWVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICB9XG4gICAgICBvbHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtOyAgICAgICBcbiAgICAgIH1cbiAgICAgIHVsIGxpLCBvbCBsaXtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYmxvY2txdW90ZXtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd287XG4gICAgZm9udC1zaXplOiBpbml0aWFsO1xuICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI0VFRTtcbiAgICBtYXJnaW46IDFlbTtcbiAgICAmOmJlZm9yZSwgJjphZnRlcntkaXNwbGF5OiBub25lO31cbiAgfVxuICBpbWd7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIHRhYmxle1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vQ29udGFjdCBQYWdlIEVsZW1lbnRcbi5jb250YWN0RWxlbWVudCB7XG4gIGltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgbWF4LXdpZHRoOiA1MHB4O1xuICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgIC8vIEFwcGx5IHRoZXNlIHN0eWxlcyBvbmx5IGlmIGltZyBpcyBwcmVzZW50XG4gICAgKyBkaXYge1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTsgLy8gQXNzdW1lcyA1MHB4IGltZ1xuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyAvLyBBbGlnbiBoMyB3aXRoIGltYWdlXG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgzIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIHAge1xuICAgIGNvbG9yOiAkYm9keUNvcHlDb2xvclR3bztcbiAgICBmb250LXNpemU6IC43NWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uY29udGFjdC1lbGVtZW50LWZpcnN0LW5hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29udGFjdC1lbGVtZW50LWxhc3QtbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDI0cHg7XG4gIG1hcmdpbi10b3A6IDJweDtcbn1cbiIsIi8vU3BvbnNvciBQYWdlIEVsZW1lbnRcbi5wYWdlRWxlbWVudEFkbWluIC5zcG9uc29yRWxlbWVudHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG4uc3BvbnNvckVsZW1lbnQge1xuICBib3JkZXItdG9wOiBub25lO1xuICAuZGVzY3JpcHRpb24ge1xuICAgID4gaDN7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG4gICAgLmdvVG9MaW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggMjBweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogLTQ2MHB4O1xuICAgICAgbWFyZ2luOiAuNWVtIDA7XG4gICAgfVxuICB9XG4gIC5pbWFnZUxpbmt7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogNXB4IDEwcHggMTBweCAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGltZ3tkaXNwbGF5OiBibG9jazt9XG4gIH1cbiAgJi5oYXNJbWFnZXtcbiAgICAuZGVzY3JpcHRpb257XG4gICAgICBwYWRkaW5nLWxlZnQ6IDExMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCl7XG4gICAgICAuY29sLW1kLTMgJntcbiAgICAgICAgLmltYWdlTGlua3tmbG9hdDpub25lO31cbiAgICAgICAgLmRlc2NyaXB0aW9ue3BhZGRpbmc6MDt9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpe1xuICAgICAgLmNvbC1tZC00ICZ7XG4gICAgICAgIC5pbWFnZUxpbmt7ZmxvYXQ6bm9uZTt9XG4gICAgICAgIC5kZXNjcmlwdGlvbntwYWRkaW5nOjA7fVxuICAgICAgfSAgICAgIFxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM1MHB4KXtcbiAgICAgIC5pbWFnZUxpbmt7ZmxvYXQ6bm9uZTt9XG4gICAgICAuZGVzY3JpcHRpb257cGFkZGluZzowO30gICAgICBcbiAgICB9XG4gIH1cbn1cbiIsIi8qIFBvbGwgRWxlbWVudCBTdHlsZXMgKi9cblxuLy8gQWxsIFN0eWxlc1xuLnBvbGxFbGVtZW50IHtcblx0aDMge1xuXHRcdHNwYW57XG4gIFx0XHRAaW5jbHVkZSBzcGVjaWFsLWhlYWRlcjtcblx0XHR9XG5cdH1cblx0dWwgbGkge1xuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0XHRwYWRkaW5nOiA4cHggOHB4IDhweCAxMHB4O1xuXHRcdG1hcmdpbjowO1xuXHRcdCY6Zmlyc3QtY2hpbGR7XG4gIFx0XHRwYWRkaW5nOjE1cHggOHB4IDhweCAxMHB4O1xuXHRcdH1cblx0XHQmOm50aC1sYXN0LWNoaWxkKDIpe1xuICBcdFx0cGFkZGluZzo4cHggOHB4IDE1cHggMTBweDtcblx0XHR9XG5cdH1cblx0bGFiZWwsXG5cdGg1IHtcblx0XHRmb250LXNpemU6cmVtKDE0KTtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGNvbG9yOiRib2R5Q29weUNvbG9yVHdvO1xuXHR9XG5cdGg1IHtcblx0XHR0ZXh0LXRyYW5zZm9ybTpub25lO1xuXHR9XG5cdGxhYmVsIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXHR1bCBsaS5wb2xsVG90YWwge1xuICBcdHBhZGRpbmc6MTVweCA4cHggOHB4IDEwcHg7XG5cdFx0Ym9yZGVyLXRvcDogJGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvcjtcblx0XHRoNXtcbiAgXHRcdGZvbnQtd2VpZ2h0OjYwMDtcblx0XHR9XG5cdH1cblx0dWwgbGkudm90ZUJ1dHRvbiB7XG4gIFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0cGFkZGluZzowO1xuXHRcdG1heC13aWR0aDozMjBweDtcblx0XHQmOmFmdGVye1xuICAgICAgY29udGVudDpcIlxcZjA2MVwiO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB0b3A6NTAlO1xuICAgICAgbGVmdDo1MCU7XG4gICAgICBtYXJnaW46LTExcHggMCAwIDE4cHg7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTpyZW0oMTMpO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgY29sb3I6JGFjY2VudC1jb2xvcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICAgIH1cbiAgICAmOmhvdmVye1xuICAgICAgJjphZnRlcntcbiAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgIH1cbiAgICB9XG5cdH1cblx0dWwgbGkudm90ZUJ1dHRvbiBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRmb250LWZhbWlseTokZm9udE9uZTtcblx0XHRmb250LXNpemU6cmVtKDE2KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgIGJvcmRlci10b3A6MDtcbiAgICBib3JkZXItbGVmdDowO1xuICAgIGJvcmRlci1yaWdodDowO1xuICAgIGJvcmRlci1ib3R0b206M3B4IHNvbGlkICRsaW5rLWNvbG9yLWRhcmtlbi0yMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgdGV4dC1pbmRlbnQ6LTIwcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3ItZGFya2VuLTIwO1xuXHRcdCAgb3V0bGluZTowO1xuXHQgIH1cblx0fVxufVxuLmJhckJhY2tncm91bmQgcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206MDtcbiAgZm9udC1zaXplOnJlbSgxOCk7XG4gIGNvbG9yOiRib2R5Q29weUNvbG9yT25lO1xufVxuIiwiLy8gU2l0ZSBNYXBcblxuLy9zaXRlbWFwIHdpdGhpbiBjb2xsZWN0b3JzIHVuZGVyIHRhYnNcbi5jb250ZW50VGFicyArIC5jb2xsZWN0b3JUcmVlLnNpdGVNYXBFbGVtZW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmY7XG4gIGFbaHJlZio9XCIvZG9jdW1lbnQvXCJdICsgLmluZm8gYS50aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAtLjJlbTtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgIH1cbiAgfVxuICBhW2hyZWYqPVwiL3Bob3RvX2dhbGxlcnkvXCJdIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogLS4yZW07XG4gICAgICBsZWZ0OiAtMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnNpdGVNYXBFbGVtZW50IHtcbiAgYmFja2dyb3VuZDogI2VlZTtcblxuICBoMywgaDQge1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC51bmxpbWl0ZWRIaWVyYXJjaHkge1xuICAgICRpbmRlbnQ6IDMwcHg7XG4gICAgJG9mZnNldDogNXB4O1xuXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBkaXYgeyBiYWNrZ3JvdW5kOm5vbmU7IH1cblxuICAgICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGluZGVudDtcblxuICAgICAgICAvLyBwb2ludCB0byBpdGVtXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOm5vdCgubGFzdExpKTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6ICRvZmZzZXQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6ICRpbmRlbnQgLSAkb2Zmc2V0O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNDQ0M7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjb250aW51ZSBsaW5lIGRvd24gdG8gbmV4dCBpdGVtXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0NDQztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sYXN0TGkgeyBiYWNrZ3JvdW5kOm5vbmU7IH1cbiAgfVxufVxuIiwiLyogTmV3cyBTbGlkZXNob3cgU3R5bGVzICovXG4vLyAxLiBHbG9iYWwgU3R5bGluZ1xuLy8gMi4gVGh1bWJuYWlsc1xuLy8gMy4gQ29udHJvbHNcbi8vIDQuIEJ1dHRvbnNcbi8vIDUuIEFzcGVjdCBSYXRpbyBBZGp1c3RtZW50c1xuLy8gNi4gQWNjb21pZGF0aW9ucyBmb3IgU21hbGwgQ29sdW1ucyAmIE1vYmlsZSBWaWV3c1xuXG4vLyBWYXJpYWJsZXNcbiRjb250cm9sLWhlaWdodDogMi41cmVtO1xuXG4vLyAxLiBHbG9iYWwgU3R5bGluZ1xuLmRyYWcgLm5ld3NTbGlkZVNob3cgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm5ld3NTbGlkZVNob3ctY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206ICRjb250cm9sLWhlaWdodDtcbn1cblxuLm5ld3NTbGlkZVNob3ctYXJ0aWNsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRjb250cm9sLWhlaWdodH0pO1xuICBib3JkZXI6IDJweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgJi5jdXJyZW50IHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgaW1nIHsgcG9zaXRpb246IGFic29sdXRlOyB9XG59XG5cbi5uZXdzU2xpZGVTaG93LWhlYWRsaW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC4yNXJlbTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcblxuICBoMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDk2JSAtIDdweCk7XG4gICAgbWFyZ2luOiAwIDAgMnB4IDdweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTdweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50X2NvbG9yO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgLy8gU2FkbHksIGBsaW5lLWNsYW1wYCBkb2Vzbid0IHdvcmsgaW4gbm9uLXdlYmtpdCBicm93c2Vycywgc28gd2UgbmVlZFxuICAgICAgLy8gdG8gcmVzdHJpY3QgaXQgd2l0aCB0aGlzIGhhY2suIGB3aGl0ZS1zcGFjZTogbm93cmFwYCBzZXJ2ZXMgYXMgYVxuICAgICAgLy8gZmFsbGJhY2sgZm9yIG90aGVyIGJyb3dzZXJzIHdpdGggb25lIGxpbmUgb2YgdGV4dCBpbnN0ZWFkIG9mIHR3by5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCkge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgICAgIC5jb2wtbWQtMyAmIHtcbiAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogOTYlO1xuICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgIG1hcmdpbjogMCAwIDJweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE0MnB4KTtcbiAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcbiAgICAgIHRleHQtaW5kZW50OiAxMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIEBpbmNsdWRlIHRydW5jYXRlLXRleHQ7XG5cbiAgICAgICY6ZW1wdHkgeyBkaXNwbGF5Om5vbmU7IH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gICAgfVxuICB9XG59XG5cbi8vIDIuIFRodW1ibmFpbHNcbi5uZXdzU2xpZGVTaG93LXRodW1ibmFpbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pOyAvLyBTdWJ0cmFjdCB3aWR0aCBvZiBsZWZ0L3JpZ2h0IGFycm93c1xuICBoZWlnaHQ6ICRjb250cm9sLWhlaWdodDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICRib3JkZXJDb2xvcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICAuY29sLW1kLTMgJiB7XG4gICAgZm9udC1zaXplOiAuNWVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuICAgIGZvbnQtc2l6ZTogLjVlbTtcbiAgfVxuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA0cHg7XG5cbiAgICAuY29sLW1kLTMgJiB7XG4gICAgICBwYWRkaW5nOiA2cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuICAgICAgcGFkZGluZzogNnB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogLjc1ZW07XG4gICAgICBoZWlnaHQ6IC43NWVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rX2NvbG9yO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0LFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQsXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJi5jdXJyZW50IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudF9jb2xvcjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMzc1LDEuMzc1KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjM3NSwxLjM3NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vIDMuIENvbnRyb2xzXG4ubmV3c1NsaWRlU2hvdy1jb250cm9scyB7fVxuXG4ubmV3c1NsaWRlU2hvdy1wcmV2LnBpbGwtc21hbGwtbGVmdCxcbi5uZXdzU2xpZGVTaG93LW5leHQucGlsbC1zbWFsbC1yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6ICRjb250cm9sLWhlaWdodDtcbiAgaGVpZ2h0OiAkY29udHJvbC1oZWlnaHQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAkYm9yZGVyQ29sb3I7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGFjY2VudF9jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMzc1KTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zNzUpO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBsaW5lLWhlaWdodDogMi41O1xuICAgIGNvbnRlbnQ6ICdcXGYwNjAnOyAvLyBmYS1hcnJvdy1yaWdodFxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiAnZm9udGF3ZXNvbWUnO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjpcbiAgICAgIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQsXG4gICAgICBjb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQsXG4gICAgICBjb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG4gIH1cbn1cblxuLm5ld3NTbGlkZVNob3ctcHJldi5waWxsLXNtYWxsLWxlZnQge1xuICBsZWZ0OiAwO1xufVxuXG4ubmV3c1NsaWRlU2hvdy1uZXh0LnBpbGwtc21hbGwtcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLm5ld3NTbGlkZVNob3ctbmV4dC5waWxsLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNjEnOyAvLyBmYS1hcnJvdy1sZWZ0XG59XG5cbi5uZXdzU2xpZGVTaG93LWVtcHR5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gID4gcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4vLyA0LiBCdXR0b25zXG4ubmV3c1NsaWRlU2hvdy1tb3JlLmJ1dHRvbi1zbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaW5rX2NvbG9yO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICBmb250LXNpemU6IHJlbSgxNik7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1pbmRlbnQ6IC0yMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuXG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogXCJcXGYwNjFcIjsgLy8gZmEtYXJyb3ctbGVmdFxuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gICAgY29sb3I6ICRhY2NlbnRfY29sb3I7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgfVxuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3ItZGFya2VuLTE1O1xuICAgIGJvcmRlcjogMDtcblxuICAgICY6YWZ0ZXJ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuLm5ld3NTbGlkZVNob3ctc3RvcCxcbi5uZXdzU2xpZGVTaG93LXBsYXkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLy8gNS4gQXNwZWN0IFJhdGlvIEFkanVzdG1lbnRzXG4uYXNwZWN0X3JhdGlvX29yaWdpbmFsLFxuLmFzcGVjdF9yYXRpb18xXzEsXG4uYXNwZWN0X3JhdGlvXzRfMyxcbi5hc3BlY3RfcmF0aW9fMTZfOSxcbi5hc3BlY3RfcmF0aW9fMl8xLFxuLmFzcGVjdF9yYXRpb18zXzEsXG4uYXNwZWN0X3JhdGlvXzRfMSxcbi5hc3BlY3RfcmF0aW9fOF81IHsgaGVpZ2h0OiBpbml0aWFsICFpbXBvcnRhbnQ7IH1cblxuLmFzcGVjdF9yYXRpb19vcmlnaW5hbCB7IEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxNiw5KTsgfVxuLmFzcGVjdF9yYXRpb18xXzEgeyBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwxKTsgfVxuLmFzcGVjdF9yYXRpb180XzMgeyBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwzKTsgfVxuLmFzcGVjdF9yYXRpb18xNl85IHsgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDE2LDkpOyB9XG4uYXNwZWN0X3JhdGlvXzJfMSB7IEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLDEpOyB9XG4uYXNwZWN0X3JhdGlvXzNfMSB7IEBpbmNsdWRlIGFzcGVjdC1yYXRpbygzLDEpOyB9XG4uYXNwZWN0X3JhdGlvXzRfMSB7IEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg0LDEpOyB9XG4uYXNwZWN0X3JhdGlvXzhfNSB7IEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg4LDUpOyB9XG5cbi8vIDYuIEFjY29tbW9kYXRpb25zIGZvciBTbWFsbCBDb2x1bW5zICYgTW9iaWxlIFZpZXdzXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2N3B4KSB7XG4gIC5jb2wtbWQtMyxcbiAgLmNvbC1tZC00IHtcbiAgICAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSB7XG4gICAgICBoMSBhIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb2wtbWQtMyxcbiAgLmNvbC1tZC00LFxuICAuY29sLW1kLTYsXG4gIC5jb2wtbWQtOCB7XG4gICAgLmFzcGVjdF9yYXRpb180XzEsXG4gICAgLmFzcGVjdF9yYXRpb18zXzEsXG4gICAgLmFzcGVjdF9yYXRpb18yXzEge1xuICAgICAgLm5ld3NTbGlkZVNob3ctaGVhZGxpbmUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuICAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSB7XG4gICAgLmFzcGVjdF9yYXRpb180XzEgJixcbiAgICAuYXNwZWN0X3JhdGlvXzNfMSAmLFxuICAgIC5hc3BlY3RfcmF0aW9fMl8xICYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICAgIH1cbiAgICBoMSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNTBweCkge1xuICAubmV3c1NsaWRlU2hvdy1oZWFkbGluZSB7XG4gICAgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLyogV2VhdGhlciBFbGVtZW50IFN0eWxlcyAqL1xuXG4vLyAxLiBHbG9iYWwgU3R5bGVzXG4vLyAyLiA1IERheSBGb3JlY2FzdFxuLy8gMy4gQWNjb21vZGF0aW9ucyBmb3IgU21hbGwgQ29sdW1ucyBhbmQgTW9iaWxlIFZpZXdzXG5cbi8vIDEuIEdsb2JhbCBTdHlsZXNcbi53ZWF0aGVyRWxlbWVudCB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgZm9udC1mYW1pbHk6JGZvbnRUd287XG4gIGNvbG9yOiRib2R5Q29weUNvbG9yVHdvO1xuICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyQ29sb3I7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXJDb2xvcjtcbiAgYm9yZGVyLXdpZHRoOiAzcHggMCAzcHggMDtcbiAgYm9yZGVyLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KC03MmRlZywgI0FBQSAwcHgsIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgM3B4LCAjQUFBIDRweCkgMyAzO1xuICBib3JkZXItaW1hZ2U6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxNjJkZWcsICNBQUEgMHB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDNweCwgI0FBQSA0cHgpIDMgMztcbiAgJi53ZWF0aGVyLW5vRm9yZWNhc3Qge1xuICAgIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgLndlYXRoZXItcmFuZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndlYXRoZXItNWRheUZvcmVjYXN0IHtcbiAgICBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAuY2xlYXJmaXgge1xuICAgICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgIH1cbiAgICAgIGJ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OmlubGluZTtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC53ZWF0aGVyLWhpZ2gsIC53ZWF0aGVyLWxvdyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG4gIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiA1NSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLndlYXRoZXItaWNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMCAwIDAgLTVweDtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogLjc7XG4gICAgICB9XG4gICAgfVxuICAgIC53ZWF0aGVyLXRlbXBlcmF0dXJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRmb250T25lO1xuICAgICAgZm9udC1zaXplOnJlbSg1Mik7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBjb2xvcjokYm9keUNvcHlDb2xvclR3bztcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC53ZWF0aGVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRmb250VHdvO1xuICAgICAgZm9udC1zaXplOnJlbSgxOCk7XG4gICAgICBjb2xvcjokYm9keUNvcHlDb2xvclR3bztcbiAgICB9XG4gICAgLndlYXRoZXItcmFuZ2Uge1xuICAgICAgZm9udC1zaXplOnJlbSgzMik7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC53ZWF0aGVyLWxvY2F0aW9uIHsgXG4gICAgICBmb250LXNpemU6cmVtKDEyKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgfVxuICAgIHAge1xuICAgICAgJi53ZWF0aGVyLXJhbmdlIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgJi53ZWF0aGVyLWxvY2F0aW9uIHsgbWFyZ2luOiAwOyBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIDIuIDUgRGF5IEZvcmVjYXN0XG4ud2VhdGhlci01ZGF5Rm9yZWNhc3Qge1xuICBib3JkZXI6IDA7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogNDUlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBmb250LXNpemU6IHJlbSgxNik7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyLWxlZnQ6ICRib3JkZXJXaWR0aCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gIHVsIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAud2VhdGhlci1oaWdoIHtcbiAgICBsaW5lLWhlaWdodDogMzJweDsgXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC53ZWF0aGVyLWxvdyB7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cblxuLy8gMy4gQWNjb21vZGF0aW9ucyBmb3IgU21hbGwgQ29sdW1ucyBhbmQgTW9iaWxlIFZpZXdzXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQtMyxcbiAgLmNvbC1tZC00LFxuICAuY29sLW1kLTYge1xuICAgIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDsgXG4gICAgICB3aWR0aDogMTAwJTsgXG4gICAgICBib3JkZXI6IDA7XG4gICAgICAud2VhdGhlci10ZW1wZXJhdHVyZSB7IFxuICAgICAgICBmb250LXNpemU6IHJlbSg0Mik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzUlO1xuICAgICAgfVxuICAgICAgLndlYXRoZXItZGVzY3JpcHRpb24sXG4gICAgICAud2VhdGhlci1yYW5nZSxcbiAgICAgIC53ZWF0aGVyLWxvY2F0aW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNSU7XG4gICAgICB9XG4gICAgfVxuICAgIC53ZWF0aGVyLTVkYXlGb3JlY2FzdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lOyBcbiAgICB9XG4gIH1cbiAgLmNvbC1tZC0zIHtcbiAgICAud2VhdGhlci1jdXJyZW50Q29uZGl0aW9ucyB7XG4gICAgICAud2VhdGhlci1pY29uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAud2VhdGhlci10ZW1wZXJhdHVyZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDM2KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICB9XG4gICAgICAud2VhdGhlci1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICB9XG4gICAgICAud2VhdGhlci1sb2NhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICB9XG4gICAgICAud2VhdGhlci1yYW5nZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgfVxuICAgIH1cbiAgICAud2VhdGhlci01ZGF5Rm9yZWNhc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgXG4gICAgfVxuICB9IFxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuY29sLW1kLTQsIFxuICAuY29sLW1kLTMge1xuICAgIC53ZWF0aGVyRWxlbWVudHtcbiAgICAgIC53ZWF0aGVyLTVkYXlGb3JlY2FzdCB7XG4gICAgICAgIGxpe1xuICAgICAgICAgIGZvbnQtc2l6ZTpyZW0oMTQpO1xuICAgICAgICAgIGJ7XG4gICAgICAgICAgICB3aWR0aDozNnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBpbWd7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gXG4gICAgfVxuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDoxMDAwcHgpIGFuZCAobWluLXdpZHRoOjc2OHB4KSB7XG4gIC5sYXlvdXQtMjUtNTAtMjUgLmNvbC1tZC0zIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIC53ZWF0aGVyLWljb24geyBmbG9hdDogbm9uZTsgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NDBweCkge1xuICAud2VhdGhlckVsZW1lbnQge1xuICAgIC53ZWF0aGVyLWN1cnJlbnRDb25kaXRpb25zIHsgXG4gICAgICB3aWR0aDogMTAwJTsgXG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICAgIC53ZWF0aGVyLTVkYXlGb3JlY2FzdCB7IFxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG5cbiIsIi8qIHBlX3N1cnZleV9yZXBvcnQuY3NzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKi9cblxuI2RlZmF1bHRSZXBvcnQgeyBjbGVhcjogYm90aDsgfVxuLnJlcG9ydC1jb250YWluZXIgeyBjbGVhcjpib3RoOyBvdmVyZmxvdzphdXRvOyBwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlcjoxcHggc29saWQgI2NjYzsgfVxuLnJlcG9ydC1zY3JvbGwgeyBib3JkZXI6MXB4IHNvbGlkICNDQ0M7IH1cbi5pdGVtVmFyaWF0aW9ucyAuY29sdW1uTmFtZXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiA1cHggMDtcbn1cbi5yZXBvcnRUYWJsZUVsZW1lbnQgLmZpbHRlcmVkX3N1cnZleV9hY3Rpb25zIHsgZmxvYXQ6cmlnaHQ7IGxpc3Qtc3R5bGU6bm9uZTsgbWFyZ2luLWxlZnQ6MTBweDsgfVxuLnJlcG9ydFRhYmxlRWxlbWVudCAuZmlsdGVyZWRfc3VydmV5X2FjdGlvbnMgLmljb24geyBjb2xvcjojNjY2OyBmb250LXNpemU6MTRweDsgZmxvYXQ6bGVmdDsgdGV4dC1pbmRlbnQyOi05OTllbTsgcGFkZGluZzowIDAgMCAyMHB4OyBtYXJnaW46M3B4IDZweCAwIDA7IH1cbi5yZXBvcnRUYWJsZUVsZW1lbnQgLnJlcG9ydF9yZXN1bHRzX2NvdW50IHtcbiAgYmFja2dyb3VuZDp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvcmVnaXN0cmF0aW9uL2dsb3NzX3NoYWRvd19saWdodC5wbmdcIikgcmVwZWF0LXggMCBjZW50ZXIgI0VFRTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgYm9yZGVyLWJvdHRvbTpub25lO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cHggNHB4IDRweDtcbn1cbi5yZXBvcnRUYWJsZUVsZW1lbnRIZWFkZXIsIC5yZXBvcnRUYWJsZUVsZW1lbnRIZWFkZXIgaDMsIC5yZXBvcnRUYWJsZUVsZW1lbnQgLmZpbHRlcmVkX3N1cnZleV9hY3Rpb25zIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICAvL1xufVxuLy8gUmVwb3J0IFRhYmxlXG4ucmVwb3J0VGFibGV7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRib2R5e1xuICAgIHRye1xuICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICB0ZHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0ZHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZHtib3JkZXItbGVmdDogbm9uZTt9XG4gICAgICAgICY6bGFzdC1jaGlsZHtib3JkZXItcmlnaHQ6IG5vbmU7fVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBmdWxsc2NyZWVuIHJlcG9ydCBwb3B1cCAqL1xuLmZ1bGxzY3JlZW4tb3ZlcmxheSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6OTk5OTk7XG59XG4uZnVsbHNjcmVlbi1wb3B1cCB7XG4gICAgYmFja2dyb3VuZDojRkZGO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDoyMHB4OyByaWdodDoyMHB4OyBib3R0b206MjBweDsgbGVmdDoyMHB4O1xuICAgIHBhZGRpbmc6MjBweDtcbn1cbi5mdWxsc2NyZWVuLXBvcHVwIC5mdWxsc2NyZWVuLWNsb3NlIHtcbiAgICBsaW5lLWhlaWdodDoyMHB4O1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHotaW5kZXg6OTk5OTk7XG4gICAgdG9wOjIwcHg7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICByaWdodDoyMHB4O1xuICAgIHdpZHRoOjIwcHg7XG4gICAgaGVpZ2h0OjIwcHg7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBjb2xvcjojOTk5O1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xufVxuLmZ1bGxzY3JlZW4tcG9wdXAgLmZ1bGxzY3JlZW4tY2xvc2U6aG92ZXIgeyBjb2xvcjojYzAwOyB9XG4iLCIvKiBWZW51ZSBTdGF0dXMgUGFnZSBFbGVtZW50ICovXG4vLyAxLiBNaXhpbnNcbi8vIDIuIEJhc2UgU3R5bGVzXG4vLyAzLiBCcmVha3BvaW50c1xuXG5cbi8vIDEuIEJhc2UgU3R5bGVzXG5AbWl4aW4gdGFibGUtdmVudWUtZWxlbWVudC1taW5pIHtcbiAgLnZlbnVlRWxlbWVudCAuZGF0YVRhYmxlIHtcbiAgICB0ZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAudmVudWVfbmFtZSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLnR4dF9vcGVuLFxuICAgIC50eHRfY2xvc2VkLFxuICAgIC50eHRfcGVuZGluZyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAgICAgIFxuICAgIH1cbiAgfVxufVxuXG5cbi8vIDIuIEJhc2UgU3R5bGVzXG4udmVudWVFbGVtZW50IC5kYXRhVGFibGUge1xuICAkc3RhdHVzLWNvbG9yLW9wZW46ICMwMkEyMTg7XG4gICRzdGF0dXMtY29sb3ItY2xvc2VkOiAjRTUwMDAwO1xuICAkc3RhdHVzLWNvbG9yLXBlbmRpbmc6ICM5MjkyOTI7XG5cbiAgLmhlYWRpbmcge1xuICAgIC50aXRsZSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS10aC10ZXh0O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIC52ZW51ZV9oZWFkaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIHRkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLnZlbnVlX25hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLnR4dF9vcGVuLFxuICAudHh0X2Nsb3NlZCxcbiAgLnR4dF9wZW5kaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAudHh0X29wZW4geyBjb2xvcjogJHN0YXR1cy1jb2xvci1vcGVuOyB9XG4gIC50eHRfY2xvc2VkIHsgY29sb3I6ICRzdGF0dXMtY29sb3ItY2xvc2VkOyB9XG4gIC50eHRfcGVuZGluZyB7IGNvbG9yOiAkc3RhdHVzLWNvbG9yLXBlbmRpbmc7IH1cblxuICAuaW1nX29wZW4sXG4gIC5pbWdfY2xvc2VkLFxuICAuaW1nX3BlbmRpbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IC42ZW07XG4gICAgd2lkdGg6IC42ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5pbWdfb3BlbiB7IGJhY2tncm91bmQtY29sb3I6ICRzdGF0dXMtY29sb3Itb3BlbjsgfVxuICAuaW1nX2Nsb3NlZCB7IGJhY2tncm91bmQtY29sb3I6ICRzdGF0dXMtY29sb3ItY2xvc2VkOyB9XG4gIC5pbWdfcGVuZGluZyB7IGJhY2tncm91bmQtY29sb3I6ICRzdGF0dXMtY29sb3ItcGVuZGluZzsgfVxufVxuXG5cbi8vIDMuIEJyZWFrcG9pbnRzXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgQGluY2x1ZGUgdGFibGUtdmVudWUtZWxlbWVudC1taW5pO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC0zLFxuICAuY29sLW1kLTQge1xuICAgIEBpbmNsdWRlIHRhYmxlLXZlbnVlLWVsZW1lbnQtbWluaTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAubGF5b3V0LTI1LTUwLTI1IC5jb2x1bW4ge1xuICAgIEBpbmNsdWRlIHRhYmxlLXZlbnVlLWVsZW1lbnQtbWluaTtcbiAgfVxufVxuIiwiLyogUG93ZXIgUmFua2luZ3MgRWxlbWVudCAqL1xuXG4vLyAxLiBHZW5lcmFsIFN0eWxlc1xuLy8gMi4gVGFibGUgU3R5bGVzXG4vLyAzLiBUZWFtIExvZ28gJiBQb3NpdGlvbiBNb3ZlbWVudCBJY29ucyBcblxuXG4vLyAxLiBHZW5lcmFsIFN0eWxlc1xuLnJhbmtpbmdzRWxlbWVudCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICA+IGgzIHtcbiAgICBAaW5jbHVkZSBzcGVjaWFsLWhlYWRlcjtcbiAgICBtYXJnaW4tbGVmdDogJHRhYmxlLWNlbGwtc3BhY2luZztcbiAgfVxufVxuXG4vLyAyLiBUYWJsZSBTdHlsZXNcbi5yYW5raW5nc0VsZW1lbnQgLnN0YXRUYWJsZSB7XG4gIC5leHBhbmRlZFZpZXcgeyBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbiAgdGQsIHRoIHtcbiAgICAmLm5hbWUgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIH1cblxuICB0aCB7XG4gICAgJjpudGgtY2hpbGQoMSkgeyB3aWR0aDogNSU7IH0gIC8vIFJhbmsgY29sdW1uXG4gICAgJi5sb2dvTGluayB7IHdpZHRoOiAwJTsgfSAgICAgIC8vIExvZ28gY29sdW1uIChzaHJpbmtzIHRvIGZpdClcbiAgICAmLm5hbWUgeyB3aWR0aDogNjUlOyB9ICAgICAgICAgLy8gVGVhbSBjb2x1bW5cbiAgICAmOm50aC1jaGlsZCg0KSB7IHdpZHRoOiAxMCU7IH0gLy8gUmVjb3JkIGNvbHVtblxuICAgICY6bnRoLWNoaWxkKDUpIHsgd2lkdGg6IDEwJTsgfSAvLyBQcmV2IGNvbHVtblxuICAgICY6bnRoLWNoaWxkKDYpIHsgd2lkdGg6IDEwJTsgfSAvLyBNb3ZlIGNvbHVtblxuICB9XG5cbiAgdGQge1xuICAgICY6bnRoLWNoaWxkKDEpIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuICAgICYubmFtZSBhIHtcbiAgICAgIG1pbi13aWR0aDogMTgwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgJi5sb2dvTGluayB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAudGVhbUxvZ28tbGFyZ2Vfc3F1YXJlIHsgQGluY2x1ZGUgdGFibGUtdGVhbS1sb2dvOyB9XG4gICAgfVxuICB9XG59XG4gIFxuLy8gMy4gVGVhbSBMb2dvICYgUG9zaXRpb24gTW92ZW1lbnQgSWNvbnMgIFxuLnJhbmtpbmdzRWxlbWVudCB7ICBcbiAgLmxvZ29MaW5rIC50ZWFtTG9nby1tZWRpdW0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLnVwLFxuICAuZG93bixcbiAgLm5vQ2hhbmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgfVxuICB9XG5cbiAgLnVwOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjA2MlwiOyAvLyBmYS1hcnJvdy11cFxuICAgIGNvbG9yOiAjMmFjMjU4O1xuICB9XG5cbiAgLmRvd246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYzXCI7IC8vIGZhLWFycm93LWRvd25cbiAgICBjb2xvcjogI2MyMmEyYTtcbiAgfVxuXG4gIC5ub0NoYW5nZTphZnRlciB7XG4gICAgY29udGVudDogXCJcXGYwN2VcIjtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxufVxuIiwiLyogU2luZ2xlIEltYWdlIEVsZW1lbnQgKi9cblxuLmhlcm9QaG90b0VsZW1lbnQge1xuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5jdXRsaW5lIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8qIFN1cnZleSBMaW5rIEVsZW1lbnQgKi9cbi8vIDEuIEdlbmVyYWwgU3R5bGluZ1xuLy8gMi4gQWNjb21kaWRhdGlvbiBmb3IgU21hbGwgU2NyZWVucyBhbmQgTW9iaWxlIFZpZXdzXG5cbi8vIDEuIEdlbmVyYWwgU3R5bGluZ1xuLnBhZ2VFbGVtZW50LnN1cnZleUxpbmtFbGVtZW50e1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOm5vbmU7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBhe1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwYWRkaW5nOjEwcHg7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBmb250LXNpemU6cmVtKDE2KTtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgYmFja2dyb3VuZDokbGluay1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGxpbmstY29sb3ItZGFya2VuLTIwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6JGZvbnRPbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZDokbGluay1jb2xvci1kYXJrZW4tMjA7XG4gICAgfVxuICAgIHNwYW57XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6XCJcXGYwNjFcIjtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjZweDtcbiAgICAgICAgaGVpZ2h0OjFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0oMTMpO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGNvbG9yOiRhY2NlbnQtY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtMXB4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgICB9XG4gICAgfVxuICAgIHNtYWxse1xuICAgICAgZm9udC1zaXplOnJlbSgxNik7XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgfVxuICB9XG59XG4ucGFnZUVsZW1lbnQuc3VydmV5TGlua0VsZW1lbnQgYTpob3ZlciA+IHNwYW46YWZ0ZXJ7XG4gICAgY29sb3I6I2ZmZjtcbn1cbiIsIi8qIENhbGwgdG8gQWN0aW9uIEVsZW1lbnQgKi9cbi8vIDEuIERlZmF1bHQgU3R5bGVzXG4vLyAyLiBWYXJpYXRpb25zXG4vLyAzLiBFZGdlIENhc2UgRml4ZXNcbi8vIDQuIEZpeCBmb3IgdGFsbCB0ZXh0IGluIHNob3J0IGNvbnRhaW5lclxuLy8gNS4gQWRqdXN0bWVudHMgZm9yIFNtYWxsIENvbHVtbnMgJiBNb2JpbGUgVmlld3Ncbi8vIDYuIEFjY29taWRhdGlvbiBmb3IgdG91Y2ggc2NyZWVuc1xuXG4vLyAxLiBEZWZhdWx0IFN0eWxlc1xuLnNuLWNhbGwtdG8tYWN0aW9uLFxuLnNuLWNhbGwtdG8tYWN0aW9uICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLnNuLWNhbGwtdG8tYWN0aW9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgZGlzcGxheTpub25lO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjVweDtcbiAgICBiYWNrZ3JvdW5kOiRhY2NlbnQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgI2ZmZjtcbiAgICB6LWluZGV4OjEwO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6XCJcIjtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBib3R0b206MDtcbiAgICBsZWZ0OjA7XG4gICAgZGlzcGxheTpub25lO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjNweDtcbiAgICBib3JkZXItdG9wOjJweCBzb2xpZCAjZmZmO1xuICAgIHotaW5kZXg6MTA7XG4gICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuKCNhYWEsI2ZmZik7XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5LWlubmVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBmb250LXNpemU6IHJlbSgxMCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTokZm9udE9uZTtcbiAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDAuM2VtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTokZm9udFR3bztcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgYSxcbiAgICBzcGFuIHtcbiAgICAgIG1hcmdpbjogMCAuMjVlbTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxufVxuLnNuLWNhbGwtdG8tYWN0aW9uIC5zbi1jYWxsLXRvLWFjdGlvbi1zdWJ0aXRsZTpmaXJzdC1vZi10eXBlID4gKiB7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG59XG5cbi8vIDIuIFZhcmlhdGlvbnNcblxuLyogU2xpZGUgVXAgKi9cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXAge1xuICAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogJGxpbmstY29sb3Jfb3BhY2l0eTtcbiAgICB0b3A6IGF1dG87XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzIGVhc2U7XG4gIH1cbiAgLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi1zdWJ0aXRsZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5zbi1jYWxsLXRvLWFjdGlvbi1zdWJ0aXRsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vKiBab29tICovXG4uc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLXpvb20ge1xuICBpbWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXMgZWFzZSwgdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBpbWcge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgfVxuICB9XG59XG5cbi8qIFRleHQgWm9vbSAqL1xuLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb20ge1xuICAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheS10ZXh0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzIGVhc2UsIHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dCB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB9XG4gIH1cbn1cblxuLyogQm9yZGVyICovXG4uc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLWJvcmRlciB7XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5IHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwIHRyYW5zcGFyZW50LCBpbnNldCAwIDAgMCAwIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cyBlYXNlLWluO1xuICB9XG4gICY6aG92ZXIge1xuICAgIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5IHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgN3B4IDAgMTBweCAkbGluay1jb2xvcl9vcGFjaXR5LCBpbnNldCAwIC01cHggMCAxMHB4ICRsaW5rLWNvbG9yX29wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi8vIDMuIEVkZ2UgQ2FzZSBGaXhlc1xuXG4vKiBtaXJyb3JlZCBDVEEgcHJldmlldyBpbWcgYWxpZ25tZW50IGZpeGVzICovXG4ucGUyNSAuZWxlbWVudFByZXZpZXcgaW1nLFxuLnBlMzMgLmVsZW1lbnRQcmV2aWV3IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBweDtcbn1cblxuLy8gNC4gRml4IGZvciB0YWxsIHRleHQgaW4gc2hvcnQgY29udGFpbmVyXG4uc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLXRhbGwtdGV4dCB7XG4gIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cbi5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tem9vbS5zbi12YXJpYXRpb24tdGFsbC10ZXh0IHtcbiAgJjpob3ZlciB7XG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKSB0cmFuc2xhdGUoLTQwJSwgLTQwJSk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKSB0cmFuc2xhdGUoLTQwJSwgLTQwJSk7XG4gICAgfVxuICB9XG59XG5cbi8vIDUuIEFkanVzdG1lbnRzIGZvciBTbWFsbCBDb2x1bW5zICYgTW9iaWxlIFZpZXdzXG5cbi8qIHBhcmFncmFwaCBzcGFjaW5nICovXG4ucGUyNSAuc24tY2FsbC10by1hY3Rpb24tb3ZlcmxheS10ZXh0IHAge1xuICBtYXJnaW4tYm90dG9tOiAuMTVlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAuY29sLW1kLTQgLnNuLWNhbGwtdG8tYWN0aW9uLCAuY29sLW1kLTMgLnNuLWNhbGwtdG8tYWN0aW9ue1xuICAgIC5zbi1jYWxsLXRvLWFjdGlvbi10aXRsZXtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICB9XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxle1xuICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIH1cbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNTBweCkge1xuICAuc24tY2FsbC10by1hY3Rpb257XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxle1xuICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgIH1cbiAgICAuc24tY2FsbC10by1hY3Rpb24tc3VidGl0bGV7XG4gICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgfVxuICB9XG59XG5cbi8vIDYuIEFjY29tb2RhdGlvbiBmb3IgdG91Y2ggc2NyZWVuc1xuLnRvdWNoLXNjcmVlbiB7XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXAsXG4gIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXA6Zm9jdXMsXG4gIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tc2xpZGUtdXA6aG92ZXJ7XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXkge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLXN1YnRpdGxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICAuc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLWJvcmRlcixcbiAgLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi1ib3JkZXI6Zm9jdXMsXG4gIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tYm9yZGVyOmhvdmVye1xuICAgIC5zbi1jYWxsLXRvLWFjdGlvbi1vdmVybGF5e1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgN3B4IDAgMTBweCAkbGluay1jb2xvcl9vcGFjaXR5LCBpbnNldCAwIC01cHggMCAxMHB4ICRsaW5rLWNvbG9yX29wYWNpdHk7XG4gICAgfVxuICB9XG4gIC5zbi1jYWxsLXRvLWFjdGlvbi5zbi12YXJpYXRpb24tdGV4dC16b29tLFxuICAuc24tY2FsbC10by1hY3Rpb24uc24tdmFyaWF0aW9uLXRleHQtem9vbTpmb2N1cyxcbiAgLnNuLWNhbGwtdG8tYWN0aW9uLnNuLXZhcmlhdGlvbi10ZXh0LXpvb206aG92ZXJ7XG4gICAgLnNuLWNhbGwtdG8tYWN0aW9uLW92ZXJsYXktdGV4dHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGV4dCBCbG9jayBTcGVjaWZpYyBTdHlsZXNcbi5wYWdlRWwgLnRleHRCbG9ja0VsZW1lbnQge1xuICB0YWJsZSB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICM5OTk7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIHRkLCB0aCB7XG4gICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICB9XG5cbiAgICAmOm5vdChbYm9yZGVyXSkge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG5cbiAgICAgIHRoIHtcbiAgICAgICAgQGluY2x1ZGUgdGFibGUtdGg7XG4gICAgICAgIEBpbmNsdWRlIHRhYmxlLXRoLXRleHQ7ICAgXG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgICAgaGVpZ2h0OiAkdGFibGUtcm93LW1pbi1oZWlnaHQ7IC8vIEFjdHMgYXMgbWluLWhlaWdodCBvbiB0YWJsZSBjZWxsc1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbYWxpZ249XCJjZW50ZXJcIl0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgYmxvY2txdW90ZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250VHdvO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgcGFkZGluZzogMTVweCAxZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4ICRhY2NlbnQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRhY2NlbnQtY29sb3I7XG4gIH1cblxuICAubGVmdFRleHRJbWFnZSxcbiAgLnJpZ2h0VGV4dEltYWdlIHtcbiAgICBiciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAudGV4dCB7XG4gICAgPiBvbCwgPiB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIENvZGUgRWxlbWVudCAqL1xuLmNvZGVFbGVtZW50IHtcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgaWZyYW1lIHsgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIGNvZGUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cbi5kaXNwbGF5Q29kZUVsZW1lbnQgcHJlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzMzMztcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlRWxlbWVudEFkbWluIC5jb2RlRWxlbWVudCB7XG4gIHByZSB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xuICAgIGJhY2tncm91bmQ6ICM2NjY7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmNvZGVFcnJvck1lc3NhZ2V7XG4gICAgbWFyZ2luOiA1cHggMCAwOyBcbiAgICBwYWRkaW5nOjVweCAxMHB4OyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzUxNTE1OyBcbiAgICBmb250LXdlaWdodDo2MDA7IFxuICAgIGZvbnQtc2l6ZTowLjg3NWVtOyBcbiAgICBjb2xvcjojZmZmO1xuICB9XG4gICYuY29kZUVycm9ye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGQ5ZDk7IFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjNTE1MTU7IFxuICAgIHBhZGRpbmc6MTBweDsgXG4gICAgY29sb3I6IzMzMztcbiAgfVxufSIsIi8qIHNlcmlvdXMgZGlzcGxhaXkgaXNzdWVzIGluIGNocm9tZSAxNSBXaW5kb3dzIHdoZW4gY29tYmluZWQgd2l0aCAzZCB0cmFuc2Zvcm1zICovXG4jR2FtZVNob3dTY29yZWJvYXJkLFxuI0ZPUCxcbi5mb3BQb3BVcCB7IHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZXNwZWVkOyB9XG5cbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1Mb2dve1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5zcG9ydFRhYmxlTGFiZWwgLnRlYW1OYW1lLFxuLnNwb3J0VGFibGVMYWJlbCBoNC50ZWFtTmFtZSB7XG4gIHBhZGRpbmc6MDtcbn1cblxuLndpZGdldEhpZXJhcmNoeXtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4ud2lkZ2V0SGllcmFyY2h5ID4gdWwgbGkgbGkgLnNlYXNvbkRpc3BsYXl7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53aWRnZXRIaWVyYXJjaHkgdWx7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLndpZGdldEhpZXJhcmNoeSAubGFzdExpe1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2FtZVh0cmFze1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi5nYW1lWHRyYXMgbGl7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICNENUQ1RDU7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4uZ2FtZVh0cmFzIGxhYmVse1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5zdGF0dXNfaW5fcHJvZ3Jlc3N7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICM1ZThkMGY7XG59XG5cbi5ib3hzY29yZSAuc3RhdHVzX2luX3Byb2dyZXNze1xuICBjb2xvcjogI2ExZTMyZjtcbn1cblxuI1RlYW1TdGF0c0RpdixcbiNQbGF5ZXJTdGF0c0RpdixcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiB7XG4gIC5zdGF0LWNhdGVnb3J5LWhlYWRlciB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgY29sb3I6ICRsaW5rX2NvbG9yO1xuICAgIGZvbnQ6ICRwYWdlLWhlYWRpbmctZm9udDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgfVxufVxuXG4jVGVhbVN0YXRzRGl2ICpbaWRePVwidGVhbS1zbVwiXSxcbiNQbGF5ZXJTdGF0c0RpdiAqW2lkXj1cInBsYXllci1zbVwiXSxcbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cInRlYW0tc21cIl0sXG4jVGVhbUluc3RhbmNlU3RhdHNEaXYgKltpZF49XCJwbGF5ZXItc21cIl1cbiNUZWFtSW5zdGFuY2VTdGF0c0RpdiAqW2lkXj1cImRpdmlzaW9uLXRlYW0tc21cIl0ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIHNwZWNpYWwtaGVhZGVyO1xuICB9XG59XG5cbiNwYWdlQ29udGVudENvbnRhaW5lciBoMy5zdGF0LWNhdGVnb3J5LWhlYWRlciB7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjOTk5O1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICM2NjYgMCUsICMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIzY2NiksIGNvbG9yLXN0b3AoMTAwJSwjMzMzKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzY2NiAwJSwjMzMzIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNjY2IDAlLCMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNjY2IDAlLCMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICM2NjYgMCUsIzMzMyAxMDAlKTtcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweCA0cHggMHB4IDBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwcHggMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG4gIHRleHQtaW5kZW50OiAxMHB4O1xufVxuaDMuc3RhdC1jYXRlZ29yeS1oZWFkZXIgLnN0YXQtY2F0ZWdvcnktbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogJGxpbmstY29sb3I7XG59XG4jdGFiX2NvbXBsZXRlZ2FtZWxpc3RfY29udGVudCAucGFnZUVsZW1lbnQge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiBmaWx0ZXIgc3R5bGVzICovXG4udGFnLWZpbHRlckZvcm17XG5cdGRpc3BsYXk6YmxvY2s7XG5cdHdpZHRoOjEwMCU7XG5cdHBhZGRpbmc6IDIwcHggOHB4O1xuXHRsYWJlbHtcblx0XHRmbG9hdDpsZWZ0O1xuXHRcdG1hcmdpbi1yaWdodDo4cHg7XG5cdFx0c2VsZWN0e1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjRweDtcblx0XHR9XG5cdH1cblx0LmlucHV0Q2hvaWNle1xuXHRcdGZsb2F0OmxlZnQ7XG5cdFx0bWFyZ2luOjAgNXB4IDAgMDtcblx0XHRwYWRkaW5nOiA2cHggMCAwIDA7XG5cdFx0bGFiZWx7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6NHB4O1xuXHRcdFx0cGFkZGluZzoycHggMnB4IDAgMDtcblx0XHRcdGZvbnQtc2l6ZTouNzVlbTtcblx0XHR9XG5cdH1cblx0LnRhZy1maWx0ZXJXcmFwe1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6MnB4IDEycHggOHB4IDA7XG5cdFx0aGVpZ2h0OjMwcHg7XG5cdH1cbn1cbi50YWctZmlsdGVyRm9ybSAudGFnLWZpbHRlcldyYXAuYnV0dG9ue1xuXHR0cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTEwcHgpO1xuXHQtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwtMTBweCk7XG5cbiAgLmNvbC1tZC0zICYsXG4gIC5jb2wtbWQtNCAmIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG4iLCIjUHJldmlld1N0YXRzRGl2IC5uZXh0X2dhbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7XG4gIGNvbG9yOiNGRkY7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgcGFkZGluZzoxMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA1MSUsIHJnYmEoMCwgMCwgMCwgMCkgOTUlLCByZ2JhKDAsIDAsIDAsIDAuMikgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6MTBweCAxMHB4IDAgMCAvIDEwMCUgMTAwJSAwIDA7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICM0NDQ7XG59XG4jUm9zdGVyUGxheWVyU3RhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLm5leHRfZ2FtZV9zcGxpdHMge1xuICAgIGJvcmRlci1ib3R0b206MTBweCBzb2xpZCAjMzMzO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICBwYWRkaW5nOjA7XG4gICAgLk5naW5UYWJsZUNvbnRyb2xzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IzMzMztcbiAgICAgIGNvbG9yOiNGRkY7XG4gICAgfVxuICB9XG4gIC5uZXh0X2dhbWV7XG4gICAgLmluZm8ge1xuICAgICAgcGFkZGluZy10b3A6NnB4O1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDoxNnB4O1xuICAgICAgd2lkdGg6MjAlO1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgZm9udC1zaXplOjE4cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOjJweDtcbiAgICB9XG4gICAgLnZzX29yX2F0IHtcbiAgICAgIGZvbnQtc2l6ZTozMHB4O1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206MjBweDtcbiAgICB9XG4gICAgLnRpbWUge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGZvbnQtc2l6ZToxMHB4O1xuICAgICAgY29sb3I6Izk5OTtcbiAgICB9XG4gICAgLnRlYW0ge1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIHdpZHRoOjMyJTtcbiAgICAgIGJhY2tncm91bmQ6IzU1NTtcbiAgICAgIHBhZGRpbmc6MiU7XG4gICAgfVxuICAgIC5hd2F5X3RlYW0ge1xuICAgICAgcGFkZGluZy1yaWdodDo2JTtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czo3cHggMzAlIDMwJSAwIC8gMTAwJSAxMDAlIDAgMDtcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czo3cHggMzAlIDMwJSAwIC8gMTAwJSAxMDAlIDAgMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6N3B4IDMwJSAzMCUgMCAvIDEwMCUgMTAwJSAwIDA7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgLTEwcHggMnB4IDIwcHggcmdiYSgwLDAsMCwuNCksIDAgMCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICAgICAgLW1vei1ib3gtc2hhZG93Omluc2V0IC0xMHB4IDJweCAyMHB4IHJnYmEoMCwwLDAsLjQpLCAwIDAgMXB4IDFweCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgICAgIGJveC1zaGFkb3c6aW5zZXQgLTEwcHggMnB4IDIwcHggcmdiYSgwLDAsMCwuNCksIDAgMCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICAgIH1cbiAgICAuaG9tZV90ZWFtIHtcbiAgICAgIGZsb2F0OnJpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OjYlO1xuICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czozMCUgN3B4IDAgMzAlIC8gMTAwJSAxMDAlIDAgMDtcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czozMCUgN3B4IDAgMzAlIC8gMTAwJSAxMDAlIDAgMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6MzAlIDdweCAwIDMwJSAvIDEwMCUgMTAwJSAwIDA7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMTBweCAycHggMjBweCByZ2JhKDAsMCwwLC40KSwgMCAwIDFweCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuMik7XG4gICAgICAtbW96LWJveC1zaGFkb3c6aW5zZXQgMTBweCAycHggMjBweCByZ2JhKDAsMCwwLC40KSwgMCAwIDFweCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuMik7XG4gICAgICBib3gtc2hhZG93Omluc2V0IDEwcHggMnB4IDIwcHggcmdiYSgwLDAsMCwuNCksIDAgMCAxcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICAgIH1cbiAgfVxuICAudGVhbV9sb2dvIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgfVxuICAudGVhbV9uYW1lIHtcbiAgICBmb250LXNpemU6MThweDtcbiAgICBsaW5lLWhlaWdodDoyMHB4O1xuICAgIGhlaWdodDoyMHB4O1xuICAgIG1hcmdpbjo0cHggMCAwO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzplbGxpcHNpcztcbiAgfVxuICAuc3RhdC1jYXRlZ29yeS1oZWFkZXIge1xuICAgIEBpbmNsdWRlIHNwZWNpYWwtaGVhZGVyO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgLnN0YXRUYWJsZSB7XG4gICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOiBib3R0b20pO1xuXG4gICAgLmxhc3Qge1xuICAgICAgdGQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5nb1RvTGluayB7XG4gICAgQGluY2x1ZGUgbGluay13aXRoLWFycm93O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuI1Jvc3RlclBsYXllclN0YXRzIHRkLmRhdGUsXG4jUm9zdGVyUGxheWVyU3RhdHMgdGQubmFtZSxcbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ZC5zY29yZSxcbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ZC5zcGxpdCB7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbn1cbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ZDpmaXJzdC1jaGlsZCxcbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0aDpmaXJzdC1jaGlsZCB7IHRleHQtYWxpZ246bGVmdDsgcGFkZGluZy1sZWZ0OjEwcHg7IH1cbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0cltkYXRhLXRvZ2dsZXNdIHRkOmZpcnN0LWNoaWxkIHsgcGFkZGluZy1sZWZ0OjEuOGVtOyB9XG4jUm9zdGVyUGxheWVyU3RhdHMgdHIudG90YWxzIHRkIHsgYmFja2dyb3VuZC1jb2xvcjojNTU1OyBjb2xvcjojRkZGOyB9XG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc2Vhc29uIHRkIHsgYmFja2dyb3VuZC1jb2xvcjojREREOyBib3JkZXItdG9wOjFweCBzb2xpZCAjQkJCOyB9XG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc3Vic2Vhc29uIHRkIHsgYmFja2dyb3VuZC1jb2xvcjojRjdGN0Y3OyB9XG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuZ2FtZV9sb2cgKyB0ci5zdWJzZWFzb24gdGQgeyBib3JkZXItdG9wOjFweCBzb2xpZCAjQ0NDOyB9XG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc3Vic2Vhc29uX3RvdGFscyB7IGJhY2tncm91bmQ6ICNDMUMxQzE7IH1cblxuI1Jvc3RlclBsYXllclN0YXRzIHRyLnRvdGFscyB0ZCxcbiNSb3N0ZXJQbGF5ZXJTdGF0cyB0ci5zZWFzb24gdGQsXG4jUm9zdGVyUGxheWVyU3RhdHMgdHIuc3Vic2Vhc29uIHRkIHtcblxufVxuI1Jvc3RlclBsYXllclN0YXRzIHRyLnN1YnNlYXNvbiB0ZCB7XG4gIGNvbG9yOiAjNjc2NzY3O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiNHYW1lTG9nRGl2e1xuICAucmVzdWx0IHtcbiAgICB3aWR0aDogNyU7XG4gICAgbWluLXdpZHRoOiA1MHB4O1xuICB9XG4gIC5vcHBvbmVudCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxufVxuXG4jQ2FyZWVyU3RhdHNEaXYgLnN0YXRUYWJsZXtcbiAgdGQuZGVzY3JpcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgdHIuc2Vhc29uIHRkLmRhdGUge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgfVxufVxuI1Jvc3RlclBsYXllclN0YXRzIC5pbmFjdGl2ZV9ub3RpY2Uge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZjE3MWQ7XG4gIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHdpZHRoOiA5OSU7XG4gIHN0cm9uZ3tcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5pLmRlc2lnbmF0aW9uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hcHBfaW1hZ2VzL3Jvc3Rlcl9wbGF5ZXJfZGVzaWduYXRpb25zLmdpZik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJi51bmNvbW1pdHRlZCB7IGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IH1cbiAgJi5zdXNwZW5kZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTVweCAwcHg7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IH1cbiAgJi5yb29raWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzBweCAwcHg7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IH1cbiAgJi5wbWogeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDVweCAwcHg7IHdpZHRoOiAyNnB4OyBoZWlnaHQ6IDEwcHg7IH1cbiAgJi5pbmp1cmVkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTc2cHggMHB4OyB3aWR0aDogMTBweDsgaGVpZ2h0OiAxMHB4OyB9XG4gICYuaW1wb3J0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTkxcHggMHB4OyB3aWR0aDogMThweDsgaGVpZ2h0OiAxMHB4OyB9XG4gICYuY29tbWl0dGVkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNHB4IDBweDsgd2lkdGg6IDEwcHg7IGhlaWdodDogMTBweDsgfVxuICAmLmFmZmlsaWF0ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjlweCAwcHg7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IH1cbn1cbi5yb3N0ZXJUYWJsZU92ZXJmbG93e1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OnZpc2libGU7XG59XG5cbi5yb3N0ZXJMaXN0aW5nVGFibGV7XG4gIC5waG90b3tcbiAgICB3aWR0aDogMyU7XG5cbiAgICBpbWd7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2RkZDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cbiAgLm51bWJlciB7XG4gICAgd2lkdGg6IDMlXG4gIH1cbiAgdGJvZHkgdGQubmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgdGJvZHkgdGQge1xuICAgIHdpZHRoOiAxMCVcbiAgfVxufVxuIiwiLyogR2FtZSBDZW50ZXIgKi9cblxuLmxvZ28tZ3JhZGllbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogOTBweDtcbiAgd2lkdGg6IDEwMHB4O1xufVxuLndpbm5lcnMtbm90Y2gge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yKycvYXBwX2ltYWdlcy9nYW1lX2NlbnRlci93aW5uZXJzTm90Y2gucG5nJyk7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAwIDAgMCAtOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4vKiBHYW1lIExpc3QgKi9cbi5nYW1lTGlzdFRlYW17XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5zY29yZXtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWluLXdpZHRoOiA2JTtcbiAgfVxufVxuR2FtZUxpdmVWaWRlb3tcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogSW4gUHJvZ3Jlc3MgSGlnaGxpZ2h0cyAqL1xudHIuaW5fcHJvZ3Jlc3MgLmdhbWVfc3RhdHVzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfY2VudGVyL2lucHJvZ3Jlc3NCRy5wbmdcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsMTM4LDAsMCkgMCUsIHJnYmEoNjUsMTM4LDAsMC41KSAxMDAlKTsgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLHJnYmEoNjUsMTM4LDAsMCkpLCBjb2xvci1zdG9wKDEwMCUscmdiYSg2NSwxMzgsMCwwLjUpKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDY1LDEzOCwwLDApIDAlLHJnYmEoNjUsMTM4LDAsMC41KSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsMTM4LDAsMCkgMCUscmdiYSg2NSwxMzgsMCwwLjUpIDEwMCUpOyAvKiBPcGVyYTExLjEwKyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoNjUsMTM4LDAsMCkgMCUscmdiYSg2NSwxMzgsMCwwLjUpIDEwMCUpOyAvKiBJRTEwKyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSg2NSwxMzgsMCwwKSAwJSxyZ2JhKDY1LDEzOCwwLDAuNSkgMTAwJSk7IC8qIFczQyAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbn1cbnRyLmluX3Byb2dyZXNzIC5nYW1lX3N0YXR1cyBpbWcsXG4uYm94c2NvcmUtZXh0cmFzLmluX3Byb2dyZXNzIHAuZGV0YWlscyBhIGltZyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCA1cHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjY1KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDVweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuNjUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDVweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuNjUpO1xufVxuLyogU1BPUlQgTkdJTiBMSVZFIExJTktTICovXG5wLndhdGNoTGl2ZS1saXZlLHAud2F0Y2hMaXZlLXJlY2Fwe1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzOHB4O1xuICBtYXJnaW46IDE1cHggMjBweCAxNXB4IDE1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIG1hcmdpbjogMCAtNXB4IDAgMDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTk5OXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5wLndhdGNoTGl2ZS1saXZlIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2xpdmUvd2F0Y2hMaXZlLWxpdmUucG5nXCIpIDAgMDtcbiAgYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2xpdmUvd2F0Y2hMaXZlLWxpdmUucG5nXCIpIDEwMCUgLTM4cHg7XG4gIH1cbn1cbnAud2F0Y2hMaXZlLXJlY2FwIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2xpdmUvd2F0Y2hMaXZlLXJlY2FwLnBuZ1wiKSAwIDA7XG4gIGEge1xuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9saXZlL3dhdGNoTGl2ZS1yZWNhcC5wbmdcIikgMTAwJSAtMzhweDtcbiAgfVxufVxucC53YXRjaExpdmUtbGl2ZTpob3ZlciwgcC53YXRjaExpdmUtcmVjYXA6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAgIDAgICAtNzZweDtcbiAgYXtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIC0xMTRweDtcbiAgfVxufVxucC53YXRjaExpdmUtbGl2ZTphY3RpdmUsIHAud2F0Y2hMaXZlLXJlY2FwOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICAgMCAgLTE1MnB4O1xuICBhe1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgLTE5MHB4O1xuICB9XG59XG4uYm94c2NvcmUtZXh0cmFzIHAud2F0Y2hMaXZlLWxpbmt7XG4gIGZsb2F0OiByaWdodDsgbWFyZ2luLXRvcDogLTJweDtcbiAgYXtcbiAgICBwYWRkaW5nOiA4cHggNXB4IDJweDtcbiAgfVxufVxuIiwiLnRoZW1lLWdhbWUtbGlzdC13aWRnZXQge1xuXG4gIC8vIGRvdWJsZSBjbGFzcyByZXF1aXJlZCBmb3Igc3BlY2lmaWNpdHlcbiAgLnN0YXRUYWJsZS5zbi10YWJsZS1nYW1lLWxpc3Qge1xuICAgIFxuICAgICR0ZWFtLXNsb3QtaGVpZ2h0OiAzMHB4O1xuICAgICR0ZWFtLXNsb3Qtc3BhY2luZzogMnB4O1xuICAgICRzY29yZS13aWR0aDogNGVtO1xuICAgIFxuICAgIHRoLCB0ZDpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIFxuICAgIC5kYXRlLXRpbWUsXG4gICAgLmdhbWUtaWQtZ2FtZS1udW1iZXIge1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgXG4gICAgLnRpbWUgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4gICAgXG4gICAgLnRlYW0tbG9nbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIG1hcmdpbjogLTExcHggNXB4IC05cHggMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIFxuICAgIC5zdGF0dXMgYSB7XG4gICAgICBAaW5jbHVkZSBsaW5rLXdpdGgtYXJyb3c7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbiAgICAgIFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFRBQkxFIExBWU9VVCBTVFlMRVNcbiAgICBcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtYXhXaWR0aCkge1xuICAgICAgXG4gICAgICAubGF5b3V0LTEwMCAmIHtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgXG4gICAgICAgIHRkIHtcbiAgICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5hd2F5LXRlYW0tc2NvcmUsXG4gICAgICAgIC5ob21lLXRlYW0tc2NvcmUgeyB3aWR0aDogNGVtOyB9XG4gICAgICAgIC5kYXRlLXRpbWUtaGVhZGVyIHsgd2lkdGg6IDE0LjVlbTsgfVxuICAgICAgICAuZ2FtZS1pZC1nYW1lLW51bWJlci1oZWFkZXIgeyB3aWR0aDogNmVtOyB9XG4gICAgICAgIC5zdGF0dXMtaGVhZGVyIHsgd2lkdGg6IDEwZW07IH1cbiAgICAgICAgXG4gICAgICAgIC8vIG1ha2UgZ2FtZSBudW1iZXIgZWxsaXBzaXMgZnJvbSBsZWZ0IChzaW5jZSByaWdodCBjaGFycyBhcmUgbW9zdCBpbXBvcnRhbnQpXG4gICAgICAgIC5nYW1lLWlkLWdhbWUtbnVtYmVyIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgIFxuICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcDtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCmXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAtMS43NWVtO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNFRUU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxZW07XG4gICAgICAgICAgICAgIGhlaWdodDogMS43ZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICAgICAgICBsZWZ0OiAtMTAwJTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtLjk5ZW07IC8vIHRyaWNrIEZGIGludG8gd3JhcHBpbmcgdGhpc1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtLjVlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLS41ZW07XG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC8vIENPTUFQQ1QgTElTVCBTVFlMRVNcbiAgICAvLyAxMDAlIHdpZHRoIGNvbHVtbnMgYXQgZGVza3RvcCB3aWR0aCBhcmUgdGhlIG9ubHkgb25lcyB0aGF0IGNhbiBzdXBwb3J0XG4gICAgLy8gdGhlIHRhYmxlIGxheW91dC4gRXZlcnl0aGluZyBlbHNlIGdldHMgdGhlIGNvbXBhY3QgbGlzdCBzdHlsZS5cbiAgICBcbiAgICBAbWl4aW4gY29tcGFjdC1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgXG4gICAgICAvLyBvdmVycmlkZSBzdGF0IHRhYmxlIGFkanVzdG5tZW50cyBmb3Igb3V0ZXIgdGFibGUgc3BhY2luZ1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIFxuICAgICAgdGhlYWQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB0Ym9keSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICB0ZCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgXG4gICAgICB0ciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6ICR0ZWFtLXNsb3QtaGVpZ2h0ICogMiArICR0ZWFtLXNsb3Qtc3BhY2luZyAqIDMgKyA2cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgICAgICAgXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOmJvdHRvbSk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweCAtICR0ZWFtLXNsb3Qtc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICB0ZDpub3QoLmF3YXktdGVhbS1uYW1lKTpub3QoLmhvbWUtdGVhbS1uYW1lKTpub3QoLmF3YXktdGVhbS1zY29yZSk6bm90KC5ob21lLXRlYW0tc2NvcmUpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIFxuICAgICAgICAmOm5vdCguc3RhdHVzKSB7IG1hcmdpbi1yaWdodDogNnB4OyB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5hd2F5LXRlYW0tbmFtZSxcbiAgICAgIC5ob21lLXRlYW0tbmFtZSxcbiAgICAgIC5hd2F5LXRlYW0tc2NvcmUsXG4gICAgICAuaG9tZS10ZWFtLXNjb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICR0ZWFtLXNsb3Qtc3BhY2luZztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogJHRlYW0tc2xvdC1oZWlnaHQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzY29yZS13aWR0aH0gLSAjeyR0ZWFtLXNsb3Qtc3BhY2luZ30pO1xuICAgICAgfVxuICAgICAgXG4gICAgICAuaG9tZS10ZWFtLW5hbWUsXG4gICAgICAuaG9tZS10ZWFtLXNjb3JlIHsgdG9wOiAkdGVhbS1zbG90LWhlaWdodCArICR0ZWFtLXNsb3Qtc3BhY2luZyAqIDI7IH1cbiAgICAgIFxuICAgICAgLmF3YXktdGVhbS1zY29yZSxcbiAgICAgIC5ob21lLXRlYW0tc2NvcmUge1xuICAgICAgICB3aWR0aDogJHNjb3JlLXdpZHRoO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmdhbWUtaWQtZ2FtZS1udW1iZXIgPiAqOmJlZm9yZSB7IGNvbnRlbnQ6IFwiR2FtZSBJRDogXCI7IH1cbiAgICAgIFxuICAgICAgLnN0YXR1cyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICBcbiAgICAgICAgYSB7IGZvbnQtc2l6ZTogMTFweDsgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY29sLW1kLTMgJixcbiAgICAuY29sLW1kLTQgJixcbiAgICAuY29sLW1kLTYgJixcbiAgICAuY29sLW1kLTggJiB7IEBpbmNsdWRlIGNvbXBhY3QtbGlzdDsgfVxuICAgIFxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1heFdpZHRoIC0gMSkge1xuICAgICAgLmNvbC1tZC0xMiAmIHsgQGluY2x1ZGUgY29tcGFjdC1saXN0OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRvdXJuZXkgZ2FtZSBsaXN0IGVsZW1lbnRcbi5nYW1lTGlzdEVsZW1lbnQgLnNuLXRhYmxlLWdhbWUtbGlzdCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAuc3RhdHVzIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAmOmFmdGVyIHsgY29udGVudDogJyc7IH1cbiAgfVxuXG4gIC8vIGNvbHVtbiB3aWR0aHNcbiAgLmF3YXktdGVhbS1zY29yZSA+IGRpdixcbiAgLmhvbWUtdGVhbS1zY29yZSA+IGRpdiB7IG1pbi13aWR0aDogM2VtOyB9XG4gIC5hd2F5LXRlYW0tbmFtZSA+IGRpdixcbiAgLmhvbWUtdGVhbS1uYW1lID4gZGl2IHsgbWluLXdpZHRoOiAxNGVtOyB9XG4gIC52ZW51ZS1zdWJ2ZW51ZSA+IGRpdiB7IG1pbi13aWR0aDogMTJlbTsgfVxuICAuZ2FtZS1pZC1nYW1lLW51bWJlciA+IGRpdiB7IG1pbi13aWR0aDogNGVtOyB9XG4gIC5zdGF0dXMgPiBkaXYgeyBtaW4td2lkdGg6IDZlbTsgfVxufVxuIiwiLy8gU2NvcmVib2FyZFxuI0dhbWVTaG93U2NvcmVib2FyZFNpbXBsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgLmdhbWUtaGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxufVxuIiwiLyogU3BvcnQgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LWhlYWRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLnRlYW1Mb2dvIHtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogMTIwcHg7XG4gIH1cblxuICAjc25tX2FkdmVydCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICY6YmVmb3Jle1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQ6IG5vcm1hbCAxNHB4LzFlbSAkZm9udE9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICBAaW5jbHVkZSBmb250LXNtb290aGluZygpO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6dXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL21hcmtldGluZy9tb2JpbGVQaG9uZS5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cblxuICAgICY6aG92ZXJ7IG9wYWNpdHk6IDE7IH1cblxuICAgIHNwYW4sXG4gICAgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OjMzcHg7XG4gICAgfVxuICB9XG59XG4vKiBMZWFndWVzIGFuZCBMZXZlbHMgQnJlYWRjcnVtYnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtY3J1bWJzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBsaW5lLXBhdHRlcm4tYm9yZGVyKDMsIGJvdHRvbSk7XG5cbiAgJi5uby1jcnVtYnMgeyBib3JkZXItaW1hZ2U6IG5vbmU7IH1cblxuICAuc3BvcnQtY3J1bWJzLWJ0bnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy15OmhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDo0NnB4O1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cblxuICB1bCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250OiBub3JtYWwgMTBweC8xZW0gRm9udEF3ZXNvbWU7XG4gICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCBhOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG5cbiAgICBsaS5jcnVtYlNlbGVjdGVkIHtcbiAgICAgIGJhY2tncm91bmQ6I2ZmZjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgYSB7IGNvbG9yOiAjMDAwOyB9XG5cbiAgICAgIC5hcnJvdy1kb3duOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwZDhcIjtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNwb3J0LWNydW1icy1saXN0IHVsIGxpIGEgeyBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cblxuICBhIHtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBmb250OiAxNnB4LzFlbSBGb250QXdlc29tZTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6JGxpbmstY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFycm93LWRvd24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIGE6aG92ZXIgeyBjb2xvcjogIzAwMDsgfVxuXG4gIC5hcnJvdy1kb3duOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjBkN1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5zcG9ydC1jcnVtYnMtbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0OXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIGxlZnQ6MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYWNjZW50LWNvbG9yO1xuXG4gICAgJi50aGlzQ3J1bWIge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBkcm9wZG93bi1zZWFzb24gJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgICBhbmltYXRpb246IGRyb3Bkb3duLXNlYXNvbiAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC44NSk7XG4gICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGltZyB7IG1hcmdpbjogMCAzcHggLTNweCAwOyB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNwb3J0LWNydW1icy1saXN0LWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC44NSk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMHB4IDEwcHg7XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxMnB4LzFlbSBGb250QXdlc29tZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNzcG9ydC1jcnVtYnMgYSB7XG4gICYubGFzdF9jaGlsZCxcbiAgJi5sYXN0X2NoaWxkOmhvdmVyIHsgYmFja2dyb3VuZDogbm9uZTsgfVxufVxuXG4uZHJvcGRvd24td3JhcHBlcjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG4ucHJvdG90aXAgLnNwb3J0LWNydW1icy1saXN0IHsgZGlzcGxheTogYmxvY2s7IH1cblxuXG4vKiBTcG9ydCBUb29sc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNzcG9ydC1oZWFkZXIge1xuICAuc3BvcnQtdG9vbHMge1xuICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNlY2VjZWM7XG5cbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRlbnQtdGFiLWl0ZW07XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgY29udGVudC10YWI7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzFlbSBGb250QXdlc29tZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7IGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRsaW5rLWNvbG9yOyB9XG4gICAgICB9XG5cbiAgICAgIC5zZWxlY3RlZHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRsaW5rLWNvbG9yO1xuICAgICAgICBib3JkZXItcmlnaHQ6MHB4O1xuICAgICAgfVxuXG4gICAgICAjdG9vbC1ob21lIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTVcIjsgfVxuICAgICAgI3Rvb2wtcm9zdGVyIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDdcIjsgfVxuICAgICAgI3Rvb2wtZ2FtZS1zY2hlZHVsZSBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMzXCI7IH1cbiAgICAgICN0b29sLXBsYXllci1zdGF0cyBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDgwXCI7IH1cbiAgICAgICN0b29sLXRlYW0tc3RhdHMgYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZVwiOyB9XG4gICAgICAjdG9vbC1zdGFuZGluZ3MgYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiM1wiOyB9XG4gICAgICAjdG9vbC1icmFja2V0IGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZThcIjsgfVxuICAgICAgI3Rvb2wtcGhvdG8gYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZVwiOyB9XG4gICAgICAjdG9vbC12aWRlbyBhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM4XCI7IH1cbiAgICAgICN0b29sLXBvc3RzIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODZcIjsgfVxuICAgICAgLnRvb2wteWVsbG93LWFkbWluIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTNcIjsgfVxuICAgICAgLnRvb2wteWVsbG93LW1hbmFnZS10ZWFtIGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjRcIjsgfVxuICAgIH1cblxuICAgIHVsLnRvb2xzIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAuYnV0dG9uLXRvb2wgeyBmbG9hdDogbGVmdDsgfVxuXG4gICAgbGksXG4gICAgI2F1dG9SZWZyZXNoQmFyIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIGxpLnRvb2wteWVsbG93IHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2VkYzUyYztcblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZGRkNDAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Nwb3J0LWhlYWRlci9idG5zQkcteWwuZ2lmXCIpIDAgMCByZXBlYXQteDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZjO1xuICAgICAgICBjb2xvcjogIzgwNzU0MDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaS50b29sLXllbGxvdzpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNkZGEzMDA7XG4gICAgICBjb2xvcjogIzU5NDEwMDtcblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGRkNDA7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmYztcbiAgICAgICAgY29sb3I6ICMxYTFhMWE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGkudG9vbC15ZWxsb3c6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RkYTMwMDtcbiAgICAgIGNvbG9yOiAjNTk0MTAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZGQ0MDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYwcHg7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3BvcnQtdG9vbHMge1xuICBsaSB7XG4gICAgQGluY2x1ZGUgY29udGVudC10YWItaXRlbTtcblxuICAgIGEgeyBsaXN0LXN0eWxlOiBub25lOyB9XG4gIH1cbn1cblxuLnNwb3J0LXRvb2xzIGxpIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGkgYSxcbiNhdXRvUmVmcmVzaEJhciBsaSBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQ6IGJvbGQgMTNweC8xLjEgJGZvbnRPbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAjZmZmO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnNwb3J0LXRvb2xzIGxpOmhvdmVyLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmhvdmVyLFxuI3Nwb3J0LXNsaWRlciBsaTpob3Zlcixcbi5zcG9ydC10b29scyBsaS5zZWxlY3RlZCB7IGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkbGluay1jb2xvcjsgfVxuXG4jYXV0b1JlZnJlc2hCYXIgLnNlbGVjdGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkbGluay1jb2xvcjtcbn1cblxuLnNwb3J0LXRvb2xzIGxpOmFjdGl2ZSxcbiNhdXRvUmVmcmVzaEJhciBsaTpob3ZlciB7IGNvbG9yOiAjMzMzOyB9XG5cbi5zcG9ydC10b29scyBsaTpob3ZlciBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmhvdmVyIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGk6aG92ZXIgbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODBweDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yLWRhcmtlbi0xMDtcbn1cblxuLnNwb3J0LXRvb2xzIGxpOmFjdGl2ZSBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmFjdGl2ZSBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpOmFjdGl2ZSBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4OyBjb2xvcjogIzMzMztcbn1cblxuLnNwb3J0LXRvb2xzIC5zZWxlY3RlZCBhLFxuI2F1dG9SZWZyZXNoQmFyIC5zZWxlY3RlZCBhLFxuI2F1dG9SZWZyZXNoQmFyIC5zZWxlY3RlZCBsYWJlbCxcbi5zcG9ydC10b29scyBsaS5zZWxlY3RlZDpob3ZlciBhLFxuI2F1dG9SZWZyZXNoQmFyIGxpLnNlbGVjdGVkOmhvdmVyIGEsXG4jYXV0b1JlZnJlc2hCYXIgbGkuc2VsZWN0ZWQ6aG92ZXIgbGFiZWwge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNDBweDtcbn1cblxuYm9keSAjYXV0b1JlZnJlc2hCYXIgeyAvLyBgYm9keWAgYWRkZWQgZm9yIGluY3JlYXNlZCBzcGVjaWZpY3R5XG4gIG1hcmdpbjogMTBweCAwIDIwcHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4IDA7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIH1cbn1cblxuXG4vKiBBZG1pbiBNZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNwb3J0LWFkbWluLWJ1dHRvbnN7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAxNHB4IDRweCAwIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBsaSB7IGRpc3BsYXk6IGlubGluZTsgfVxuICB9XG59XG5cbi8qIFllcywgZG91YmxlIElEJ3MgYmVjYXVzZSBJIG9ubHkgd2FudCB0byB0YXJnZXQgdGhpcyB3aGVuIGl0J3MgYSBjaGlsZCBvZiB0aGUgc3BvcnQtaGVhZGVyLiBJdCB3aWxsIGJlIG1vdmVkIGVsc2V3aGVyZSB3aGVuIHRoZSBUaXAganMgZmlyZXMuICovXG4jc3BvcnQtaGVhZGVyICN0b29sLXBhZ2VzLW1lbnUsXG4jc3BvcnQtaGVhZGVyICNzcG9ydC1hZG1pbi1tZW51IHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbi8qIFNwZWNpZmljIFBpbGxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Rvb2wtaG9tZXtcbiAgYTpob3ZlciAgc3BhbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7IH1cbiAgYTphY3RpdmUgc3BhbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4OyB9XG4gICYuc2VsZWN0ZWQgc3BhbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI0MHB4OyB9XG59XG5cbiN0b29sLWNyZWF0ZVdpZGdldCB7XG4gIGZsb2F0OiByaWdodDtcblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmRkZDQwIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zcG9ydC1oZWFkZXIvYnRuc0JHLXlsLmdpZlwiKSAwIDAgcmVwZWF0LXg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZjO1xuICB9XG59XG5cblxuLyogVGVhbSBNaW5pIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50ZWFtTWluaUhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgLnRlYW1Mb2dvLXNtYWxsIHsgZmxvYXQ6IGxlZnQ7IH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vKiBPdmVybGF5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3Nwb3J0LXRvb2xzLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybCgvYXBwX2ltYWdlcy9sb2FkZXI0LmdpZikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTAyNHB4KSB7XG4gICNzcG9ydC1oZWFkZXIgLnNwb3J0LXRvb2xzIHVsIGxpIGEgeyBmb250LXNpemU6IC44ZW07IH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2OXB4KSB7XG4gICNzcG9ydC1oZWFkZXIge1xuICAgICNzcG9ydC1jcnVtYnMge1xuICAgICAgdWwgbGkuY3J1bWJTZWxlY3RlZCB7IHBvc2l0aW9uOnN0YXRpYzsgfVxuXG4gICAgICAuc3BvcnQtY3J1bWJzLWxpc3QgeyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuICAgICAgYSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC43MGVtO1xuXG4gICAgICAgICAgJjphZnRlciB7IGZvbnQ6IDEwcHgvMWVtIEZvbnRBd2Vzb21lOyB9XG4gICAgICAgIH1cblxuICAgICAgICAuYXJyb3ctZG93biB7IG1hcmdpbi1sZWZ0OiAwcHg7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3BvcnQtdG9vbHMgdWwgbGkgYSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDJweDtcbiAgICAgIGZvbnQtc2l6ZTogMGVtO1xuXG4gICAgICAmOmJlZm9yZSB7ZGlzcGxheTogYmxvY2s7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIFNwb3J0L0xlYWd1ZS9MZXZlbC9UZWFtIE5hbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jc3BvcnQtaGVhZGVyIHtcbiAgLnNwb3J0LWNvbG9ycyB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogJGJhc2UtcGFkZGluZyAkYmFzZS1wYWRkaW5nICRiYXNlLXBhZGRpbmcvMjtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAudGVhbS1sb2dvLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgICB3aWR0aDogNzVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY5cHgpIHtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgIH1cblxuICAgICAgJixcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjojY2NjO1xuICAgICAgfVxuXG4gICAgICAmLm5vbG9nb3tcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDhweDtcbiAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDhweDtcbiAgICAgICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDRweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgIGZvbnQ6ICRwYWdlLWhlYWRpbmctZm9udDtcblxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb250OiBib2xkIDEuM2VtLzEuNGVtICRmb250T25lO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIGRpdi5wbGF5ZXJfcGhvdG8ge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgJGxpbmtfY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlua19jb2xvcjtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICB9XG4gICAgLnRlYW1Mb2dvLXNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gIH1cblxuICAuYWJzMCxcbiAgLmFiczByIHsgcG9zaXRpb246IGFic29sdXRlOyBvdmVyZmxvdzogaGlkZGVuOyB3aWR0aDogMDsgaGVpZ2h0OiAwO31cbiAgLmFiczAgIHsgbGVmdDogMDsgfVxuICAuYWJzMHIgeyByaWdodDogMDsgfVxuXG4gIC8qIFRlYW0gQ29sb3JzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC5jb2xvclswLDEsMl1bcl1bLXNtLC1tLC1sLC14bF0gKGRlZmF1bHRzIHRvIGxlZnQsIGxhcmdlKSAqL1xuXG4gIC8qIEJvcmRlcnMgLT4gKi8gICAgICAgICAgIC8qIFRvcCAqLyAgICAgICAgICAgICAgICAgICAgICAvKiBSaWdodCAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTGVmdCAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEJvdHRvbSAqL1xuXG4gIC8qIFNlcGFyYXRvciBDb2xvciAqL1xuICAuY29sb3IwLXNtLCAgLmNvbG9yMC1tICAgeyBib3JkZXItdG9wOiAxMnB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiAzNnB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgIGJvcmRlci1sZWZ0OiAzNnB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjAsICAgICAuY29sb3IwLWwgICB7IGJvcmRlci10b3A6IDIycHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDY2cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICAgYm9yZGVyLWxlZnQ6IDY2cHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAyMnB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbG9yMC14bCAgICAgICAgICAgICAgIHsgYm9yZGVyLXRvcDogMzJweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogOTZweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgICBib3JkZXItbGVmdDogOTZweCAgc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDMycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuICAuY29sb3Iwci1zbSwgLmNvbG9yMHItbSAgeyBib3JkZXItdG9wOiAxMnB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiAzNnB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzNnB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjByLCAgICAuY29sb3Iwci1sICB7IGJvcmRlci10b3A6IDIycHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDY2cHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDY2cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICBib3JkZXItYm90dG9tOiAyMnB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbG9yMHIteGwgICAgICAgICAgICAgIHsgYm9yZGVyLXRvcDogMzJweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogOTZweCAgc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogOTZweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgIGJvcmRlci1ib3R0b206IDMycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuXG4gIC8qIFByaW1hcnkgQ29sb3IgKi9cbiAgLmNvbG9yMS1zbSwgIC5jb2xvcjEtbSAgIHsgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogMzBweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgICBib3JkZXItbGVmdDogMzBweCAgc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuICAuY29sb3IxLCAgICAgLmNvbG9yMS1sICAgeyBib3JkZXItdG9wOiAyMHB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiA2MHB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgIGJvcmRlci1sZWZ0OiA2MHB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjEteGwgICAgICAgICAgICAgICB7IGJvcmRlci10b3A6IDMwcHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDkwcHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICAgYm9yZGVyLWxlZnQ6IDkwcHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbG9yMXItc20sIC5jb2xvcjFyLW0gIHsgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogMzBweCAgc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMzBweCAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuICAuY29sb3IxciwgICAgLmNvbG9yMXItbCAgeyBib3JkZXItdG9wOiAyMHB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiA2MHB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA2MHB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjFyLXhsICAgICAgICAgICAgICB7IGJvcmRlci10b3A6IDMwcHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDkwcHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDkwcHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICBib3JkZXItYm90dG9tOiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4gIC8qIFNlY29uZGFyeSBDb2xvciAqL1xuICAuY29sb3IyLXNtLCAgLmNvbG9yMi1tICAgeyBib3JkZXItdG9wOiAxNXB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiA0NXB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgIGJvcmRlci1sZWZ0OiA0NXB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTVweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjIsICAgICAuY29sb3IyLWwgICB7IGJvcmRlci10b3A6IDI1cHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDc1cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICAgYm9yZGVyLWxlZnQ6IDc1cHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbG9yMi14bCAgICAgICAgICAgICAgIHsgYm9yZGVyLXRvcDogMzVweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogMTA1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgICBib3JkZXItbGVmdDogMTA1cHggc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDM1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuICAuY29sb3Iyci1zbSwgLmNvbG9yMnItbSAgeyBib3JkZXItdG9wOiAxNXB4IHNvbGlkICNmZmY7ICAgYm9yZGVyLXJpZ2h0OiA0NXB4ICBzb2xpZCAjZmZmOyAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0NXB4ICBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAgYm9yZGVyLWJvdHRvbTogMTVweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2xvcjJyLCAgICAuY29sb3Iyci1sICB7IGJvcmRlci10b3A6IDI1cHggc29saWQgI2ZmZjsgICBib3JkZXItcmlnaHQ6IDc1cHggIHNvbGlkICNmZmY7ICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDc1cHggIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7ICBib3JkZXItYm90dG9tOiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbG9yMnIteGwgICAgICAgICAgICAgIHsgYm9yZGVyLXRvcDogMzVweCBzb2xpZCAjZmZmOyAgIGJvcmRlci1yaWdodDogMTA1cHggc29saWQgI2ZmZjsgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTA1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgIGJvcmRlci1ib3R0b206IDM1cHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgZGlzcGxheTogbm9uZTsgfVxuXG5cbiAgLyogRWRnaW5nXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5lZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc3BvcnQtaGVhZGVyL2VkZ2UucG5nXCIpIDAgMCByZXBlYXQteDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkZ2UtdG9vbHMge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zcG9ydC1oZWFkZXIvdG9vbHMtZWRnZS5wbmdcIikgMCAwIHJlcGVhdC14O1xuICAgIGhlaWdodDogMTJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiBUZWFtIExvZ29cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qXG4gIExvZ28gc2l6ZXMgYXJlLi4uXG4gIDIwIHggMjAgLSB0aW55XG4gIDYwIHggMjAgLSBzbWFsbFxuICA5MCB4IDMwIC0gbWVkaXVtXG4gIDEyMCB4IDQwIC0gbGFyZ2VcbiAgMTUwIHggNTAgLSBleHRyYSBsYXJnZVxuICAzMDAgeCAxMDAgLSBwcmludFxuKi9cblxuLypTaGFwZSovXG4udGVhbUxvZ28sXG4udGVhbUxvZ28tdGlueSxcbi50ZWFtTG9nby1zbWFsbCxcbi50ZWFtTG9nby1tZWRpdW0sXG4udGVhbUxvZ28tbGFyZ2UsXG4udGVhbUxvZ28tZXh0cmFfbGFyZ2UsXG4udGVhbUxvZ28tcHJpbnQsXG4udGVhbUxvZ29yLFxuLnRlYW1Mb2dvci10aW55LFxuLnRlYW1Mb2dvci1zbWFsbCxcbi50ZWFtTG9nb3ItbWVkaXVtLFxuLnRlYW1Mb2dvci1sYXJnZSxcbi50ZWFtTG9nb3ItZXh0cmFfbGFyZ2UsXG4udGVhbUxvZ29yLXByaW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLypTaXplKi9cbi50ZWFtTG9nby10aW55LFxuLnRlYW1Mb2dvci10aW55IHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS10aW55LnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi50ZWFtTG9nby1zbWFsbCxcbi50ZWFtTG9nb3Itc21hbGwge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdGVhbV9sb2dvcy90ZWFtLXNtYWxsLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi50ZWFtTG9nby1tZWRpdW0sXG4udGVhbUxvZ29yLW1lZGl1bSB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tbWVkaXVtLnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA5MHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG59XG5cbi50ZWFtTG9nbyxcbi50ZWFtTG9nby1sYXJnZSxcbi50ZWFtTG9nb3IsXG4udGVhbUxvZ29yLWxhcmdlIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3RlYW1fbG9nb3MvdGVhbS1sYXJnZS5wbmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTIwcHggIWltcG9ydGFudDtcbn1cblxuLnRlYW1Mb2dvLWV4dHJhX2xhcmdlLFxuLnRlYW1Mb2dvci1leHRyYV9sYXJnZSB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tZXh0cmFfbGFyZ2UucG5nXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi50ZWFtTG9nby1wcmludCxcbi50ZWFtTG9nb3ItcHJpbnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdGVhbV9sb2dvcy90ZWFtLXByaW50LnBuZ1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcbn1cblxuLypPcmllbnRhdGlvbiovXG4uc3BvcnQtY29sb3JzIHtcbiAgLnRlYW1Mb2dvLFxuICAudGVhbUxvZ28tbWVkaXVtLFxuICAudGVhbUxvZ28tbGFyZ2UsXG4gIC50ZWFtTG9nby1leHRyYV9sYXJnZSxcbiAgLnRlYW1Mb2dvLXByaW50IHtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIHRvcDogMTBweDtcbiAgfVxuXG4gIC50ZWFtTG9nb3IsXG4gIC50ZWFtTG9nb3ItbWVkaXVtLFxuICAudGVhbUxvZ29yLWxhcmdlLFxuICAudGVhbUxvZ29yLWV4dHJhX2xhcmdlLFxuICAudGVhbUxvZ29yLXByaW50IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogMTBweDtcbiAgfVxuXG4gIC50ZWFtTG9nby1zbWFsbCB7XG4gICAgbGVmdDogNXB4O1xuICAgIHRvcDogNXB4O1xuICB9XG5cbiAgLnRlYW1Mb2dvci1zbWFsbCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogNXB4O1xuICB9XG59XG5cbi8qIEluIFRhYmxlcyAqL1xudGFibGUsXG4uc3BvcnRUYWJsZUxhYmVsIHtcbiAgLnRlYW1Mb2dvLFxuICAudGVhbUxvZ28tdGlueSxcbiAgLnRlYW1Mb2dvLXNtYWxsLFxuICAudGVhbUxvZ28tbWVkaXVtLFxuICAudGVhbUxvZ28tbGFyZ2UsXG4gIC50ZWFtTG9nby1leHRyYV9sYXJnZSxcbiAgLnRlYW1Mb2dvLXByaW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgIC8vIFN0cmV0Y2ggdGVhbSBsb2dvcyB0byBmaXQsIGJ1dCBub3QgdGhlIHBsYWNlaG9sZGVyIGZsYWcgaWNvblxuICAgICY6bm90KFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXBwX2ltYWdlcy90ZWFtX2xvZ29zL3RlYW0tdGlueS5wbmcpO1wiXSkge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLnRlYW1Mb2dvcixcbiAgLnRlYW1Mb2dvci10aW55LFxuICAudGVhbUxvZ29yLXNtYWxsLFxuICAudGVhbUxvZ29yLW1lZGl1bSxcbiAgLnRlYW1Mb2dvci1sYXJnZSxcbiAgLnRlYW1Mb2dvci1leHRyYV9sYXJnZSxcbiAgLnRlYW1Mb2dvci1wcmludCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbn1cbiIsIi8qIFdpZGdldHMgLSBVbml2ZXJzYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXRGb290ZXIgLnRlYW1Mb2dvLXRpbnkgIHsgZmxvYXQ6IHJpZ2h0OyBtYXJnaW46IDAgNXB4IDAgMDsgfVxuLndpZGdldEZvb3RlciAubGlua1RleHQgICAgICAgeyBmbG9hdDogcmlnaHQ7IGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4ud2lkZ2V0Rm9vdGVyIC5saW5rQXJyb3cgICAgICB7IGZsb2F0OiByaWdodDsgfVxuLndpZGdldEhpZXJhcmNoeSBoNCB7IG1hcmdpbjogNXB4IDA7IH1cblxuLyogV2lkZ2V0cyAtIGluIExpZ2h0Ym94XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0LXNvdXJjZSAgeyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiAxLjJlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLndpZGdldC1kYXRhICAgIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjMDAwOyB9XG4ud2lkZ2V0LWZpbHRlcnMgeyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICM2NjY7IGZvbnQtc2l6ZTogMC45ZW07IH1cblxuLyogV2lkZ2V0IEZvb3RlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndpZGdldEZvb3RlciB7IGJhY2tncm91bmQ6ICNmZWZlZmU7IGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7IGZvbnQtc2l6ZTogMTBweDsgbWFyZ2luOiA1cHggMCAwOyBwYWRkaW5nOiA1cHg7IH1cblxuLyogV2lkZ2V0IC0gUm9zdGVyIFBsYXllciBTdGF0cyBXaWRnZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQtcm9zdGVyLXBsYXllcntcbiAgdWx7XG4gICAgbGl7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAmLmxhc3RMaXtcbiAgICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgICAgICAgaDR7XG4gICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjBweDtcbiAgICAgICAgICBhe1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbntcbiAgICAgICAgICAgIGNvbG9yOiMzMzM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sZWFkZXItaGlnaGxpZ2h0e1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgIC5zcG9ydC1jb2xvcnN7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBib3JkZXI6MHB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAuZWRnZXtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wbGF5ZXJfcGhvdG97XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgIG1hcmdpbjogMHB4IDE1cHggMTBweCAxNXB4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHRvcDphdXRvO1xuICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRsaW5rX2NvbG9yO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzdDN0M3OyAvLyBTYW1lIGdyZXkgYXMgZGVmYXVsdCBwbGF5ZXIgcGhvdG9cbiAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc3RhdHN7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgICYuc3RhdHMtbWlub3J7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmLnN0YXRzLW1ham9ye1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubm9FbnRyeXtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHRhYmxle1xuICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAucmFua3tcbiAgICAgIHdpZHRoOiAxJTtcbiAgICB9XG4gICAgLnN0YXR7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICAubGVhZGVyLWhpZ2hsaWdodHtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcHtcbiAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgJi5wbGF5ZXJOYW1le1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbltpZF49XCJ3aWRnZXRfcm9zdGVyX3dpZGdldFwiXSAuc3BvcnRUYWJsZUxhYmVsIHtcbiAgQGluY2x1ZGUgc3BvcnQtdGFibGUtbGFiZWw7XG59XG5cbi5hY3RpdmVQbGF5ZXJzID4gaDQge1xuICBAaW5jbHVkZSBzcGVjaWFsLWhlYWRlcjtcbn1cblxuLyogV2lkZ2V0IC0gR2FtZSBMaXN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0LWdhbWVUYWJsZSB0aCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi53aWRnZXQtZ2FtZVRhYmxlIGEgIHsgb3V0bGluZTogbm9uZTsgfVxuLmdhbWUtbG9jYXRpb24tc21hbGwtbGlzdHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nOiAycHg7IG1hcmdpbi10b3A6IDNweDsgYm9yZGVyLXRvcDogZG90dGVkIDFweCAjQ0NDOyBmb250LXNpemU6OXB4IH1cbi5zaG93TW9yZUdhbWVzIHsgbWFyZ2luLXRvcDogMnB4OyB9XG5cblxuXG4vKiBXaWRnZXQgLSBUZWFtIEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuICAvLyBCYXNlIHRlYW0gYnV0dG9uIHN0eWxlc1xuXG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMge1xuICAgIC5zcG9ydC1jb2xvcnMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDEycHggMTJweCAxMHB4IDY1cHg7IC8vIGxhcmdlIGxlZnQgcGFkZGluZyBjcmVhdGVzIGNvbHVtbiBmb3IgdGVhbSBsb2dvXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLnRlYW1Mb2dvLXNtYWxsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlua19jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudGVhbUxvZ28tc21hbGwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3ItZGFya2VuLTIwO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbGVmdDogLTUzcHg7IC8vIHB1bGwgbG9nbyBpbnRvIHRoZSBjb2x1bW4gY3JlYXRlZCBieSB0aGUgbGVmdCBwYWRkaW5nIGFib3ZlXG4gICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50OyAvLyBvdmVycmlkZXMgYW4gZWFybGllciAhaW1wb3J0YW50XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudF9jb2xvcjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgd2lkdGg6IDNweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRlYW1uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICAgIC50ZWFtbmFtZS1zZXBhcmF0b3Ige1xuICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgfVxuICB9XG5cbiAgLy8gTWl4aW5zIGZvciB0ZWFtIGJ1dHRvbnMgZ3JpZCBsYXlvdXRzXG4gIC8vIENhbid0IHVzZSBzaWxlbnQgY2xhc3NlcyBiZWNhdXNlIFNhc3Mgd29uJ3QgQGV4dGVuZCBhbiBvdXRlciBzZWxlY3RvciBmcm9tIHdpdGhpbiBAbWVkaWFcblxuICAvLyBFbmFibGUgMi0gYW5kIDMtY29sdW1uIGJ1dHRvbiBncmlkcyAoY29sdW1uIHdpZHRocyBtdXN0IGFsc28gYmUgc3BlY2lmaWVkKVxuICBAbWl4aW4gZmxvYXQtdGVhbS1idXR0b24tY29scyB7XG4gICAgLnRlYW1CdG5Db2wge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgKyAudGVhbUJ0bkNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRlciBhbmQgc3RhY2sgYnV0dG9uIGNvbnRlbnRzXG4gIEBtaXhpbiBzdGFjay1sb2dvLWFuZC10ZWFtbmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIH1cbiAgICAudGVhbUxvZ28tc21hbGwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgYXV0byA5cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAudGVhbW5hbWUtc2VwYXJhdG9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRlYW0gYnV0dG9uIGxheW91dHNcblxuICAud2lkZ2V0LXRlYW1CdXR0b25zIHtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5jb2wtbWQtMTIgJi5jb2x1bW5zLTMsXG4gICAgICAuY29sLW1kLTYgJi5jb2x1bW5zLTMsXG4gICAgICAuY29sLW1kLTQgJi5jb2x1bW5zLTMsXG4gICAgICAmLmNvbHVtbnMtMiB7XG4gICAgICAgIEBpbmNsdWRlIGZsb2F0LXRlYW0tYnV0dG9uLWNvbHM7XG4gICAgICB9XG4gICAgICAmLmNvbHVtbnMtMyB7XG4gICAgICAgIC5jb2wtbWQtMTIgJixcbiAgICAgICAgLmNvbC1tZC02ICYsXG4gICAgICAgIC5jb2wtbWQtNCAmIHtcbiAgICAgICAgICAudGVhbUJ0bkNvbCB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMyU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29sLW1kLTYgJi5jb2x1bW5zLTMsXG4gICAgICAuY29sLW1kLTQgJi5jb2x1bW5zLTMsXG4gICAgICAuY29sLW1kLTQgJi5jb2x1bW5zLTIsXG4gICAgICAuY29sLW1kLTMgJi5jb2x1bW5zLTIsXG4gICAgICAuY29sLW1kLTMgJi5jb2x1bW5zLTEge1xuICAgICAgICBAaW5jbHVkZSBzdGFjay1sb2dvLWFuZC10ZWFtbmFtZTtcbiAgICAgIH1cbiAgICAgICYuY29sdW1ucy0zIHtcbiAgICAgICAgLmNvbC1tZC02ICYsXG4gICAgICAgIC5jb2wtbWQtMyAmIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbC1tZC00ICYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCA0cHggNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jb2x1bW5zLTIge1xuICAgICAgICAudGVhbUJ0bkNvbCB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAuY29sLW1kLTYgJiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb2wtbWQtNCAmLFxuICAgICAgICAuY29sLW1kLTMgJiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCA4cHggNnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEEgbGVmdCBuYXYgdGFrZXMgdXAgc29tZSBvZiB0aGUgYXZhaWxhYmxlIHdpZHRoIGJldHdlZW4gdGhlc2UgZGltZW5zaW9uc1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNvbC1tZC0xMiAmLmNvbHVtbnMtMyxcbiAgICAgIC5jb2wtbWQtNCAmLmNvbHVtbnMtMyxcbiAgICAgIC5jb2wtbWQtMyAmLmNvbHVtbnMtMyxcbiAgICAgIC5jb2wtbWQtNCAmLmNvbHVtbnMtMixcbiAgICAgIC5jb2wtbWQtMyAmLmNvbHVtbnMtMixcbiAgICAgIC5jb2wtbWQtNCAmLmNvbHVtbnMtMSxcbiAgICAgIC5jb2wtbWQtMyAmLmNvbHVtbnMtMSAge1xuICAgICAgICBAaW5jbHVkZSBzdGFjay1sb2dvLWFuZC10ZWFtbmFtZTtcbiAgICAgIH1cbiAgICAgIC5jb2wtbWQtMTIgJi5jb2x1bW5zLTMsXG4gICAgICAuY29sLW1kLTEyICYuY29sdW1ucy0yIHtcbiAgICAgICAgQGluY2x1ZGUgZmxvYXQtdGVhbS1idXR0b24tY29scztcbiAgICAgIH1cbiAgICAgIC5jb2wtbWQtMTIgJi5jb2x1bW5zLTMge1xuICAgICAgICAudGVhbUJ0bkNvbCB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29sLW1kLTEyICYuY29sdW1ucy0yIHtcbiAgICAgICAgLnRlYW1CdG5Db2wge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgJi5jb2x1bW5zLTMsXG4gICAgICAmLmNvbHVtbnMtMiB7XG4gICAgICAgIEBpbmNsdWRlIGZsb2F0LXRlYW0tYnV0dG9uLWNvbHM7XG4gICAgICB9XG4gICAgICAmLmNvbHVtbnMtMyB7XG4gICAgICAgIEBpbmNsdWRlIHN0YWNrLWxvZ28tYW5kLXRlYW1uYW1lO1xuICAgICAgICAudGVhbUJ0bkNvbCB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmNvbHVtbnMtMiB7XG4gICAgICAgIC50ZWFtQnRuQ29sIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIEJlbG93IHRoaXMgc2l6ZSwgYWxsIGJ1dHRvbiBncmlkcyBhcmUgc2luZ2xlLWNvbHVtblxuXG4gIH1cblxuICAvKiAtLSBGaWx0ZXJhYmxlLCBTb3J0YWJsZSBUYWJsZSBWYXJpYW50ICovXG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMgdGFibGUge3dpZHRoOjEwMCV9XG5cbiAgLndpZGdldC10ZWFtQnV0dG9ucyB0aGVhZCAgICAgICAgICAge2JhY2tncm91bmQ6I2NjYztib3JkZXI6MXB4IHNvbGlkICNiYmI7fVxuICAud2lkZ2V0LXRlYW1CdXR0b25zIHRoOmZpcnN0LWNoaWxkICB7cGFkZGluZzo1cHh9XG5cbiAgLndpZGdldC10ZWFtQnV0dG9ucyB0ZDpmaXJzdC1jaGlsZCB7IG1pbi13aWR0aDogNDVweDsgfVxuICAud2lkZ2V0LXRlYW1CdXR0b25zIHRkIC5zcG9ydC1jb2xvcnMge2JvcmRlcjpub25lOyBtaW4td2lkdGg6IDQ1cHg7IH1cbiAgLndpZGdldC10ZWFtQnV0dG9ucyB0ZCAudGVhbW5hbWUgeyBwYWRkaW5nOiA1cHggMDsgfVxuXG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgYSxcbiAgLndpZGdldC10ZWFtQnV0dG9ucyB0Ym9keSBhOmhvdmVyLFxuICAud2lkZ2V0LXRlYW1CdXR0b25zIHRib2R5IGE6YWN0aXZlICB7IGJhY2tncm91bmQ6bm9uZTsgYm9yZGVyOm5vbmU7IGNvbG9yOiM4MDgwODA7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowOyB0ZXh0LWRlY29yYXRpb246bm9uZTsgfVxuXG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgdHIgICAgICAgIHsgYmFja2dyb3VuZDogI2Y0ZjRmNCB1cmwoI3snPCU9IGFzc2V0X3BhdGhfZm9yKFwiL2FwcF9pbWFnZXMvd2lkZ2V0cy90ZWFtQnV0dG9uQkcuZ2lmXCIpICU+J30pIDAgMCByZXBlYXQteDsgYm9yZGVyOiAxcHggc29saWQgI2JiYjsgY29sb3I6ICM4MDgwODA7fVxuICAud2lkZ2V0LXRlYW1CdXR0b25zIHRib2R5IHRyOmhvdmVyICB7IGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4OyBib3JkZXI6IDFweCBzb2xpZCAjNjY2OyBjb2xvcjogIzFhMWExYTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC53aWRnZXQtdGVhbUJ1dHRvbnMgdGJvZHkgdHI6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjgwcHg7IGJvcmRlcjogMXB4IHNvbGlkICM5OTk7IGNvbG9yOiAjMzMzOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuXG5cbi8qIFdpZGdldCAtIFRlYW0gQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCAgICAgICAgICAgICAgIHsgbGluZS1oZWlnaHQ6IDEuNWVtIH1cbi5jb2x1bW4gLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBiICAgICB7IG9wYWNpdHk6IDAuODsgfVxuLmNvbHVtbiAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IGIsXG4uY29sdW1uIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgc3BhbiAgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IH1cblxuLnBlMTAwIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYixcbi5wZTY2ICAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IGIsXG4ucGU1MCAgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBiICAgICAgeyBtYXJnaW46IDAgMSUgMCAwOyB0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDI1JTsgfVxuLnBlMTAwIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgc3Bhbixcbi5wZTY2ICAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IHNwYW4sXG4ucGU1MCAgLnNpbmdsZVN1cnZleVJlc3VsdFdpZGdldCBzcGFuICAgeyB3aWR0aDogNzAlOyB9XG5cbi5wZTMzIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYixcbi5wZTMzIC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgc3Bhbixcbi5wZTI1IC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgYixcbi5wZTI1IC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgc3BhbiAgICB7IGZsb2F0OiBub25lOyB9XG5cblxuI2xpZ2h0Ym94Qm9keSAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IHsgbWFyZ2luOiAxNXB4IDE1cHggLTE1cHggfVxuI2xpZ2h0Ym94Qm9keSAuc2luZ2xlU3VydmV5UmVzdWx0V2lkZ2V0IC5vZGQsXG4jbGlnaHRib3hCb2R5IC5zaW5nbGVTdXJ2ZXlSZXN1bHRXaWRnZXQgLmV2ZW4geyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cblxuLyogV2lkZ2V0IC0gR2FsbGVyeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZ2FsbGVyeVdpZGdldCB7XG4gIGJhY2tncm91bmQ6ICNEREQgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3dpZGdldHMvZ2FsbGVyeUJHLnBuZ1wiKSAwIDI2cHggcmVwZWF0LXg7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5zY3JvbGxhYmxle1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLml0ZW1ze1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDEwcHg7XG4gICAgfVxuICB9XG59XG4uZ2FsbGVyeVdpZGdldCAuaGVhZGVyIHtcbiAgY29sb3I6I0ZGRjtcbiAgZm9udC1zaXplOjExcHg7XG4gIGJhY2tncm91bmQ6IzMzMztcbiAgdGV4dC1hbGlnbjpyaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZ2FsbGVyeVdpZGdldCAuaGVhZGVyIGgzIHtcbiAgZGlzcGxheTppbmxpbmU7XG4gIGZsb2F0OmxlZnQ7XG4gIG1hcmdpbjowO1xuICBmb250LXNpemU6MTFweDtcbiAgcGFkZGluZzo1cHggMTBweDtcbiAgd2lkdGg6IDY1JTtcbn1cbi5nYWxsZXJ5V2lkZ2V0IC5oZWFkZXIgYSB7XG4gIGNvbG9yOiM5OTk7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOjVweCAxMHB4O1xuICB6b29tOjE7XG4gICpkaXNwbGF5OmlubGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIGJhY2tncm91bmQ6ICM0NDQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmdhbGxlcnlXaWRnZXQgLmhlYWRlciBhOmhvdmVyIHsgY29sb3I6I0ZGRjsgfVxuLmdhbGxlcnlXaWRnZXQgLm5leHQsXG4uZ2FsbGVyeVdpZGdldCAucHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OjA7XG4gIHdpZHRoOjI5cHg7XG4gIGhlaWdodDoxMDBweDtcbiAgYm90dG9tOjA7XG4gIGN1cnNvcjpwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdhbGxlcnlXaWRnZXQgLm5leHQgeyByaWdodDogMDsgfVxuLmdhbGxlcnlXaWRnZXQgLnByZXYgeyBsZWZ0OiAwOyB9XG4uZ2FsbGVyeVdpZGdldCAubmV4dCBzcGFuLFxuLmdhbGxlcnlXaWRnZXQgLnByZXYgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OjA7XG4gIHdpZHRoOjlweDtcbiAgcGFkZGluZy10b3A6MTRweDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB0b3A6NDNweDtcbiAgbGVmdDoxMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvd2lkZ2V0cy9nYWxsZXJ5TmF2LnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xufVxuLmdhbGxlcnlXaWRnZXQgLnByZXY6aG92ZXIgc3BhbiB7IGJhY2tncm91bmQtcG9zaXRpb246LTlweCAwOyB9XG4uZ2FsbGVyeVdpZGdldCAubmV4dCBzcGFuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMjdweCAwOyB9XG4uZ2FsbGVyeVdpZGdldCAubmV4dDpob3ZlciBzcGFuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMzZweCAwOyB9XG4uZ2FsbGVyeVdpZGdldCAucHJldi5kaXNhYmxlZCBzcGFuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMThweCAwOyB9XG4uZ2FsbGVyeVdpZGdldCAubmV4dC5kaXNhYmxlZCBzcGFuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotNDVweCAwOyB9XG4uZ2FsbGVyeVdpZGdldCAuaXRlbSB7IGJhY2tncm91bmQ6I0ZGRjsgd2lkdGg6NzVweDsgaGVpZ2h0Ojc1cHg7IG1hcmdpbjogMHB4IDhweCA4cHggMHB4OyBvcGFjaXR5OiAwLjkzfVxuLmdhbGxlcnlXaWRnZXQgLml0ZW06aG92ZXIgeyBiYWNrZ3JvdW5kOiMzMzM7b3BhY2l0eTogMTsgfVxuLmdhbGxlcnlXaWRnZXQgLml0ZW0gLnRodW1iIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNEREQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5nYWxsZXJ5V2lkZ2V0IC5pdGVtIGltZy52ZXJ0IHsgd2lkdGg6MTAwJTsgfVxuLmdhbGxlcnlXaWRnZXQgLml0ZW0gaW1nLmhvcml6IHsgaGVpZ2h0OjEwMCU7IH1cbiIsIi5kcm9wZG93bi13cmFwcGVye1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0Oi00MHB4O1xuICAgIHRvcDowO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDAsMCwwLDApIDAlLCByZ2JhKDAsMCwwLDAuMTIpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLHJnYmEoMCwwLDAsMCkpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgwLDAsMCwwLjEyKSkpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4xMikgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4xMikgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuMTIpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjEyKSAxMDAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMxZjAwMDAwMCcsR3JhZGllbnRUeXBlPTEgKTtcbiAgfVxuICAjbWVnYURyb3BEb3duLXNlYXNvbiB7XG4gICAgYmFja2dyb3VuZDogIzQwNDA0MDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzowcHggNTBweCAxMHB4IDEwcHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAuc2Vhc29ueyBcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250OiBub3JtYWwgMTBweC8xZW0gJGZvbnRPbmU7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nKCk7XG4gICAgfVxuICAgIC5zdWJzZWFzb257XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQ6IGJvbGQgMTJweC8xZW0gJGZvbnRPbmU7XG4gICAgICBAaW5jbHVkZSBmb250LXNtb290aGluZygpO1xuICAgIH1cbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcXGYwZDdcIjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDoxMHB4O1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQ6bm9ybWFsIDIwcHgvMWVtIEZvbnRBd2Vzb21lO1xuICAgICAgcGFkZGluZzogMHB4IDRweCA0cHggNHB4O1xuICAgIH1cbiAgfVxuICAjbWVnYURyb3BEb3duLXNlYXNvbi1jYWxsb3V0e1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDAuNzUpO1xuICAgIGNvbG9yOiAjZGRkO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6IDE1cHggMTVweCAyMHB4IDE1cHg7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0b3A6MTAwJTtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGFjY2VudC1jb2xvcjtcbiAgICAuc2Vhc29uLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udDogYm9sZCAxMnB4ICRmb250T25lO1xuICAgICAgcGFkZGluZzogMCAwIDVweDtcbiAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICBzcGFue1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc2VsZWN0LWRvd24tYXJyb3cuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjdweDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6bm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6bm9uZTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNkZGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjIyO1xuICAgICAgfVxuICAgIH1cbiAgICBhLmNsb3NlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDBweCA2cHggMnB4IDZweDtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBhLmN1cnJlbnQge1xuICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1zdGFuZGFyZDtcbiAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuM3B4O1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMztcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvb3RlciB7XG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgIH1cbiAgICBvcHRncm91cCBvcHRpb24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgICB9XG4gIH1cbiAgI21lZ2FEcm9wRG93bi1zZWFzb24ubWRkLWFjdGl2ZXtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjojMjIyO1xuICAgICY6YWZ0ZXJ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IzMzMztcbiAgICB9XG4gIH1cbn1cbi5kcm9wZG93bi13cmFwcGVyLm1kZC1hY3RpdmUtb3BlbntcbiAgI21lZ2FEcm9wRG93bi1zZWFzb24ge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZDtcbiAgICAmOmFmdGVye1xuICAgICAgY29udGVudDogXCJcXGYwZDhcIjtcbiAgICB9XG4gIH1cbiAgI21lZ2FEcm9wRG93bi1zZWFzb24tY2FsbG91dHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZHJvcGRvd24tc2Vhc29uICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICAgIGFuaW1hdGlvbjogZHJvcGRvd24tc2Vhc29uICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC8qIFNlYXNvbnMgTWVnYSBEcm9wIERvd24gKi9cbiAgLmRyb3Bkb3duLXdyYXBwZXJ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICY6YmVmb3Jle1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI21lZ2FEcm9wRG93bi1zZWFzb24ge1xuICAgICAgLnNlYXNvbnsgXG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIH1cbiAgICAgIC5zdWJzZWFzb257XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgfVxuICAgICAgJjphZnRlcntcbiAgXG4gICAgICB9XG4gICAgfVxuICAgICNtZWdhRHJvcERvd24tc2Vhc29uLWNhbGxvdXR7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCIjR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5HYW1lU2hvd0RhdGFDb250YWluZXIucGxheV9ieV9wbGF5IHtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSAuR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSB7XG4gIC5TdGF0V2lkZ2V0LFxuICAuU3RhdFdpZGdldENvbHVtbiAuU3RhdFdpZGdldEhvbGRlciB7IG1hcmdpbjogMCAwIDAgMDsgfVxufVxuXG4jUEJQIHtcbiAgJHF1ZXJ5LXNtYWxsOiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAwcHgpXCI7XG4gICRxdWVyeS1tZWRpdW06IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NTBweClcIjtcbiAgJHF1ZXJ5LWxhcmdlOiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpXCI7XG4gICRjbG9jay13aWR0aC1zbWFsbDogMTglO1xuICAkY2xvY2std2lkdGgtbWVkaXVtOiAzNSU7XG4gICRjbG9jay13aWR0aC1sYXJnZTogMjIuNSU7XG4gICRwbGF5LW1hcmdpbi1zbWFsbDogNnB4O1xuICAkcGxheS1tYXJnaW4tbWVkaXVtOiAxMnB4O1xuXG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiAkdGFibGUtYm9keS1iYWNrZ3JvdW5kO1xuXG4gICNQQlAtbG9hZGVyICsgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYnAtbGlzdDpiZWZvcmUgeyAvLyBCYWNrZ3JvdW5kIHN0cmlwZSAodGltZWxpbmUpXG4gICAgQG1lZGlhICN7JHF1ZXJ5LWxhcmdlfSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgIH1cbiAgfVxuXG4gIC5wYnAtaGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgIFxuICAgIC5ob21lVGVhbSxcbiAgICAuYXdheVRlYW0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucGJwLXRlYW0taGVhZGVyIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaG9tZVRlYW0sXG4gICAgLmF3YXlUZWFtIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMTBweCAkcGxheS1tYXJnaW4tc21hbGw7XG5cbiAgICAgIEBtZWRpYSAjeyRxdWVyeS1tZWRpdW19IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGxheS1tYXJnaW4tbWVkaXVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGxheS1tYXJnaW4tbWVkaXVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ob21lVGVhbSB7XG4gICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAudGVhbV9sb2dvIHtcbiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTtcbiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hd2F5VGVhbSAudGVhbV9sb2dvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIH1cblxuICAgIC50ZWFtX2xvZ28ge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQG1lZGlhICN7JHF1ZXJ5LXNtYWxsfSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbnRlcnZhbCB7XG4gICAgICAtd2Via2l0LW9yZGVyOiAxO1xuICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJvZHktYmFja2dyb3VuZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBAbWVkaWEgI3skcXVlcnktbWVkaXVtfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDE2cHggMCA4cHg7XG4gICAgICB9XG5cbiAgICAgIGJyIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cbiAgfVxuXG4gIC5jbG9ja1RpbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1pbi13aWR0aDogJGNsb2NrLXdpZHRoLW1lZGl1bTtcblxuICAgIEBtZWRpYSAjeyRxdWVyeS1zbWFsbH0ge1xuICAgICAgbWluLXdpZHRoOiAkY2xvY2std2lkdGgtc21hbGw7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHF1ZXJ5LWxhcmdlfSB7XG4gICAgICBtaW4td2lkdGg6ICRjbG9jay13aWR0aC1sYXJnZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1ib2R5LWJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG4gIH1cblxuICAucGxheSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogJHBsYXktbWFyZ2luLXNtYWxsO1xuICAgIHdpZHRoOiBjYWxjKDYwJSAtICN7JHBsYXktbWFyZ2luLXNtYWxsfSk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICBAbWVkaWEgI3skcXVlcnktc21hbGx9IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU1JSAtICN7JHBsYXktbWFyZ2luLXNtYWxsfSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHF1ZXJ5LW1lZGl1bX0ge1xuICAgICAgd2lkdGg6IGNhbGMoNTUlIC0gI3skcGxheS1tYXJnaW4tbWVkaXVtfSk7XG4gICAgICBtYXJnaW4tdG9wOiAkcGxheS1tYXJnaW4tbWVkaXVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBsYXktbWFyZ2luLW1lZGl1bTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skcXVlcnktbGFyZ2V9IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQ1JSAtICN7JHBsYXktbWFyZ2luLW1lZGl1bX0pO1xuICAgIH1cbiAgfVxuXG4gIC5wbGF5QXdheSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwbGF5LW1hcmdpbi1zbWFsbDtcblxuICAgIEBtZWRpYSAjeyRxdWVyeS1tZWRpdW19IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkcGxheS1tYXJnaW4tbWVkaXVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRxdWVyeS1sYXJnZX0ge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmNsb2NrVGltZSB7XG4gICAgICByaWdodDogMDtcblxuICAgICAgQG1lZGlhICN7JHF1ZXJ5LWxhcmdlfSB7XG4gICAgICAgIHJpZ2h0OiAtJGNsb2NrLXdpZHRoLWxhcmdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wbGF5ZXJQaG90byB7XG4gICAgICBAbWVkaWEgI3skcXVlcnktbGFyZ2V9IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBsYXlIb21lIHtcbiAgICBtYXJnaW4tbGVmdDogNDAlO1xuICAgIG1hcmdpbi1yaWdodDogJHBsYXktbWFyZ2luLXNtYWxsO1xuXG4gICAgQG1lZGlhICN7JHF1ZXJ5LXNtYWxsfSB7XG4gICAgICBtYXJnaW4tbGVmdDogNDUlO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRxdWVyeS1tZWRpdW19IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHBsYXktbWFyZ2luLW1lZGl1bTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skcXVlcnktbGFyZ2V9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1NSU7XG4gICAgfVxuXG4gICAgLnBsYXlUeXBlIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAkY2xvY2std2lkdGgtbWVkaXVtO1xuXG4gICAgICBAbWVkaWEgI3skcXVlcnktc21hbGx9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2xvY2std2lkdGgtc21hbGw7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skcXVlcnktbGFyZ2V9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5jbG9ja1RpbWUge1xuICAgICAgQG1lZGlhICN7JHF1ZXJ5LWxhcmdlfSB7XG4gICAgICAgIGxlZnQ6IC0kY2xvY2std2lkdGgtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBsYXllck5hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBiciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgIGE6YWZ0ZXIgeyBjb250ZW50OiAnICc7IH1cbiAgfVxuXG4gIC5wbGF5ZXJJbmZvIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLnBsYXllclBob3RvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxuXG4gIC5wbGF5VHlwZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gIH1cblxuICAucGxheVR5cGUsXG4gIC5wbGF5ZXJJbmZvLFxuICAuZXh0cmFEZXRhaWxzLFxuICAuY2xvY2tUaW1lIHtcbiAgICBwYWRkaW5nOiA0cHg7XG5cbiAgICBAbWVkaWEgI3skcXVlcnktbWVkaXVtfSB7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgfVxuICB9XG4gIC5leHRyYURldGFpbHMge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4iLCIucGl0Y2hUcmFja2VyIHtcblxuICA+IGgzIHsgbWFyZ2luLWJvdHRvbTogLjVlbTsgfVxuXG4gIC5yZWd1bGF0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuXG4gICAgdWwgeyBtYXJnaW4tdG9wOiAxZW07IH1cbiAgICBsaSB7IG1hcmdpbi1sZWZ0OiAyLjNlbTsgfVxuICB9XG59XG4iLCIuc2l0ZUNvbnRhaW5lciA+ICNtYXN0ZXJTY29yZWJvYXJkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1heC13aWR0aDogOTQwcHg7XG4gIG1hcmdpbjogMThweCBhdXRvO1xuXG4gIGh0bWwuaGFzLW1vYmlsZS1uYXYgJiB7IG1hcmdpbjogMDsgfVxufVxuXG5cbiNtYXN0ZXJTY29yZWJvYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgLnNjb3JlYm9hcmRSaWJib24ge1xuICAgIG1hcmdpbjogMHB4O1xuICB9XG59XG4uc2NvcmVib2FyZFJpYmJvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNyw3LDcsLjc1KTtcbiAgei1pbmRleDogMDtcbn1cbi5wYWdlRWxlbWVudCAuc2NvcmVib2FyZFJpYmJvbntcbiAgbWFyZ2luOiAwIDVweDtcbn1cbiRzY29yZWJvYXJkLXJpYmJvbi1wYWRkaW5nOiAxM3B4O1xuJHNjb3JlYm9hcmQtcmliYm9uLWhlaWdodDogMTI1cHg7XG4uc2NvcmVib2FyZFJpYmJvbntcbiAgaGVpZ2h0OiAkc2NvcmVib2FyZC1yaWJib24taGVpZ2h0ICsgKCRzY29yZWJvYXJkLXJpYmJvbi1wYWRkaW5nKjIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogJHNjb3JlYm9hcmQtcmliYm9uLXBhZGRpbmc7XG4gIC5uZXh0X2J1dHRvbiwgLnByZXZpb3VzX2J1dHRvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAkc2NvcmVib2FyZC1yaWJib24taGVpZ2h0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiA1MDA7XG4gICAgY29sb3I6ICRhY2NlbnQtY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udDogLjg3NWVtIEZvbnRBd2Vzb21lO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2NvcmVib2FyZC1yaWJib24taGVpZ2h0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDcsNyw3LC43NSk7XG4gICAgfVxuICAgICY6OnNlbGVjdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gIC5uZXh0X2J1dHRvbl9kaXNhYmxlZCwgLnByZXZpb3VzX2J1dHRvbl9kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICAucHJldmlvdXNfYnV0dG9uIHtcbiAgICBsZWZ0OiA4cHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgICB9XG4gIH1cbiAgLm5leHRfYnV0dG9uIHtcbiAgICByaWdodDogOHB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgfVxuICB9XG4gIC5jb250YWluZXJ7XG4gICAgaGVpZ2h0OiAxMjVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA0NXB4O1xuICAgIHJpZ2h0OiA0NXB4O1xuICAgIHotaW5kZXg6IDQ5MDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdWx7XG4gICAgICB3aWR0aDogMTAwMDAwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICB9XG4gIC5nYW1le1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNTRweDtcbiAgfVxuICAuZ2FtZUxpbmt7XG4gICAgaGVpZ2h0OiAxMjVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICBhe1xuICAgID4gc3BhbntcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5kYXRle1xuICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgLnRlYW17XG4gICAgZm9udC1zaXplOiAxMnB4OyBkaXNwbGF5OiBibG9jazsgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmdhbWV7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAubmFtZXtcbiAgICAgIGZsb2F0OiBsZWZ0OyBjbGVhcjogbGVmdDsgbWF4LXdpZHRoOiAxMDVweDsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgd29yZC13cmFwOiBub3JtYWw7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLnNjb3Jle1xuICAgICAgZmxvYXQ6IHJpZ2h0OyBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLnN0YXR1c3tcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmJvb217XG4gICAgICAubmFtZXtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgfVxuICAgICAgLnNjb3Jle1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbl9wcm9ncmVzcyAuc3RhdHVze1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmNvbXBsZXRlZCAuc3RhdHVze1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG4vLyBTaHJpbmsgcmliYm9uIGJ1dHRvbnMgd2hlbiB3aXRoaW4gMjUlIGNvbHVtbi5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmNvbC1tZC0zIHtcbiAgICAuc2NvcmVib2FyZFJpYmJvbiB7XG4gICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICB9XG4gICAgICAucHJldmlvdXNfYnV0dG9uLFxuICAgICAgLm5leHRfYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICB9XG4gICAgICAucHJldmlvdXNfYnV0dG9uIHtcbiAgICAgICAgbGVmdDogNHB4O1xuICAgICAgfVxuICAgICAgLm5leHRfYnV0dG9uIHtcbiAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiRicmFja2V0LXByaW1hcnktZm9udDogYm9sZCAxNHB4ICRmb250VHdvO1xuJGJyYWNrZXQtc2Vjb25kYXJ5LWZvbnQ6IG5vcm1hbCAxMnB4ICRmb250VHdvO1xuJGJyYWNrZXQtYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnJhY2tldC1ib3JkZXI6ICRicmFja2V0LWJvcmRlci13aWR0aCBzb2xpZCAjQ0NDO1xuXG4kYnJhY2tldC1yb3VuZC13aWR0aDogMjMwcHg7XG4kYnJhY2tldC1yb3VuZC1tYXgtd2lkdGg6IDMzMHB4O1xuJGJyYWNrZXQtc3BhY2luZy1ob3JpejogMTBweDtcbiRicmFja2V0LXRlYW0tc3BhY2luZy12ZXJ0OiAxMHB4O1xuJGJyYWNrZXQtdGVhbS1zcGFjaW5nLWhvcml6OiA2cHg7XG4kYnJhY2tldC10ZWFtLWxvZ28tc3BhY2luZzogMnB4O1xuJGJyYWNrZXQtZ2FtZS1zcGFjaW5nOiAxNXB4O1xuJGJyYWNrZXQtZ2FtZS1ob3Zlci1jb2xvcjogI0VFRTtcbiRicmFja2V0LXRlYW0taGVpZ2h0OiAzMHB4O1xuXG4vLyBsaXN0IHN0eWxlXG4kYnJhY2tldC1saXN0LWdhbWUtYm9yZGVyOiAxcHggc29saWQgI0VFRTtcblxuLy8gY29tcHV0ZWRcbiRicmFja2V0LXRlYW0tbG9nby1jZWxsLXdpZHRoOiAkYnJhY2tldC10ZWFtLWhlaWdodCArICRicmFja2V0LXRlYW0tbG9nby1zcGFjaW5nO1xuJGJyYWNrZXQtbm9kZS1oZWlnaHQ6ICRicmFja2V0LXRlYW0taGVpZ2h0ICogMyArICRicmFja2V0LXRlYW0tc3BhY2luZy12ZXJ0ICsgJGJyYWNrZXQtZ2FtZS1zcGFjaW5nICogMiArICRicmFja2V0LWJvcmRlci13aWR0aCAqIDI7XG4kYnJhY2tldC1nYW1lLW9mZnNldDogKCRicmFja2V0LXRlYW0taGVpZ2h0ICsgJGJyYWNrZXQtdGVhbS1zcGFjaW5nLXZlcnQpIC8gMjtcblxuLyogT2xkIGNsYXNzIG5hbWUsIGJ1dCBJJ20gbm90IHN1cmUgYWxsIHRoZSBwbGFjZXMgaXQncyByZW5kZXJlZCAqL1xuLmJyYWNrZXQtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbi50aGVtZS1icmFja2V0IHtcbiAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250OiAkYnJhY2tldC1wcmltYXJ5LWZvbnQ7XG59XG5cbi50aGVtZS1icmFja2V0LXJvdW5kIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgbWluLXdpZHRoOiAkYnJhY2tldC1yb3VuZC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkYnJhY2tldC1yb3VuZC1tYXgtd2lkdGg7XG59XG5cbi50aGVtZS1icmFja2V0LXJvdW5kLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAkYnJhY2tldC1zcGFjaW5nLWhvcml6O1xufVxuXG4udGhlbWUtYnJhY2tldC1ub2RlcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDFweCAwOyAvLyBmaXhlcyBhbiBpc3N1ZSB3aGVyZSB2ZXJ0aWNhbCBhbGlnbiB3YXMgc2xpZ2h0bHkgb2ZmIGluIGNocm9tZSAocm91bmRpbmc/KVxufVxuXG5AZnVuY3Rpb24gYnJhY2tldF9wb3dlcigkYmFzZSwgJGV4cG9uZW50KSB7XG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAkYmFzZTtcbiAgfVxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xuICAudGhlbWUtYnJhY2tldC1kZXB0aC0jeyRpfSB7XG4gICAgLnRoZW1lLWJyYWNrZXQtbm9kZSxcbiAgICAudGhlbWUtYnJhY2tldC1nYXAgeyBsaW5lLWhlaWdodDogJGJyYWNrZXQtbm9kZS1oZWlnaHQgKiBicmFja2V0X3Bvd2VyKDIsICgkaSAtIDEpKTsgfVxuICB9XG59XG5cbi50aGVtZS1icmFja2V0LW5vZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgJGJyYWNrZXQtc3BhY2luZy1ob3JpejtcbiAgXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogJGJyYWNrZXQtZ2FtZS1zcGFjaW5nICsgJGJyYWNrZXQtc3BhY2luZy1ob3JpejtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAkYnJhY2tldC1ib3JkZXI7XG4gIH1cbiAgXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAkYnJhY2tldC1nYW1lLXNwYWNpbmcgKyAkYnJhY2tldC1zcGFjaW5nLWhvcml6IC0gJGJyYWNrZXQtdGVhbS1sb2dvLXNwYWNpbmc7XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMCAtICRicmFja2V0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItbGVmdDogJGJyYWNrZXQtYm9yZGVyO1xuICB9XG59XG5cbi50aGVtZS1icmFja2V0LW5vZGUtdXBwZXI6YWZ0ZXIsXG4udGhlbWUtYnJhY2tldC1jb21wcmVzc2libGUgLnRoZW1lLWJyYWNrZXQtbm9kZS1sb3dlcjphZnRlciB7XG4gIHRvcDogNTAlO1xuICBib3JkZXItYm90dG9tOiAkYnJhY2tldC1ib3JkZXI7XG4gIGJvdHRvbTogJGJyYWNrZXQtZ2FtZS1vZmZzZXQgLSAkYnJhY2tldC1ib3JkZXItd2lkdGg7XG59XG5cbi50aGVtZS1icmFja2V0LW5vZGUtbG93ZXI6YWZ0ZXIsXG4udGhlbWUtYnJhY2tldC1jb21wcmVzc2libGUgLnRoZW1lLWJyYWNrZXQtbm9kZS11cHBlcjphZnRlciB7XG4gIGJvdHRvbTogNTAlO1xuICBib3JkZXItdG9wOiAkYnJhY2tldC1ib3JkZXI7XG4gIHRvcDogJGJyYWNrZXQtZ2FtZS1vZmZzZXQgKyAkYnJhY2tldC1ib3JkZXItd2lkdGg7XG59XG5cbi50aGVtZS1icmFja2V0LWNvbXByZXNzaWJsZSB7XG4gIFxuICAudGhlbWUtYnJhY2tldC1ub2RlLWxvd2VyOmFmdGVyIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBoZWlnaHQ6ICRicmFja2V0LWdhbWUtb2Zmc2V0O1xuICB9XG5cbiAgLnRoZW1lLWJyYWNrZXQtbm9kZS11cHBlcjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB0b3A6IGF1dG87XG4gICAgaGVpZ2h0OiAkYnJhY2tldC1nYW1lLW9mZnNldDtcbiAgfVxufVxuXG4udGhlbWUtYnJhY2tldC1ub2RlLWxlYWY6YmVmb3JlLFxuLnRoZW1lLWJyYWNrZXQtbm9kZS1sZWFmOmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4udGhlbWUtYnJhY2tldC1nYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IC0xcHggMDsgLy8gZml4ZXMgYW4gaXNzdWUgd2hlcmUgdmVydGljYWwgYWxpZ24gd2FzIHNsaWdodGx5IG9mZiBpbiBjaHJvbWUgKHJvdW5kaW5nPylcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQ6ICRicmFja2V0LXByaW1hcnktZm9udDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6ICRicmFja2V0LWdhbWUtc3BhY2luZyAkYnJhY2tldC1nYW1lLXNwYWNpbmc7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gIFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhY2tldC1nYW1lLWhvdmVyLWNvbG9yO1xuICAgIFxuICAgIC50aGVtZS1icmFja2V0LXRlYW0tc2xvdCxcbiAgICAudGhlbWUtYnJhY2tldC10ZWFtLXNsb3QgPiAqIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJyYWNrZXQtZ2FtZS1ob3Zlci1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gICAgfVxuICB9XG59XG5cbi50aGVtZS1icmFja2V0LXRlYW0tc2xvdCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBcbiAgfiAudGhlbWUtYnJhY2tldC10ZWFtLXNsb3Qge1xuICAgIHBhZGRpbmctdG9wOiAkYnJhY2tldC10ZWFtLXNwYWNpbmctdmVydDtcbiAgICBib3JkZXItcmlnaHQ6ICRicmFja2V0LWJvcmRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXN0YW5kYXJkO1xuICB9XG5cbiAgPiAqIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6ICRicmFja2V0LXRlYW0taGVpZ2h0O1xuICAgIGJvcmRlci1ib3R0b206ICRicmFja2V0LWJvcmRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tc3RhbmRhcmQ7XG4gIH1cbiAgXG4gICYud2lubmVyIHtcbiAgICBcbiAgICAudGhlbWUtYnJhY2tldC10ZWFtLFxuICAgIC50aGVtZS1icmFja2V0LXNjb3JlLFxuICAgIC50aGVtZS1icmFja2V0LXRlYW0tbmFtZSB7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGhlbWUtYnJhY2tldC10ZWFtLWxvZ28ge1xuICB3aWR0aDogJGJyYWNrZXQtdGVhbS1sb2dvLWNlbGwtd2lkdGg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIFxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGJyYWNrZXQtdGVhbS1oZWlnaHQ7XG4gICAgd2lkdGg6ICRicmFja2V0LXRlYW0taGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICNEREQ7XG4gIH1cbn1cblxuLnRoZW1lLWJyYWNrZXQtc2VlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuMmVtO1xuICBmb250OiAkYnJhY2tldC1zZWNvbmRhcnktZm9udDtcbn1cblxuLnRoZW1lLWJyYWNrZXQtdGVhbSB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nLWxlZnQ6ICRicmFja2V0LXRlYW0tc3BhY2luZy1ob3JpejtcbiAgcGFkZGluZy1yaWdodDogJGJyYWNrZXQtdGVhbS1zcGFjaW5nLWhvcml6O1xufVxuXG4udGhlbWUtYnJhY2tldC10ZWFtLW5hbWUge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIFxuICAudGJkLXRlYW0gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4udGhlbWUtYnJhY2tldC1zY29yZSB7XG4gIHdpZHRoOiAyZW07XG4gIHBhZGRpbmctcmlnaHQ6ICRicmFja2V0LXRlYW0tc3BhY2luZy1ob3JpejtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aGVtZS1icmFja2V0LWdhbWUtZGV0YWlscyB7XG4gIGZvbnQ6ICRicmFja2V0LXNlY29uZGFyeS1mb250O1xuICBmb250LXNpemU6IDExcHg7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBoZWlnaHQ6ICRicmFja2V0LXRlYW0taGVpZ2h0O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB3aWR0aDogMTAwJTtcbiAgXG4gID4gKiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHBhZGRpbmc6IDAgJGJyYWNrZXQtdGVhbS1zcGFjaW5nLWhvcml6IDAgKCRicmFja2V0LXRlYW0tbG9nby1jZWxsLXdpZHRoKTtcbiAgICBcbiAgICAmOmZpcnN0LWNoaWxkIHsgcGFkZGluZy10b3A6ICRicmFja2V0LXRlYW0tc3BhY2luZy12ZXJ0LzI7IH1cbiAgICAmOm9ubHktY2hpbGQge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29sbGFwc2UgYnJhY2tldCBpbnRvIGxpc3QgZm9yIHNtYWxsIHNjcmVlbnNcblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuICBcbiAgLnRoZW1lLWJyYWNrZXQgeyBkaXNwbGF5OiBibG9jazsgfVxuICBcbiAgLnRoZW1lLWJyYWNrZXQtcm91bmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gICAgXG4gICAgKyAudGhlbWUtYnJhY2tldC1yb3VuZCAudGhlbWUtYnJhY2tldC1yb3VuZC10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAkYnJhY2tldC1zcGFjaW5nLWhvcml6O1xuICAgIH1cbiAgfVxuICBcbiAgLnRoZW1lLWJyYWNrZXQtbm9kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgIFxuICAgICY6bGFzdC1jaGlsZCAudGhlbWUtYnJhY2tldC1nYW1lIHsgQGluY2x1ZGUgbGluZS1wYXR0ZXJuLWJvcmRlcigkcG9zOmJvdHRvbSk7IH1cbiAgfVxuICBcbiAgLnRoZW1lLWJyYWNrZXQtZ2FtZSB7IEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczp0b3ApOyB9XG4gIFxuICAudGhlbWUtYnJhY2tldC10ZWFtLXNsb3Qge1xuICAgICYsID4gKiB7IGJvcmRlci13aWR0aDogMCAhaW1wb3J0YW50OyB9XG4gIH1cbiAgXG4gIC50aGVtZS1icmFja2V0LW5vZGU6YmVmb3JlLFxuICAudGhlbWUtYnJhY2tldC1ub2RlOmFmdGVyLFxuICAudGhlbWUtYnJhY2tldC1nYXAgeyBkaXNwbGF5OiBub25lOyB9XG4gIFxufVxuXG4vLyBPTERFUiBTVFlMRVMgUE9SVEVEIEZST00gU1BPUlRTIERFRkFVTFRTXG5cbi8qIEJyYWNrZXQgU2VsZWN0IFRhZyAqL1xuLmRlc2NlbmRhbnRfYnJhY2tldCB7XG4gIG1hcmdpbjogMCAxNXB4IDE1cHg7XG59XG5cbi8qIFRvb2x0aXAgKi9cbi5wcm90b3RpcCAuZGFya2dyZXkgLmNvbnRlbnQgcCB7XG4gIGNvbG9yOiAjY2NjO1xufVxuXG4vKiBMaWdodGJveCAqL1xuI2JyYWNrZXQtc2VlZC1saXN0LWNvbnRhaW5lciB7XG4gICBmbG9hdDogcmlnaHQ7XG4gICBtYXJnaW46IDEwcHggMDtcbiAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuI2JyYWNrZXQtdGVhbXMtY29udGFpbmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuI3NlZWQtc3RhdHVzIHtcbiAgY29sb3I6ICM2NjY7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4jc2VlZC1zdGF0dXMgYiB7XG4gICBjb2xvcjogIzMzMztcbiAgIGZvbnQtc2l6ZTogMTFweDtcbn1cbiNicmFja2V0LXNlZWQtbGlzdCxcbiNicmFja2V0LXRlYW1zIHtcbiAgYmFja2dyb3VuZDogI2ZlZjRjMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZlZjFhZjtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAyNTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiNicmFja2V0LXNlZWQtbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZWY0YzA7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDM1cHg7XG59XG5cbiNicmFja2V0LXRlYW1zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuI2JyYWNrZXQtc2VlZC1saXN0IGxpIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvbGlnaHRib3gtdGVhbS1zZWxlY3RlZC1ib3R0b20ucG5nXCIpIDAgMTAwJSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogbW92ZTtcbiAgbWFyZ2luOiAwIDAgMnB4O1xuICBwYWRkaW5nOiAwIDAgM3B4O1xufVxuXG4jYnJhY2tldC1zZWVkLWxpc3QgbGkgcCB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9icmFja2V0aW5nL2xpZ2h0Ym94LXRlYW0tc2VsZWN0ZWQtdG9wLnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xuICBjb2xvcjogIzAwMDtcbn1cblxuI2JyYWNrZXQtdGVhbXMgbGkge1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvYnJhY2tldGluZy9saWdodGJveC10ZWFtLWJvdHRvbS5wbmdcIikgMCAxMDAlIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBtb3ZlO1xuICBwYWRkaW5nOiAwIDAgM3B4O1xufVxuXG4jYnJhY2tldC10ZWFtcyBsaSBwIHtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvbGlnaHRib3gtdGVhbS10b3AucG5nXCIpIDAgMCBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjYTU5NTRjO1xufVxuXG4jYnJhY2tldC1zZWVkLWxpc3QgcCwgI2JyYWNrZXQtdGVhbXMgcCB7XG4gIHBhZGRpbmc6IDVweCA1cHggMnB4IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBtYXJnaW46IDFweCAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNlZWQgTGlua3MgKi9cbiNicmFja2V0LXRlYW1zIHAgYS5zZWVkLFxuI2JyYWNrZXQtc2VlZC1saXN0IGEudW5zZWVkIHtcbiAgY29sb3I6ICNiZmIyN2I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBsaW5lLWhlaWdodDoxOHB4O1xuICBwYWRkaW5nOiAwIDVweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuI2JyYWNrZXQtdGVhbXMgcCBhLnNlZWQ6aG92ZXIsXG4jYnJhY2tldC1zZWVkLWxpc3QgYS51bnNlZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmVmN2QwO1xuICBjb2xvcjogIzQwMzkxZDtcbn1cblxuI2JyYWNrZXQtc2VlZC1saXN0IGEuc2VlZCxcbiNicmFja2V0LXRlYW1zIHAgYS51bnNlZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIb3ZlciAqL1xuI2JyYWNrZXQtdGVhbXMgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvYnJhY2tldGluZy9saWdodGJveC10ZWFtLXNlbGVjdGVkLWJvdHRvbS5wbmdcIik7XG59XG5cbiNicmFja2V0LXRlYW1zIGxpOmhvdmVyIHAge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvYnJhY2tldGluZy9saWdodGJveC10ZWFtLXNlbGVjdGVkLXRvcC5wbmdcIik7XG59XG5cbi8qIFNlZWQgU3RhdGVzICovXG4ubmVlZHNNb3JlICNzZWVkLXN0YXR1cyB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4ubmVlZHNNb3JlICNicmFja2V0LXNlZWQtbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZWY0YzAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2JyYWNrZXRpbmcvYnJhY2tldC1saWdodGJveC1zZWVkLWJnLnBuZ1wiKSAxMDAlIDEwMCUgbm8tcmVwZWF0O1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbn1cblxuLnRvb011Y2ggI2JyYWNrZXQtc2VlZC1saXN0IHtcbiAgYmFja2dyb3VuZDogI2U3Yjc5NDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I5M2Q0MTtcbn1cblxuLnRvb011Y2ggI3NlZWQtc3RhdHVzLFxuLnRvb011Y2ggI3NlZWQtc3RhdHVzIGJ7XG4gIGNvbG9yOiAjYTIwMDEyO1xufVxuXG4ucmVhZHkgI2JyYWNrZXQtc2VlZC1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZlZjlkYztcbiAgYm9yZGVyOiAxcHggc29saWQgIzMzOTkzMztcbn1cblxuLnJlYWR5ICNzZWVkLXN0YXR1c3tcbiAgY29sb3I6ICMzMzk5MzM7XG59XG4iLCIgIC8qIFJvc3RlciAmIEdhbWUgQ2VudGVyIEJ1dHRvbnNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgI3Nwb3J0LXNsaWRlciB7IFxuICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAwcHggMHB4IDE1cHggMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuaW5uZXItd3JhcHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWluLWhlaWdodDogNzBweDtcbiAgICAgIC8qIFNsaWRlciBUcmFjayAqL1xuICAgICAgI3RyYWNrIHsgXG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY2xlYXI6ICBib3RoO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjojZGRkO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAjaGFuZGxlIHsgXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODtcbiAgICAgICAgICBjdXJzb3I6IG1vdmU7XG4gICAgICAgICAgaGVpZ2h0OjEwcHg7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHdpZHRoOjEwMHB4O1xuICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgICAgIH1cbiAgICAgIH0gXG4gICAgfVxuICB9XG4gIC5zcG9ydHNQYWdlIC5wcm90b3RpcHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgXG4gICNzY3JvbGxib3ggeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxJTsgfVxuXG4gICN0cmFjay1sZWZ0ICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwcHg7IGZsb2F0OiBsZWZ0OyB9XG4gICN0cmFjay1yaWdodCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02cHggLTEwcHg7IGZsb2F0OiByaWdodDsgfVxuICAjdHJhY2stbGVmdCxcbiAgI3RyYWNrLXJpZ2h0IHsgaGVpZ2h0OiAxMHB4OyB3aWR0aDogMTBweDsgfVxuXG5cbiAgLyogU2Nyb2xsYWJsZSBDb250YWluZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgI3Njcm9sbC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgMCAxNXB4OyBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICAgIG92ZXJmbG93LXg6IGF1dG87IFxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgXG4gICAgbWluLWhlaWdodDogNzBweDtcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG5cbiAgLyogUGxheWVyL1Jvc3RlciBCdXR0b25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICNzcG9ydC1zbGlkZXIgbGkgeyBtYXJnaW46IDAgMCAwIDJweDsgfVxuXG4gIC8qIEdhbWUgQnV0dG9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAjc3BvcnQtc2xpZGVyIC5tb250aCB7IFxuICAgIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9tb250aHMuZ2lmXCIpIDAgMDsgXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBtYXJnaW46IDJweCAycHggMCAwO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OTk5cHg7XG4gIH1cblxuICAgIC8qIE1vbnRocyAqL1xuICAgICNzcG9ydC1zbGlkZXIgLm10aC1qYW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtZmViIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwcHggMDsgfVxuICAgICNzcG9ydC1zbGlkZXIgLm10aC1tYXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAwOyB9XG4gICAgI3Nwb3J0LXNsaWRlciAubXRoLWFwciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtbWF5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggMDsgfVxuICAgICNzcG9ydC1zbGlkZXIgLm10aC1qdW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAwOyB9XG4gICAgI3Nwb3J0LXNsaWRlciAubXRoLWp1bCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtYXVnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcwcHggMDsgfVxuICAgICNzcG9ydC1zbGlkZXIgLm10aC1zZXAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAwOyB9XG4gICAgI3Nwb3J0LXNsaWRlciAubXRoLW9jdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC05MHB4IDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtbm92IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtZGVjIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMHB4IDA7IH1cbiAgICAjc3BvcnQtc2xpZGVyIC5tdGgtdGJkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IDA7IH1cblxuICAjc3BvcnQtc2xpZGVyIC5nYW1lcyAgICAgICAgICAgICAgICB7IGZsb2F0OmxlZnQ7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyB9XG4gICNzcG9ydC1zbGlkZXIgLmdhbWVzIGxpICAgICAgICAgICAgeyBwb3NpdGlvbjogc3RhdGljOyB9XG4gICNzcG9ydC1zbGlkZXIgLmdhbWVzIGEgICAgICAgICAgICAgeyBwYWRkaW5nOiAzcHggNHB4IDNweDsgfVxuICAjc3BvcnQtc2xpZGVyIC5nYW1lcyBzcGFuICAgICAgICAgIHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjc3BvcnQtc2xpZGVyIC5nYW1lcyAuZGF5T2ZUaGVXZWVrIHsgZm9udDogbm9ybWFsIDhweCAkZm9udE9uZTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAjc3BvcnQtc2xpZGVyIC5nYW1lcyAuZGF0ZSAgICAgICAgIHsgZm9udDogbm9ybWFsIDE4cHggJGZvbnRPbmU7IH1cbiAgI3Nwb3J0LXNsaWRlciAuZ2FtZXMgLm91dGNvbWUgICAgICB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IG1hcmdpbjogMDsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAvKiBQcm90b3RpcCBUb29sdGlwcyAtIEdlbmVyYWxcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgICN0b29sdGlwcyB7IGRpc3BsYXk6IG5vbmU7IH0gLyogVGhpcyBkaXYgaXMgd2hlcmUgdGhlIHRvb2x0aXBzIGFyZSBzdG9yZWQgaW4gdGhlIG1hcmt1cC4gUHJvdG90aXAgZ3JhYnMgdGhlbSBmcm9tIGhlcmUsIGFuZCBjbG9uZXMvZGlzcGxheXMgdGhlbSBpbiB0aGUgcmlnaHQgcGxhY2Ugd2hlbiB5b3UgaG92ZXIgb3ZlciB0aGUgdHJpZ2dlciAqL1xuXG4gICAgLnByb3RvdGlwIC5uZ2luIC50b29sdGlwLW91dGVyICAgICAgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kOiAjZTZlNmU2OyBib3JkZXI6IDFweCBzb2xpZCAjMzMzOyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAzMjBweDsgfVxuICAgIC5wcm90b3RpcCAubmdpbiAudG9vbHRpcC1vdXRlciBoMyAgICAgICAgICAgICAgIHsgYmFja2dyb3VuZDogIzM2MzYzNiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdG9vbHRpcHMvaGVhZGVyQkcuZ2lmXCIpIDAgMCByZXBlYXQteDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDEuMWVtOyBsaW5lLWhlaWdodDogMzBweDsgcGFkZGluZzogMCAxMHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLnByb3RvdGlwIC5uZ2luIC50b29sdGlwLWlubmVyICAgICAgICAgICAgICAgICAgeyBoZWlnaHQ6IDk0cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDIwMHB4OyB9XG5cbiAgICAucHJvdG90aXAgLm5naW4gLm11bHRfZ2FtZXMgICAgICAgICAgICAgICAgICAgICB7IHdpZHRoOiAzNTBweDsgfVxuICAgIC5wcm90b3RpcCAubmdpbiAucm9zdGVyVG9vbHRpcCAgICAgICAgICAgICAgICAgIHsgd2lkdGg6IDIwMHB4OyB9XG5cbiAgICAucHJvdG90aXBfU3RlbVdyYXBwZXIgeyBtYXJnaW46IDhweCAwIDAgIWltcG9ydGFudDsgfVxuXG4gICAgLyogUGxheWVyICovXG4gICAgLnN0YXRzICAgICAgICAgICAgICB7IG1hcmdpbjogMCAwIDEwcHggODVweDsgfVxuICAgIC5zdGF0cyAuc3RhdHMtbWFqb3Ige1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDE1cHggNXB4IDBweCAxNXB4O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAmOmFmdGVye1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnN0YXRzIC5zdGF0cy1taW5vciB7ZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDVweCAwcHggMHB4IDBweDsgd2lkdGg6IGF1dG87IH1cblxuICAgICAgLyogVG9vbCB0aXAgKi9cbiAgICAgIC5wcm90b3RpcCAubmdpbiAudG9vbHRpcC1pbm5lciAuc3RhdHMgICAgICAgICAgIHsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiA5NHB4OyB0b3A6IDI1cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnByb3RvdGlwIC5uZ2luIC50b29sdGlwLWlubmVyIC5zdGF0cyAucG9zaXRpb24geyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdG9vbHRpcHMvYmlvLWdyb292ZS5wbmdcIikgNTAlIDEwMCUgbm8tcmVwZWF0OyBmb250LXdlaWdodDogYm9sZDsgZm9udC1zaXplOiAxOHB4OyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMCAwIDE1cHg7IHdpZHRoOiA5MHB4OyB9XG4gICAgICAucHJvdG90aXAgLm5naW4gLnRvb2x0aXAtaW5uZXIgLnN0YXRzIC5iaW8gICAgICB7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAxMHB4IDAgNXB4OyB3aWR0aDogMTAwcHg7IH1cblxuICAgIC8qIEdhbWUgU2NvcmUgKi9cbiAgICAuc2NvcmUtaG9tZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgYmFja2dyb3VuZDogI2U2ZTZlNiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvdG9vbHRpcHMvdnMtci5wbmdcIikgMCUgICA1MCUgbm8tcmVwZWF0OyBmbG9hdDogcmlnaHQ7IHdpZHRoOiAxNjBweDsgfVxuICAgIC5zY29yZS1hd2F5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kOiAjZTZlNmU2IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy90b29sdGlwcy92cy1sLnBuZ1wiKSAxMDAlIDUwJSBuby1yZXBlYXQ7IGZsb2F0OiBsZWZ0OyAgd2lkdGg6IDE2MHB4OyB9XG4gICAgLm11bHRfZ2FtZXMgLnNjb3JlLWF3YXksIC5tdWx0X2dhbWVzIC5zY29yZS1ob21lICB7IHdpZHRoOiAxNzVweDsgfVxuICAgIC5zY29yZS1hd2F5IC5zY29yZSwgLnNjb3JlLWhvbWUgLnNjb3JlICAgICAgICAgICAgeyBmb250OiBib2xkIDQ4cHggJGZvbnRPbmU7IH1cbiAgICAucHJvdG90aXAgLm5naW4gLmdhbWUgLnRvb2x0aXAtaW5uZXIgICAgICAgICAgICAgIHsgbWluLWhlaWdodDogMTIwcHg7IHdpZHRoOiAzMjBweDsgfVxuICAgIC5wcm90b3RpcCAubmdpbiAuZ2FtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyB3aWR0aDogMzIwcHg7IH1cbiAgICAucHJvdG90aXAgLnNjb3JlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgYm9yZGVyOiBub25lOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBcbiAgICAvKiBUZWFtIE5hbWUgKi9cbiAgICAuc2NvcmUtaG9tZSAudGVhbU5hbWUsIC5zY29yZS1hd2F5IC50ZWFtTmFtZSAgICB7IGZvbnQtc2l6ZTogMTJweDsgaGVpZ2h0OiAxNnB4OyBsaW5lLWhlaWdodDogMTZweDsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnNjb3JlLWhvbWUgLnRlYW1OYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBwYWRkaW5nOiAwIDEwcHggMCAxNXB4OyB9XG4gICAgLnNjb3JlLWF3YXkgLnRlYW1OYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBwYWRkaW5nOiAwIDE1cHggMCAxMHB4OyB9XG4gICAgLm11bHRfZ2FtZXMgLnRlYW1OYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6IG5vbmU7IGZvbnQtc2l6ZTogMTBweDsgaGVpZ2h0OiAzMHB4OyBsaW5lLWhlaWdodDogMzVweDsgfVxuICAgIC5tdWx0X2dhbWVzIC5zY29yZS1hd2F5IC50ZWFtTmFtZSAgICAgICAgICAgICAgIHsgY29sb3I6ICM2NjY7IHRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmc6IDAgMCAycHggNXB4OyB9XG4gICAgLm11bHRfZ2FtZXMgLnNjb3JlLWhvbWUgLnRlYW1OYW1lICAgICAgICAgICAgICAgeyBjb2xvcjogIzY2NjsgdGV4dC1hbGlnbjogcmlnaHQ7IHBhZGRpbmc6IDAgNXB4IDJweCAwOyB9XG5cblxuICAgIC8qIEdhbWUgTGlzdGluZyAqL1xuICAgIC5nYW1lLWxpc3RpbmcgICAgICAgICAgICAgICAgICAgICB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy90b29sdGlwcy9nYW1lLWxpc3RpbmdCRy5naWZcIikgMCAxMDAlIHJlcGVhdC14OyB9XG4gICAgLmdhbWUtbGlzdGluZyAuc3BvcnQtY29sb3JzICAgICAgIHsgbWluLWhlaWdodDogMzBweDsgaGVpZ2h0OiAzMHB4OyB9XG4gICAgLmdhbWUtbGlzdGluZyAuc2NvcmUtaG9tZSAgICAgICAgIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Rvb2x0aXBzL3ZzLXNtLWx0LXIuZ2lmXCIpIDAgICAgNXB4IG5vLXJlcGVhdDsgfVxuICAgIC5nYW1lLWxpc3RpbmcgLnNjb3JlLWF3YXkgICAgICAgICB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy90b29sdGlwcy92cy1zbS1sdC1sLmdpZlwiKSAxMDAlIDVweCBuby1yZXBlYXQ7IH1cblxuICAgIC5nYW1lLWxpc3RpbmcgLnNjb3JlICAgICAgICAgICAgICB7IGZvbnQ6IG5vcm1hbCAyNHB4ICRmb250T25lOyB9XG4gICAgLmdhbWUtbGlzdGluZyAuc2NvcmUtaG9tZSAuc2NvcmUgIHsgYmFja2dyb3VuZDogbm9uZTsgbWFyZ2luOiAwIDc1cHggMCAwOyBmbG9hdDogcmlnaHQ7IHBhZGRpbmc6IDA7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLmdhbWUtbGlzdGluZyAuc2NvcmUtYXdheSAuc2NvcmUgIHsgYmFja2dyb3VuZDogbm9uZTsgbWFyZ2luOiAwIDAgMCA3NXB4OyBmbG9hdDogbGVmdDsgIHBhZGRpbmc6IDA7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAuZ2FtZS1saXN0aW5nIHAgICAgICAgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kOiAjY2NjOyBib3JkZXItdG9wOiAxcHggc29saWQgI2IzYjNiMzsgcGFkZGluZzogMTBweCAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogUGFnZSBUaXRsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNzcG9ydC1oZWFkZXIgLnBhZ2VUaXRsZSB7IFxuICBmb250LXNpemU6IDMycHg7XG4gIG1hcmdpbjogMCAxNXB4O1xuICBwYWRkaW5nOiAyMHB4IDAgMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiJGJyZWFrcG9pbnRXaWR0aDogNTAwcHg7XG4kcGxheWVyUGhvdG9XaWR0aDogMjAwcHg7XG4kcGxheWVyUGhvdG9IZWlnaHQ6IDI1MHB4O1xuXG4ucm9zdGVyUGxheWVySW5mb0VsZW1lbnQge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoMywgYm90dG9tKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludFdpZHRoKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBpbmxpbmUgc3R5bGVzXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGVzIGlubGluZSBzdHlsZXNcbiAgICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd28gIWltcG9ydGFudDsgLy8gT3ZlcndyaXRlcyBpbmxpbmUgc3R5bGVzXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50V2lkdGgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRwbGF5ZXJQaG90b1dpZHRofSAtIDIwcHgpO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IC4yNWVtIC41ZW07XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gIC5Sb3N0ZXJQbGF5ZXJJbmZvSW1hZ2UgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtaGVpZ2h0OiAkcGxheWVyUGhvdG9IZWlnaHQ7XG4gICAgbWF4LXdpZHRoOiAkcGxheWVyUGhvdG9XaWR0aDtcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludFdpZHRoKSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50V2lkdGgpIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skcGxheWVyUGhvdG9XaWR0aH0gLSAyMHB4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICB0aCxcbiAgdGQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgdHI6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIHRoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnOic7XG4gICAgfVxuICB9XG59XG4iLCIjcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtc2VhcmNoLFxuLnJvc3RlclBsYXllclRvQ29ubmVjdCAgICAgICAgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kOiAjZmRmNGJjOyBib3JkZXI6IDFweCBzb2xpZCAjZmRlNjg2OyBtYXJnaW46IDEwcHggMDsgcGFkZGluZzogMTBweDsgfVxuLnJvc3RlclBsYXllclRvQ29ubmVjdCBpbWcgICAgICAgICAgICAgICAgeyBmbG9hdDogbGVmdDsgaGVpZ2h0OiA1MHB4OyBtYXJnaW46IDAgNXB4IDAgMDsgd2lkdGg6IDUwcHg7IH1cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgaDIgICAgICAgICAgICAgICAgIHsgbWFyZ2luOiAwIDAgNXB4IDA7IH1cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgaDMgICAgICAgICAgICAgICAgIHsgbWFyZ2luOiA1cHggMDsgfVxuI2xpZ2h0Ym94Qm9keSAucm9zdGVyUGxheWVyQ29ubmVjdGlvbnMgcCAgeyBsaW5lLWhlaWdodDogMTQwJTsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ucm9zdGVyUGxheWVyQ29ubmVjdGlvbi1oZWFkZXIgICAgICAgICAgICB7IHBhZGRpbmc6IDVweCAwIDA7IH1cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9uLWhlYWRlciBpbWcgICAgICAgIHsgbWFyZ2luOiAtNXB4IDEwcHggMCAwOyBoZWlnaHQ6IDcwcHg7IHdpZHRoOiA3MHB4OyB9XG5cbi5yb3N0ZXJQbGF5ZXJUb0Nvbm5lY3QgLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIHsgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAjZmRlNjg2OyBtYXJnaW46IDEwcHggMCAtMTBweDsgcGFkZGluZzogMTBweCAwIDA7IH1cblxuLnJvc3RlclBsYXllckNvbm5lY3Rpb25zICAgICAgICAgICAgICAgICAgeyBjbGVhcjogYm90aDsgbGluZS1oZWlnaHQ6IDE4cHg7IH1cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucyBwLFxuLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIGgzICAgICAgICAgICAgICAgeyBjbGVhcjogYm90aDsgfVxuLnJvc3RlclBsYXllckNvbm5lY3Rpb25zIHAgc3Ryb25nICAgICAgICAgeyBmb250LXNpemU6IDEzcHg7IH1cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucyBwIGltZyAgICAgICAgICAgIHsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogNTBweDsgbWFyZ2luOiAwIDEwcHggMCAwOyB3aWR0aDogNTBweDsgfVxuXG4jcm9zdGVyUGxheWVyQ29ubmVjdGlvbnMtc2VhcmNoIGgzLFxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLXNlYXJjaC1yZXN1bHRzIGgzIHsgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1zZWFyY2gtcmVzdWx0cyAgIHsgbWFyZ2luOiAwIDEwcHg7IH1cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1zZWFyY2gtcmVzdWx0cyBpIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL21pbmlMb2FkZXIuZ2lmXCIpIDAgNTAlIG5vLXJlcGVhdDsgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG5cbi5yb3N0ZXJQbGF5ZXJJbmZvRWxlbWVudC10ZW1wbGF0ZXtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnJvc3RlclBsYXllckNvbm5lY3Rpb24tY2hlY2tlZCwgLnJvc3RlclBsYXllckNvbm5lY3Rpb24tdW5jaGVja2VkIHsgYm9yZGVyLXJhZGl1czogNHB4OyBtYXJnaW46IDAgNXB4IDAgMDsgcGFkZGluZzogMnB4IDNweDsgfVxuLnJvc3RlclBsYXllckNvbm5lY3Rpb24tY2hlY2tlZCAgICB7IGJhY2tncm91bmQ6ICNmY2YwYWI7IGJvcmRlcjogMXB4IHNvbGlkICNmZGU2ODY7IH1cbi5yb3N0ZXJQbGF5ZXJDb25uZWN0aW9uLXVuY2hlY2tlZCAgeyBiYWNrZ3JvdW5kOiAjZmJlOThiOyBib3JkZXI6IDFweCBzb2xpZCAjZmNjZDIyOyB9XG5cblxuLmRlZmF1bHRQbGF5ZXJJbmZvIGgzIHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG59XG5cbiNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgLnRlYW1Mb2dvLXRpbnkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQ6IDEycHgvMWVtIEZvbnRBd2Vzb21lO1xuICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAmLnJwYy1vcGVuIGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG4gIH1cbn1cblxuI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWRyb3Bkb3duIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICA+IGRpdiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDMxcHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAycHg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogNXB4IDAgMDtcbiAgfVxuICAudGVhbUxvZ28tdGlueSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gIC5kZWZhdWx0UGxheWVySW5mbyBoMyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgI3Jvc3RlclBsYXllckNvbm5lY3Rpb25zLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gICNyb3N0ZXJQbGF5ZXJDb25uZWN0aW9ucy1kcm9wZG93biB7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleCgtNTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIEdBTUUvU0hPVyBDT05URU5UICovXG5cbi8qIEZJRUxEIE9GIFBMQVkgJiBMSVZFIFZJREVPICovXG4jTGl2ZUdhbWUge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbToyNXB4O1xuICBwYWRkaW5nLXRvcDo0MHB4O1xuICBjbGVhcjpib3RoO1xufVxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kLFxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kIC5ncmFwaGljcyB7XG4gIGJhY2tncm91bmQ6IzAwMDtcbiAgaGVpZ2h0OjEwMCU7XG4gIGxlZnQ6MDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDowO1xuICB3aWR0aDoxMDAlO1xufVxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kIC5ncmFwaGljcyB7IG1pbi1oZWlnaHQ6NTM1cHg7IH1cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuZ3JhcGhpY3MgKiB7XG4gIGhlaWdodDoxMDAlO1xuICBsZWZ0OjUwJTtcbiAgbWFyZ2luLWxlZnQ6LTUwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDowO1xuICB3aWR0aDoxMDAwcHg7XG59XG4jTGl2ZUdhbWUgLmJhY2tncm91bmQgLnRvcCB7XG4gIGJhY2tncm91bmQ6dXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZm9wX2JnX3RvcC5wbmdcIikgY2VudGVyIHRvcDtcbiAgaGVpZ2h0OjE1MHB4O1xufVxuI0xpdmVHYW1lIC5iYWNrZ3JvdW5kIC5taWQge1xuICBiYWNrZ3JvdW5kOnVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ZvcF9iZ19taWQucG5nXCIpIGNlbnRlciB0b3A7XG4gIGhlaWdodDphdXRvO1xuICB0b3A6MTUwcHg7XG4gIGJvdHRvbTozODRweDtcbn1cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuYm90dG9tIHtcbiAgYmFja2dyb3VuZDp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb3BfYmdfYm90dG9tLnBuZ1wiKSBjZW50ZXIgdG9wO1xuICBoZWlnaHQ6Mzg0cHg7XG4gIHRvcDphdXRvO1xuICBib3R0b206MDtcbn1cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuYXdheVRlYW1GYWRlIHsgd2lkdGg6NzAwcHg7IH1cbiNMaXZlR2FtZSAuYmFja2dyb3VuZCAuaG9tZVRlYW1GYWRlIHsgd2lkdGg6NzAwcHg7IG1hcmdpbi1sZWZ0Oi0yMDBweDsgfVxuXG4uZ2FtZVNob3d7XG4gICNHU19WaWRlb3tcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgPiBpZnJhbWUgeyBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgfVxufVxuI0dTX1ZpZGVvIHtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIHBhZGRpbmc6MCAyMHB4O1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgdG9wOi0xMHB4O1xuICBtYXJnaW46MjVweCAwO1xufVxuI2N1cnJlbnRQbGF5ICsgI0dTX1ZpZGVvIHsgdG9wOi0yNXB4OyB9XG4jR1NfVmlkZW9XcmFwIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIHpvb206MTsgKmRpc3BsYXk6aW5saW5lO1xuICBiYWNrZ3JvdW5kOiMwMDA7XG4gIGJvcmRlcjoxM3B4IG91dHNldCAjMjIyO1xuICAtbW96LWJvcmRlci1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvdmlkZW9fYm9yZGVyLnBuZ1wiKSAzMCByZXBlYXQ7XG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS92aWRlb19ib3JkZXIucG5nXCIpIDMwIHJlcGVhdDtcbiAgLW8tYm9yZGVyLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS92aWRlb19ib3JkZXIucG5nXCIpIDMwIHJlcGVhdDtcbiAgYm9yZGVyLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS92aWRlb19ib3JkZXIucG5nXCIpIDMwIHJlcGVhdDtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDMwcHggIzAwMDtcbn1cbiNHYW1lTGl2ZVZpZGVvIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cbiNHYW1lTGl2ZVZpZGVvIG9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLyogTUFJTiBTUE9SVCBJRCAqL1xuI0dhbWVTaG93Q29udGVudCB7XG4gIG1hcmdpbjogMzBweCAxNXB4IDE1cHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgYSB7IHRleHQtZGVjb3JhdGlvbjpub25lOyB9XG4jR2FtZVNob3dDb250ZW50IC5yYXBpZENvbnRlbnRHZW5lcmFsLFxuI0dhbWVTaG93Q29udGVudCAjY29udGVudFRhYnNMb2FkZXIge1xuICB3aWR0aDo3MCU7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB6LWluZGV4OjM7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7IC8qIE9sZCBicm93c2VycyAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OjQwMHB4O1xufVxuI0dhbWVTaG93Q29udGVudCAudGFiX21lbnUtbGlzdExvYWRlciB7IHBhZGRpbmc6MTAwcHggMDsgbWluLWhlaWdodDoxNTBweDsgfVxuI0dhbWVTaG93Q29udGVudCAjdGFiX2dzM19nYW1lX3N0YXRzX2NvbnRlbnQucmFwaWRDb250ZW50R2VuZXJhbCB7IHdpZHRoOjEwMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQubm9Db21tZW50cyAucmFwaWRDb250ZW50R2VuZXJhbCwgI0dhbWVTaG93Q29udGVudC5ub0NvbW1lbnRzICNjb250ZW50VGFic0xvYWRlciB7IHdpZHRoOiAxMDAlO31cbiNHYW1lU2hvd0NvbnRlbnQgc3Bhbi50ZWFtX2xvZ28gaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuI0dhbWVTaG93Q29udGVudCBsaSB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLyogVE9QIExFVkVMIFNFQ1RJT05TICovXG4jR2FtZVNob3dDb250ZW50IC5nYW1lX2luZm8ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyogVEFCQkVEIE5BVklHQVRJT04gKi9cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYl9tZW51IHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgd2lkdGg6IDcwJTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgI2VmZWZlZjtcbn1cblxuI0dhbWVTaG93Q29udGVudCAudGFiX21lbnUgI2lzY29yZUdhbWUge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuI2xpdmVHYW1lU2ltcGxle1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI3Njb3Jla2VlcGVyR2FtZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgY29sb3I6ICNiYmI7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYl9tZW51ICNpc2NvcmVUaW1lc3RhbXAge1xuICBjb2xvcjogI2FhYTtcbn1cblxuLyogTUFJTiBHQU1FIERBVEEgQ09MVU1OICovXG4jR2FtZVNob3dDb250ZW50IHVsLnRhYl9tZW51LWxpc3Qge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZmxvYXQ6bGVmdDtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHotaW5kZXg6NDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgbGkudGFiX21lbnUtdGFiIHtcbiAgZmxvYXQ6bGVmdDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VmZWZlZjtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2VmZWZlZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI0dhbWVTaG93Q29udGVudCBsaS50YWJfbWVudS10YWIgYSB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBhZGRpbmc6MTJweCAxMHB4IDhweDtcbiAgY29sb3I6IzY2NjtcbiAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgYmFja2dyb3VuZDogI0U3RTdFNztcbn1cbiNHYW1lU2hvd0NvbnRlbnQgbGkudGFiX21lbnUtdGFiLnNlbGVjdGVkIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XG4gIGNvbG9yOiMzMzM7XG4gIGJvcmRlci1ib3R0b206bm9uZTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgbGkudGFiX21lbnUtdGFiIGE6aG92ZXIgeyBjb2xvcjojMzMzOyB9XG5cbi8qIFNJREVCQVIgKi9cbi5HYW1lU2hvd0RhdGFDb2x1bW4ge1xuICBkaXNwbGF5Oi13ZWJraXQtYm94O1xuICBkaXNwbGF5Oi1tb3otYm94O1xuICBkaXNwbGF5OmJveDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO1xuICAtbW96LWJveC1vcmllbnQ6dmVydGljYWw7XG4gIGJveC1vcmllbnQ6dmVydGljYWw7XG4gIGJhY2tncm91bmQ6I0RERDtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDo3NXB4O1xuICBib3R0b206MjVweDtcbiAgcmlnaHQ6MDtcbiAgd2lkdGg6MzAlO1xuICBvdmVyZmxvdzphdXRvO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XG4gIGJveC1zaGFkb3c6MHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLC41KTtcbn1cbi5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uU2VjdGlvbiB7XG4gIGRpc3BsYXk6LXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6LW1vei1ib3g7XG4gIGRpc3BsYXk6Ym94O1xuICAtd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7XG4gIC1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDtcbiAgYm94LW9yaWVudDp2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwO1xuICAtbW96LWJveC1mbGV4OiAxMDA7XG4gIGJveC1mbGV4OiAxMDA7XG4gIHdpZHRoOjEwMCU7XG59XG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtbkhlYWRlciB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC1tb3otYm94LWZsZXg6IDA7XG4gIGJveC1mbGV4OiAwO1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzoxcHg7XG4gIGJhY2tncm91bmQ6ICNjY2M7IC8qIE9sZCBicm93c2VycyAqL1xufVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtbkhlYWRlciBoMyB7XG4gIHBhZGRpbmc6MTBweDtcbiAgbWFyZ2luOjA7XG59XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uSGVhZGVyIGgzIC5hY3Rpb24ge1xuICBmbG9hdDpyaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOi0ycHg7XG59XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uSGVhZGVyLmNvbGxhcHNhYmxlX2hhbmRsZSBoMyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICAgICAgIHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy91c2VyL2V4cGFuZF9hcnJvd3MucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAgICAtOTJweCAtMzlweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6ICAgICAgbm8tcmVwZWF0O1xuICBwYWRkaW5nLWxlZnQ6ICAgICAgICAgICAyNHB4O1xufVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29sdW1uIC5jb2xsYXBzZWQgLmdhbWVTaG93Q29sdW1uSGVhZGVyLmNvbGxhcHNhYmxlX2hhbmRsZSBoMyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICAgdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3VzZXIvZXhwYW5kX2Fycm93cy5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICAtMTQycHggMTFweDtcbn1cbi5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uQ29udGVudCB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC1tb3otYm94LWZsZXg6IDE7XG4gIGJveC1mbGV4OiAxO1xuICBvdmVyZmxvdzphdXRvO1xuICBwYWRkaW5nMjowIDVweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtblNlY3Rpb24ubmV3cyB7XG4gIGJveC1mbGV4OiAwO1xuICBtYXgtaGVpZ2h0OjUwJTtcbn1cbi5HYW1lU2hvd0RhdGFDb2x1bW4gLmdhbWVTaG93Q29sdW1uU2VjdGlvbjpmaXJzdC1jaGlsZCAuZ2FtZVNob3dDb2x1bW5IZWFkZXIge1xuICBib3JkZXItcmFkaXVzOiAwIDVweCAwIDA7XG59XG4uR2FtZVNob3dEYXRhQ29sdW1uIC5nYW1lU2hvd0NvbHVtblNlY3Rpb246bGFzdC1jaGlsZCAuZ2FtZVNob3dDb2x1bW5Db250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCAwO1xufVxuXG4vKiBNQUlOIENPTlRFTlQgQ09OVEFJTkVSUyAqL1xuLkdhbWVTaG93RGF0YUNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG59XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyIC5TdGF0V2lkZ2V0R3JvdXAge1xuICBiYWNrZ3JvdW5kOiAjRkZGOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgbWFyZ2luOiAwIDEwcHggMTBweCAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI1O1xufVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIC5TdGF0V2lkZ2V0R3JvdXAge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyIC5TdGF0V2lkZ2V0R3JvdXAuaW5zZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLlN0YXRXaWRnZXRHcm91cC5pbnNldCxcbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IC5TdGF0V2lkZ2V0R3JvdXAuaW5zZXQge1xuICBiYWNrZ3JvdW5kOiAjRkZGOyAvKiBPbGQgYnJvd3NlcnMgKi9cbn1cbi5TdGF0V2lkZ2V0VGFic0dyb3VwIHsgbWFyZ2luOiAtMTBweCAyMHB4IDAgMDsgb3ZlcmZsb3c6IGhpZGRlbjsgcGFkZGluZy10b3A6IDEwcHg7IH1cblxuLyovLy8vLy8vLy8vIE1BSU4gU1RBVCBXSURHRVQgQ09OVEFJTkVSUyAvLy8vLy8vLy8vKi9cbi5TdGF0V2lkZ2V0Q29udGFpbmVyIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBsZWZ0OyBvdmVyZmxvdzogaGlkZGVuOyBwYWRkaW5nOiAyMHB4IDAgMCAyMHB4OyB3aWR0aDogMTAwJTsgfVxuLlN0YXRXaWRnZXRDb250YWluZXItc3ViIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuLlN0YXRXaWRnZXRDb2x1bW4geyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IH1cbi5TdGF0V2lkZ2V0SG9sZGVyIHsgfVxuLlN0YXRXaWRnZXQgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiAwIDIwcHggMjBweCAwOyB9XG5cbi5TdGF0V2lkZ2V0SG9sZGVyIC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1YiB7IG1hcmdpbi1yaWdodDogMDsgfVxuLlN0YXRXaWRnZXRIb2xkZXIgLlN0YXRXaWRnZXRIb2xkZXIge31cblxuLyovLy8vLy8vLy8vIElORElWSURVQUwgU1RBVCBXSURHRVRTIChTUE9SVCBBR05PU1RJQykgLy8vLy8vLy8vLyovXG4uejEwIHsgei1pbmRleDogMTA7IH1cbi56OSB7IHotaW5kZXg6IDk7IH1cbi56OCB7IHotaW5kZXg6IDg7IH1cbi56NyB7IHotaW5kZXg6IDc7IH1cbi56NiB7IHotaW5kZXg6IDY7IH1cbi56NSB7IHotaW5kZXg6IDU7IH1cbi56NCB7IHotaW5kZXg6IDQ7IH1cbi56MyB7IHotaW5kZXg6IDM7IH1cbi56MiB7IHotaW5kZXg6IDI7IH1cbi56MSB7IHotaW5kZXg6IDE7IH1cbi53aWR0aDI1IHsgd2lkdGg6MjUlOyB9XG4ud2lkdGgzMyB7IHdpZHRoOjMzLjMzMzMzMyU7IH1cbi53aWR0aDUwIHsgd2lkdGg6NTAlOyB9XG4ud2lkdGg2NiB7IHdpZHRoOjY2LjY2NjY2NiU7IH1cbi53aWR0aDc1IHsgd2lkdGg6NzUlOyB9XG4ud2lkdGgxMDAgeyB3aWR0aDoxMDAlOyB9XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRIb2xkZXIgcC5ub0VudHJ5LFxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldCBzcGFuLm5vX3N0YXRzIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRlYW1fc3RhdHMtbGlzdCAubm9FbnRyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItdG9wOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMjA0LCAyMDQsIDEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvZGlhZ29uYWxfc3RyaXBlcy5wbmdcIik7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMDIsMTAyLDEwMiwxKTsgLyogT2xkIGJyb3dzZXJzICovXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLC43NSk7XG4gIG1hcmdpbjogMCAyMHB4IDAgMDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2ZmZjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldC50YWJzLTEgbGkgeyB3aWR0aDogMTAwJTsgfSAvKiBTZXRzIHRhYiB3aWR0aCBmb3IgMS1saXN0IGl0ZW0gKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQudGFicy0yIGxpIHsgd2lkdGg6IDUwJTsgfSAvKiBTZXRzIHRhYiB3aWR0aCBmb3IgMi1saXN0IGl0ZW1zICovXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0LnRhYnMtMyBsaSB7IHdpZHRoOiAzMy4zMzMzMzMlIH0gLyogU2V0cyB0YWIgd2lkdGggZm9yIDMtbGlzdCBpdGVtcyAqL1xuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGE6bGluayxcbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgYTp2aXNpdGVkIHsgY29sb3I6I2RkZDsgfVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBhOmhvdmVyLFxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBhOmFjdGl2ZSB7IGNvbG9yOiNmZmY7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGk6YmVmb3JlIHsgY29udGVudDogbm9uZTsgfVxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjM1KTtcbiAgY29sb3I6ICNjY2M7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6IC0xcHggLTFweCAwcHggcmdiYSgwLDAsMCwuMjUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldC5zdGF0c190b2dnbGUgbGkgeyBjb2xvcjojZGRkOyBjdXJzb3I6cG9pbnRlcjsgfVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldC5zdGF0c190b2dnbGUgbGk6aG92ZXIgeyBjb2xvcjojZmZmOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIucGxheV9ieV9wbGF5IC5TdGF0V2lkZ2V0VGFic0dyb3VwLWluc2V0IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpIHsgd2lkdGg6IDIwJSB9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0VGFic0dyb3VwLWluc2V0IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpLnNlbGVjdGVkLFxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaTpob3ZlcixcbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGk6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDpub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwwLDAsLjUpO1xufVxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaS5zZWxlY3RlZCBhIHsgY29sb3I6I2ZmZjsgfVxuI0dhbWVTaG93Q29udGVudCAuU3RhdFdpZGdldFRhYnNHcm91cC1pbnNldCB1bC5TdGF0V2lkZ2V0VGFicy1pbnNldCBsaSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9ib3JkZXItYmxhY2sucG5nXCIpLCB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvYm9yZGVyLXdoaXRlLnBuZ1wiKTsgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCwgbGVmdDsgcG9zaXRpb246IHJlbGF0aXZlO31cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRUYWJzR3JvdXAtaW5zZXQgdWwuU3RhdFdpZGdldFRhYnMtaW5zZXQgbGk6Zmlyc3QtY2hpbGQgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvYm9yZGVyLWJsYWNrLnBuZ1wiKTsgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDt9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0VGFic0dyb3VwLWluc2V0IHVsLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpOmxhc3QtY2hpbGQgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvYm9yZGVyLXdoaXRlLnBuZ1wiKTsgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O31cbi5TdGF0V2lkZ2V0VGFicy1pbnNldCAuY2Fycm90IHsgZGlzcGxheTogbm9uZTsgfVxuLlN0YXRXaWRnZXRUYWJzLWluc2V0IGxpLnNlbGVjdGVkIC5jYXJyb3Qge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvY2Fycm90LXVwLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIGJvdHRvbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzhweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIHsgbGlzdC1zdHlsZS10eXBlOiBub25lOyB3aWR0aDogMTAwJTsgfVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaSB7XG4gIGJhY2tncm91bmQ6I2IyYjJiMjtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDBweCAwcHggMHB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwwLDAsLjEpO1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwwLDAsLjEpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBoZWlnaHQ6IDNlbTtcbiAgbGluZS1oZWlnaHQ6IDNlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaSBoMyB7IGRpc3BsYXk6IGJsb2NrOyBmbG9hdDogbGVmdDsgfVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDQzcHg7XG4gIGxlZnQ6IDEwMCU7XG4gIHdpZHRoOiA2OXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTdweDtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3RhYi1lZGdlLXJpZ2h0LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG54LSNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGk6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3RhYi1lZGdlLXJpZ2h0LWdyYXkucG5nXCIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogLTdweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkuc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwO1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicyBsaS5tb3JlX3N0YXRzIHtcbiAgYmFja2dyb3VuZDpub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBvcGFjaXR5OiAuNTtcbiAgZmlsdGVyOkFscGhhKG9wYWNpdHk9NTApO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwcHggcmdiYSgyNTUsMjU1LDI1NSwxKTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkubW9yZV9zdGF0czpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzIGxpLmxpdmVfZ2FtZV9zaGVldCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjA0LCAyMDQsIDIwNCwxKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmdiYSgxMzcsMTM3LDEzNywxKTtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggcmdiYSgyMjksIDIyOSwgMjI5LDEpO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yNSk7XG4gIG9wYWNpdHk6IDE7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4IHJnYmEoMTAyLCAxMDIsIDEwMiwxKTtcbiAgYm9yZGVyLXRvcDogaW5pdGlhbDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoNTEsIDUxLCA1MSwxKTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHdoaXRlO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMgbGkubGl2ZV9nYW1lX3NoZWV0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmdiYSg2Niw2Niw2NiwxKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwgMCwgMCwgLjI1KTtcbn1cblxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1taW5pIHsgbGlzdC1zdHlsZS10eXBlOiBub25lOyB3aWR0aDogMTAwJTsgfSAvKiBDT01CSU5FIFRIRVNFIC1taW5pIFNUWUxFUyBXSVRIIFJFR1VMQVIgU1RZTEVTIFdIRVJFIFBPU1NJQkxFICovXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLW1pbmkgbGkge1xuICBiYWNrZ3JvdW5kOiNiMmIyYjI7XG4gIGJvcmRlci1yYWRpdXM6IDVweCAwcHggMHB4IDBweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLC4xKTtcbiAgY29sb3I6ICM2NjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICBwYWRkaW5nOiAwIDAgMCAxZW07XG4gIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMHB4IHJnYmEoMCwwLDAsLjEpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMi41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuU3RhdFdpZGdldFRhYnMtbWluaSBsaTpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvdGFiLWVkZ2UtcmlnaHQtZ3JheS5wbmdcIik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiAtN3B4O1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLlN0YXRXaWRnZXRUYWJzLW1pbmkgbGkuc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwO1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1taW5pIGxpLnNlbGVjdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy90YWItZWRnZS1yaWdodC5wbmdcIik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiAtN3B4O1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1taW5pIGxpLm1vcmVfc3RhdHMge1xuICBiYWNrZ3JvdW5kOm5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG9wYWNpdHk6IC41O1xuICBmaWx0ZXI6QWxwaGEob3BhY2l0eT01MCk7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDBweCByZ2JhKDI1NSwyNTUsMjU1LDEpO1xufVxuI0dhbWVTaG93Q29udGVudCB1bC5TdGF0V2lkZ2V0VGFicy1taW5pIGxpLm1vcmVfc3RhdHM6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLyogUExBWUVSIFNUQVQgV0lER0VUIC0gTEVBREVSICovXG4uU3RhdFdpZGdldC5wbGF5ZXJfc3RhdC1sZWFkZXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM0NDQ7XG4gIG1hcmdpbjogMCAzMHB4IDAgMTBweDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5TdGF0V2lkZ2V0LnBsYXllcl9zdGF0LWxlYWRlci1oZWFkZXIgZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7IGhlaWdodDogMTAwJTsgcGFkZGluZzogNXB4IDA7IHdpZHRoOiAxMDAlO1xufVxuc3Bhbi5wbGF5ZXJfc3RhdC1sZWFkZXItaGVhZGVyIHsgZm9udC1zaXplOiAxLjEyNWVtOyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogJGxpbmstY29sb3I7IHRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDEwMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLnBsYXllcl9zdGF0LWxlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7IC8qIE9sZCBicm93c2VycyAqL1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ucGxheWVyX3N0YXQtbGVhZGVyIGRpdiB7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCAwIDEwcHggMDtcblx0cG9zaXRpb246YWJzb2x1dGU7XG5cdHdpZHRoOiAxMDVweDtcblx0aGVpZ2h0OiAxMDVweDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xufVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHNwYW4ucGxheWVyX3Bob3RvX2ltYWdlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDBweDtcblx0aGVpZ2h0OjEwMHB4O1xuXHRib3JkZXI6M3B4IHNvbGlkICNmMGYwZjA7XG5cdGJvcmRlci1yYWRpdXM6NTAlO1xuXHRiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7XG5cdG92ZXJmbG93OmhpZGRlbjtcbn1cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9waG90byBzcGFuLnBsYXllcl9waG90b19pbWFnZSBpbWcucG9ydHJhaXQge1xuXHRkaXNwbGF5OmJsb2NrO1xuXHR3aWR0aDogMTA1JTtcblx0bWFyZ2luOi0yJSAwIDAgLTIlO1xufVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3Bob3RvIHNwYW4ucGxheWVyX3Bob3RvX2ltYWdlIGltZy5sYW5kc2NhcGUgeyBoZWlnaHQ6IDEwMCU7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgbWFyZ2luOi05OTk5cHg7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9waG90byBzcGFuLnBsYXllcl9waG90b19pbWFnZSB7IGxpbmUtaGVpZ2h0OjU4cHg7IH1cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0Ym94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDVweCAxMTBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbn1cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0Ym94IHNwYW4uc3RhdGJveF9zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgaGVpZ2h0OiA2MCU7XG4gIGNvbG9yOiMzMzM7XG4gIGJhY2tncm91bmQ6I2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDcwcHg7XG59XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfY2F0ZWdvcnkge1xuICBmb250LXNpemU6Ljg3NWVtO1xuICBoZWlnaHQ6IDQwJTtcbiAgY29sb3I6JGxpbmstY29sb3I7XG4gIGJhY2tncm91bmQ6I2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xufVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRib3ggc3Bhbi5zdGF0Ym94X2NhdGVnb3J5IHNwYW4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGxpbmUtaGVpZ2h0OiAxMDAlOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuIHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLnBsYXllcl9zdGF0LWxlYWRlciB1bCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuLnBsYXllcl9zdGF0LWxlYWRlciB1bCBsaSB7IGxpbmUtaGVpZ2h0OiAzMHB4OyB0ZXh0LWluZGVudDoxMHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfbm8ge1xuICBjbGVhcjogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtaW5kZW50Oi00cHg7XG4gIHRleHQtdHJhbnNmb3JtOm5vbmU7XG4gIHdpZHRoOiA1MHB4O1xufVxuLnBsYXllclN0YXRMZWFkZXJFbGVtZW50IC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9uYW1lIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtc2l6ZToxLjEyNWVtO1xuXHRmb250LXdlaWdodDo2MDA7XG5cdGNvbG9yOiAkbGluay1jb2xvcjtcblx0YmFja2dyb3VuZDojZmZmO1xuXHRmbG9hdDogbGVmdDtcblx0bWF4LWhlaWdodDogMzBweDtcblx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1pbmRlbnQ6MDtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyAucGxheWVyX3N0YXQtbGVhZGVyIHVsIGxpLnBsYXllcl9uYW1lIHsgbWF4LXdpZHRoOiAxODVweDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciB1bCBsaS5wbGF5ZXJfbmFtZSB7IG1heC13aWR0aDogMTIwcHg7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9uYW1lIHsgbWF4LXdpZHRoOiAxMjBweDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX25hbWUgeyBtYXgtd2lkdGg6IDE4MHB4OyB9XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEgeyBjbGVhcjogbGVmdDsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTAwJTsgfVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0Y29sb3I6ICMzMzM7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cdHRleHQtc2hhZG93OiBub25lO1xuXHQmOmJlZm9yZXtcblx0XHRkaXNwbGF5OnRhYmxlO1xuXHR9XG5cdCY6YWZ0ZXJ7XG5cdFx0Y2xlYXI6Ym90aDtcblx0fVxufVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6Ljg3NWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiM2NjY7XG4gIGNvbG9yOiNmZmY7XG4gIGZvbnQtd2VpZ2h0OjYwMDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtaW5kZW50OiAwO1xufVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhIHVsIGxpIHNwYW4ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiA1MCU7XG5cdHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcblx0d2lkdGg6IDEwMCU7XG59XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEgdWwgbGkgc3Bhbi5zdGF0IHtcblx0YmFja2dyb3VuZC1jb2xvcjojNjY2O1xuXHRjb2xvcjojMzMzO1xuXHRiYWNrZ3JvdW5kOiNmZmY7XG5cdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNmMGYwZjA7XG5cdGZvbnQtd2VpZ2h0OjQwMDtcbn1cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB1bCBsaTpmaXJzdC1jaGlsZCB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4ucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdHMtZXh0cmEuc3RhdF81IHVsIGxpIHsgd2lkdGg6IDIwJTsgfVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhLnN0YXRfNCB1bCBsaSB7IHdpZHRoOiAyNSU7IH1cbi5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYS5zdGF0XzMgdWwgbGkgeyB3aWR0aDogMzMuMzMzMzMzJTsgfVxuLnBsYXllcl9zdGF0LWxlYWRlciAucGxheWVyX3N0YXRzLWV4dHJhLnN0YXRfMiB1bCBsaSB7IHdpZHRoOiA1MCU7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9zdGF0cy1leHRyYSB7IGRpc3BsYXk6IG5vbmU7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IC5wbGF5ZXJfc3RhdC1sZWFkZXIgLnBsYXllcl9waG90byB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDAgMCAxMHB4IDA7IHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogNjBweDsgaGVpZ2h0OiA2MHB4OyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCB7IGhlaWdodDogNjBweDsgbWFyZ2luOiAwIDAgMTBweCA3MHB4OyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfc3RhdCB7IGZvbnQtc2l6ZTogMjFweDsgaGVpZ2h0OiA1MCU7IGxpbmUtaGVpZ2h0OiAyNXB4OyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfc3RhdGJveCBzcGFuLnN0YXRib3hfY2F0ZWdvcnkgeyBmb250LXNpemU6IDEwcHg7IGhlaWdodDogNTAlOyBsaW5lLWhlaWdodDogMzBweDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciB1bCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlOyBmb250LXNpemU6IDEwcHg7IGhlaWdodDogMzBweDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnBsYXllcl9zdGF0LWxlYWRlciB1bCBsaSB7IGxpbmUtaGVpZ2h0OiAzMHB4OyB0ZXh0LWluZGVudDogNXB4OyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSAucGxheWVyX3N0YXQtbGVhZGVyIC5wbGF5ZXJfbm8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCA1MCU7IHRleHQtYWxpZ246IGNlbnRlcjsgdGV4dC1pbmRlbnQ6IC01cHg7IHdpZHRoOiAzNXB4OyB9XG5cbi8qIFRFQU0gU1RBVCBXSURHRVQgLSBDT01QQVJJU09OICovXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyLnRlYW1fc3RhdC1jb21wYXJpc29uIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3ZlcnRpY2FsX2RpdmlkZXIucG5nXCIpIHJlcGVhdC15IDUwJSA1MCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLmhvbWVUZWFtLCAjR2FtZVNob3dDb250ZW50IC5hd2F5VGVhbXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7fVxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0X2NhdGVnb3J5IHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuI0dhbWVTaG93Q29udGVudCAudGVhbV9zdGF0LWNvbXBhcmlzb24gaDMgeyBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCB7IG1hcmdpbi1ib3R0b206IDVweDsgb3ZlcmZsb3c6IGhpZGRlbjsgd2lkdGg6IDEwMCUgfVxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0sXG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9zdGF0X2NvbXBhcmlzb24tc2hpbmUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXgtd2lkdGg6IDk4JTtcbiAgbWluLXdpZHRoOiAyJTtcbn1cbiN0YWJfZ3MzX2dhbWVfc3VtbWFyeV9jb250ZW50IC50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdC1iYXJfZ3JhcGggLmF3YXlUZWFtLFxuI3RhYl9nczNfZ2FtZV9zdW1tYXJ5X2NvbnRlbnQgLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0ge1xuICBtYXgtd2lkdGg6IDg4JTtcbiAgbWluLXdpZHRoOiAxMiU7XG59XG4jdGFiX2dzM19wbGF5ZXJfc3RhdHNfY29udGVudCAucGxheWVyX3N0YXRzLWxpc3QtaGVhZGVyIC50ZWFtTG9nby10aW55IHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0ge1xuICBib3JkZXItcmFkaXVzOiA1cHggMHB4IDBweCA1cHg7XG59XG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7XG4gIGJvcmRlci1yYWRpdXM6IDBweCA1cHggNXB4IDBweDtcbn1cbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdF90b3RhbHMgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdF90b3RhbHM6bGFzdC1jaGlsZCB7IGZsb2F0OiByaWdodDsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdF90b3RhbHMgaDIge1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDBweCByZ2JhKDI1NSwyNTUsMjU1LC43NSk7XG59XG4udGVhbV9zdGF0LWNvbXBhcmlzb24gLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSBzcGFuIGltZyxcbi50ZWFtX3N0YXQtY29tcGFyaXNvbiAuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHNwYW4gaW1nIHtcbiAgcGFkZGluZzogNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnRlYW1fc3RhdC1jb21wYXJpc29uIC5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiBpbWcgeyBmbG9hdDogcmlnaHQ7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLnZlcnRpY2FsX2dyYXBoLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4jR2FtZVNob3dDb250ZW50IC52ZXJ0aWNhbF9ncmFwaC1jYXRlZ29yeSB7IGRpc3BsYXk6IGJsb2NrOyBmbG9hdDogbGVmdDsgdGV4dC1hbGlnbjogY2VudGVyOyB3aWR0aDogNTAlOyB9XG4jR2FtZVNob3dDb250ZW50IC52ZXJ0aWNhbF9ncmFwaC1jYXRlZ29yeSBoMyB7IGNsZWFyOiBib3RoOyBkaXNwbGF5OiBibG9jazsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuI0dhbWVTaG93Q29udGVudCAudmVydGljYWxfZ3JhcGgtc2luZ2xlIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBsZWZ0OyB9XG4jR2FtZVNob3dDb250ZW50IC52ZXJ0aWNhbF9ncmFwaC1iYXIgeyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiA1MHB4OyB3aWR0aDogMzBweDsgfVxuXG4vKiBQTEFZRVIgU1RBVCBXSURHRVQgLSBMSVNUICovXG4jR2FtZVNob3dDb250ZW50IC50YWJsZV9jb250YWluZXIgdGFibGUgdGhlYWQgdGggeyB3aGl0ZS1zcGFjZTpub3dyYXA7IHBhZGRpbmc6MCA1cHg7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYmxlX2NvbnRhaW5lciB0YWJsZSB0ZC5wbGF5ZXJfbmFtZSB7IHdoaXRlLXNwYWNlOm5vd3JhcDsgcGFkZGluZy1yaWdodDoyMHB4OyB9XG5cbiNHYW1lU2hvd0NvbnRlbnQgLnRhYmxlX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMTBweCAyMHB4IDIwcHggMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbn1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIucGxheV9ieV9wbGF5IC50YWJsZV9jb250YWluZXIgIHsgbWFyZ2luOiAwIDIwcHggMjBweCAwOyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLnBsYXlfYnlfcGxheSAuU3RhdFdpZGdldENvbHVtbiAuU3RhdFdpZGdldEhvbGRlciB7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIuYXdheVRlYW0sICNHYW1lU2hvd0NvbnRlbnQgdWwucGxheWVyX3N0YXRzLWxpc3QtaGVhZGVyLmhvbWVUZWFtIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMzMzM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOjAgMCA1cHggMDtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGxpIGgze1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbn1cbiNHYW1lU2hvd0NvbnRlbnQgIHVsLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlciBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6MTAwJTtcbiAgcGFkZGluZzogMCAwIDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGgye1xuXHQgIGNvbG9yOiMzMzM7XG4gIH1cbn1cbi8vIFNocmluayBoZWFkZXIgc2l6ZSBpZiBhZCBjb2x1bW4gaXMgcHJlc2VudFxuLnJpZ2h0LWNvbHVtbi1hZC1jb250ZW50IHVsLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlciBsaSBoMiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLyogVEVBTSBTVEFUIFdJREdFVCAtIExJU1QgKi9cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0LWhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGNvbG9yOiAjZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgbGkgaDN7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgdGV4dC1zaGFkb3c6IC0xcHggLTFweCAwcHggcmdiYSgwLDAsMCwuNSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkudGVhbV9sb2dvIHsgZmxvYXQ6IHJpZ2h0OyBwYWRkaW5nOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHdpZHRoOiAxMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgdWwudGVhbV9zdGF0cy1saXN0LWhlYWRlciBsaS50ZWFtX2xvZ28gc3BhbiB7IHBhZGRpbmc6IDdweCAwOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkudGVhbV9sb2dvIHNwYW4gYSB7IG1hcmdpbjogMCBhdXRvOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IHVsLnRlYW1fc3RhdHMtbGlzdCB7XG5cdGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtc2l6ZToxZW07XG59XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IHVsLnRlYW1fc3RhdHMtbGlzdDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IC0xMHB4OyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCB7IG92ZXJmbG93OiBoaWRkZW47IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjBmMGYwOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaSB7IGRpc3BsYXk6IGJsb2NrOyBmbG9hdDogbGVmdDsgbGluZS1oZWlnaHQ6IDEuNWVtOyBwYWRkaW5nOiA4cHggMDsgdGV4dC1hbGlnbjpjZW50ZXI7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaSB7IGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IHNwYW4udGVhbV9sb2dvIHsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogMjBweDsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSBzcGFuICB7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpOyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHNwYW4gIHsgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4yKTsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IHNwYW4udGVhbV9sb2dvIGEgeyBkaXNwbGF5OiBub25lOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0X2NhdGVnb3J5IHsgd2lkdGg6IDMzLjMlOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCB7IGRpc3BsYXk6bm9uZTsgfVxuI0dhbWVTaG93Q29udGVudCB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggc3BhbiBhIHsgYm9yZGVyOiBub25lOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS50ZWFtX3N0YXQgeyBmbG9hdDogcmlnaHQ7IHRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDMzLjMlOyBmb250LXdlaWdodDo0MDA7fVxuI0dhbWVTaG93Q29udGVudCBzcGFuLnRzMSxcbiNHYW1lU2hvd0NvbnRlbnQgc3Bhbi50czIgeyBmb250LXNpemU6IC42NWVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBkaXNwbGF5OiBub25lOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdF9jYXRlZ29yeSB7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtaW5kZW50OiAxMHB4OyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgd2lkdGg6IDMwJTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHsgd2lkdGg6IDQwJTsgZGlzcGxheTogbm9uZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHNwYW4gaW1nIHsgZGlzcGxheTogbm9uZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdCxcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIHVsLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgbGkudGVhbV9sb2dvIHsgd2lkdGg6IDE1JTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIHNwYW4geyBoZWlnaHQ6IDIwcHg7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgLnRlYW1fc3RhdC1jb21wYXJpc29uIC5TdGF0V2lkZ2V0IHsgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgc3Bhbi50czEsXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSBzcGFuLnRzMiB7IGNsZWFyOmxlZnQ7IGNvbG9yOiMzMzM7IGRpc3BsYXk6IGJsb2NrOyBmb250LXdlaWdodDogbm9ybWFsOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCB7IG92ZXJmbG93OiBoaWRkZW47IGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXRfY2F0ZWdvcnkgeyBmb250LXdlaWdodDogYm9sZDsgaGVpZ2h0OiAyMHB4OyBsaW5lLWhlaWdodDoxNXB4OyBwYWRkaW5nOiAwOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB3aWR0aDogMTAwJSB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCB7IGNsZWFyOmxlZnQ7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgd2lkdGg6IDEwMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSxcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7IGhlaWdodDogMzBweDsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggc3BhbiB7IGhlaWdodDogMzBweDsgcGFkZGluZzogNXB4OyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCAuYXdheVRlYW0gc3BhbiAgeyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHNwYW4gIHsgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4yKTsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmhvbWVUZWFtIHNwYW4gYSAgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogNXB4OyB0b3A6IDVweDsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3VtbWFyeSB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkudGVhbV9zdGF0IHsgZm9udC1zaXplOiAxLjVlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDM1cHg7IHBhZGRpbmc6IDA7IHRleHQtc2hhZG93OiAxcHggMXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7IHdpZHRoOiA3NXB4OyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdW1tYXJ5IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS50ZWFtX3N0YXQudHMxIHsgZmxvYXQ6IGxlZnQ7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czIgeyBmbG9hdDogcmlnaHQ7dGV4dC1hbGlnbjogcmlnaHQ7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czEgc3BhbixcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N1bW1hcnkgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnRlYW1fc3RhdC50czIgc3BhbiB7IGhlaWdodDogMTVweDsgbGluZS1oZWlnaHQ6IDE1cHg7IH1cbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5hd2F5VGVhbSxcbiNHYW1lU2hvd0NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgdWwudGVhbV9zdGF0cy1saXN0IGxpIHVsIGxpLnN0YXQtYmFyX2dyYXBoIC5ob21lVGVhbSB7IGhlaWdodDogMzBweDsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggc3BhbiBhIHsgZGlzcGxheTogbm9uZTsgfVxuI0dhbWVTaG93Q29udGVudCAuR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC50ZWFtX3N0YXRzLWxpc3QgbGkgdWwgbGkuc3RhdC1iYXJfZ3JhcGggLmF3YXlUZWFtIHNwYW4gIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMik7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDMwcHg7IG1hcmdpbjogMDsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4jR2FtZVNob3dDb250ZW50IC5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IHVsLnRlYW1fc3RhdHMtbGlzdCBsaSB1bCBsaS5zdGF0LWJhcl9ncmFwaCAuaG9tZVRlYW0gc3BhbiAgeyBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjIpOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAzMHB4OyBtYXJnaW46IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jR2FtZVNob3dDb250ZW50IC5zdGF0LWJhcl9ncmFwaCBkaXYuYXdheVRlYW0ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvc3RhdF9jb21wYXJpc29uLXNoaW5lLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBib3JkZXItcmFkaXVzOiA1cHggMHB4IDBweCA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMzUlO1xufVxuI0dhbWVTaG93Q29udGVudCAuc3RhdC1iYXJfZ3JhcGggZGl2LmhvbWVUZWFtIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYm9yZGVyLXJhZGl1czogMHB4IDVweCA1cHggMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDY1JTtcbn1cblxuLyogR0FNRSBERVRBSUxTICovXG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyLmhlYWRlciB7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjI1KTsgY29sb3I6Izk5OTsgbWFyZ2luOiAwOyAvKiBwYWRkaW5nOiAxMHB4IDAgMTBweCAyMHB4OyAqLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyLXN1Yi5oZWFkZXIgeyBtYXJnaW46IDAgMCAtMTVweCAwOyB9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0R3JvdXAuaW5zZXQuZ2FtZV9kZXRhaWxzIC5iYWNrZ3JvdW5kIHsgfVxuXG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBsaSB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTk5OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMSk7IGNvbG9yOiAjOTk5OyBmb250LXNpemU6IDEwcHg7IHBhZGRpbmc6IC4yNWVtIDA7IH1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuZ2FtZV9kZXRhaWxzIGxpIGgzIHsgcGFkZGluZzogLjVlbSAwOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBsaS5zdWJjYXRlZ29yeSB7IHRleHQtaW5kZW50OiAxLjI1ZW07IH1cbiNHYW1lU2hvd0NvbnRlbnQgdWwuZ2FtZV9kZXRhaWxzIGEsXG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBhOnZpc2l0ZWQgeyBjb2xvcjojY2NjOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7ICB9XG4jR2FtZVNob3dDb250ZW50IHVsLmdhbWVfZGV0YWlscyBhOmhvdmVyLFxuI0dhbWVTaG93Q29udGVudCB1bC5nYW1lX2RldGFpbHMgYTphY3RpdmUgeyBjb2xvcjogI2ZmZjsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7ICB9XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIuZ2FtZV9kZXRhaWxzLmhlYWRlciB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdGV4dC1pbmRlbnQ6IDIwcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkucGxheV9kZXRhaWxzLmF3YXl7ZmxvYXQ6bGVmdDt9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyIGxpLnBsYXlfZGV0YWlscy5ob21le2Zsb2F0OnJpZ2h0OyBwYWRkaW5nLXJpZ2h0OjEwcHh9XG4jR2FtZVNob3dDb250ZW50IC5TdGF0V2lkZ2V0Q29udGFpbmVyIGxpLnRlYW1fc2NvcmUuaG9tZXtmbG9hdDpsZWZ0OyBwYWRkaW5nLWxlZnQ6MTBweH1cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkudGVhbV9zY29yZS5hd2F5e2Zsb2F0OnJpZ2h0O31cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkuc2hvb3V0b3V0X3RvdGFse2ZvbnQtc2l6ZToxLjVlbTtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozNXB4O3BhZGRpbmc6MCAxMHB4O3RleHQtc2hhZG93OjFweCAxcHggMHB4IHJnYmEoMjU1LDI1NSwyNTUsLjc1KTt3aWR0aDo1NXB4O3RleHQtYWxpZ246Y2VudGVyO31cbiNHYW1lU2hvd0NvbnRlbnQgLlN0YXRXaWRnZXRDb250YWluZXIgbGkuc2hvb3V0b3V0X3RvdGFsLmF3YXl7ZmxvYXQ6cmlnaHQ7fVxuXG4vKiBHQU1FIFBSRVZJRVcgU1BFQ0lGSUMgU1RZTEVTICovXG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1oZWFkZXIgLlN0YXRXaWRnZXRDb250YWluZXIgeyBwYWRkaW5nOiAxMHB4IDAgMCAxMHB4OyB9XG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1oZWFkZXIgLlN0YXRXaWRnZXRDb250YWluZXItc3ViIHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1oZWFkZXIgLlN0YXRXaWRnZXRDb250YWluZXItc3ViLmhhc190ZWFtX3dpZGdldHMge1xuXHRmbG9hdDpyaWdodDtcblx0d2lkdGg6NjYuNiU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIuZ2FtZV9wcmV2aWV3LWhlYWRlciAuU3RhdFdpZGdldENvbnRhaW5lci1zdWIgLlN0YXRXaWRnZXRDb2x1bW4ud2lkdGg1MHtcblx0d2lkdGg6NTAlO1xufVxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIC5TdGF0V2lkZ2V0IHsgbWFyZ2luOiAwIDEwcHggMTBweCAwOyB9XG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLmdhbWVfcHJldmlldy1jb2x1bW4gLlN0YXRXaWRnZXRHcm91cCB7bWFyZ2luOiAwO31cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIuZ2FtZV9wcmV2aWV3LWhlYWRlciAuY2Fycm90LmRvd24geyBiYWNrZ3JvdW5kOiAjMDAwOyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMjVweDsgd2lkdGg6IDEwMCU7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9wcmV2aWV3IC5TdGF0V2lkZ2V0SG9sZGVyIC5TdGF0V2lkZ2V0LmdhbWVfcHJldmlldyB7IG1hcmdpbi1yaWdodDogMDsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3ByZXZpZXcgc3Bhbi50ZWFtX2xvZ28geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbjogMCBhdXRvOyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfcHJldmlldyB1bC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvc2NvcmluZ19zdW1tYXJ5LXNoaW5lLnBuZ1wiKSByZXBlYXQteCA1MCUgNTAlOyB9XG5cbi8qIEdBTUUgU1RBVFMgU1BFQ0lGSUMgU1RZTEVTICovXG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgLnRlYW1fc3RhdHMtbGlzdC1oZWFkZXIgc3Bhbi50ZWFtX2xvZ28geyBkaXNwbGF5OiBibG9jazsgfVxuLkdhbWVTaG93RGF0YUNvbnRhaW5lci5nYW1lX3N0YXRzIC5wbGF5ZXJfc3RhdHMtbGlzdC1oZWFkZXIgc3Bhbi50ZWFtX2xvZ28geyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogOHB4OyB9XG4uR2FtZVNob3dEYXRhQ29udGFpbmVyLmdhbWVfc3RhdHMgLnBsYXllcl9zdGF0cy1saXN0LWhlYWRlci5zdWIgc3Bhbi50ZWFtX2xvZ28geyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIucGxheWVyX3N0YXRzIC50YWJsZV9jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5wbGF5ZXJfc3RhdHMgLmNhcnJvdCB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9jYXJyb3QtcGxheWVyX3N0YXRzX2xpc3QtaGVhZGVyLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDI0cHg7XG59XG4uU3RhdFdpZGdldEdyb3VwQ29udGFpbmVyLnBsYXllcl9zdGF0cyAucGxheWVyX3N0YXRzX2hlYWRlciB7IG1hcmdpbi1ib3R0b206IDA7IH1cbi5TdGF0V2lkZ2V0R3JvdXBDb250YWluZXIucGxheWVyX3N0YXRzIHRhYmxlLnBsYXllcl9zdGF0cy1saXN0IHNvcnRhYmxlIHRoIHsgZm9udC1zaXplOiA5cHg7IH1cbi5HYW1lU2hvd0RhdGFDb250YWluZXIuZ2FtZV9zdGF0cyAucGxheWVyX3N0YXRzIC5jYXRlZ29yeV9zZXBhcmF0b3IgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheWVyX3N0YXQtc2VwYXJhdG9yLnBuZ1wiKSByZXBlYXQteDsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBsZWZ0OyBoZWlnaHQ6IDEwcHg7IHdpZHRoOiAxMDAlOyB9XG4uU3RhdFdpZGdldENvbnRhaW5lci1zdWIgLlN0YXRXaWRnZXRDb250YWluZXI6bGFzdC1jaGlsZCAuY2F0ZWdvcnlfc2VwYXJhdG9yIHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4vKiBTQ09SSU5HIFNVTU1BUlkgKi9cblxuLy8gU2NvcmluZyBTdW1tYXJ5IGhlYWRlclxuLmdhbWVfYm94c2NvcmUgPiBoMzpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIHNwZWNpYWwtaGVhZGVyO1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbi5nYW1lX2JveHNjb3JlIC5zY29yaW5nX3N1bW1hcnkge1xuXG4gIC8vIERpc3BsYXkgVUwvTEkgc3RydWN0dXJlIGFzIHRhYmxlcyB3aXRoIGZpeGVkLXdpZHRoIGNvbHVtbnNcblxuICAkdGVhbS1zY29yZTogNjVweDtcbiAgJGdhbWUtY2xvY2s6IDU1cHg7XG4gICR0ZWFtLW5hbWU6IDEyNXB4O1xuICAkc2NvcmUtdHlwZTogMzVweDtcblxuICBsaSBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDNweCAxcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgIH1cbiAgfVxuXG4gIC5pbnRlcnZhbF9yb3csXG4gIC5zY29yaW5nX2luZm8ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuXG4gIC5pbnRlcnZhbF9yb3cge1xuICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC8vIFBlcmlvZCBuYW1lIGNvbHVtbiBkb2Vzbid0IGhhdmUgYSBjbGFzc1xuICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyR0ZWFtLXNjb3JlICogMn0pO1xuICAgIH1cbiAgICAvLyBTb21lIExJcyBhcmUgYWx3YXlzIGVtcHR5XG4gICAgbGk6ZW1wdHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuc2NvcmluZ19pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtYm9keS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLmdhbWVfY2xvY2sge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHdpZHRoOiAkZ2FtZS1jbG9jaztcbiAgfVxuXG4gIC50ZWFtX25hbWUge1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdpZHRoOiAkdGVhbS1uYW1lO1xuICB9XG5cbiAgLnNjb3JlX3R5cGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHdpZHRoOiAkc2NvcmUtdHlwZTtcbiAgfVxuXG4gIC8vIEFsbG93IHBsYXkgZGV0YWlscyB0byBmaWxsIHJlbWFpbmluZyB3aWR0aFxuICAucGxheV9kZXRhaWxzIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyR0ZWFtLXNjb3JlICogMiArICRnYW1lLWNsb2NrICsgJHRlYW0tbmFtZSArICRzY29yZS10eXBlfSk7XG4gICAgLy8gTm8gU2NvcmVcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyR0ZWFtLXNjb3JlICogMn0pO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFtX3Njb3JlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2lkdGg6ICR0ZWFtLXNjb3JlO1xuICB9XG5cbiAgLy8gQXQgdGhpcyBzaXplLCB3cmFwIC5wbGF5X2RldGFpbHMgdG8gaXRzIG93biBsaW5lXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NjhweCkge1xuICAgIC8vIEFsbG93IHRlYW0gbmFtZSB0byBmaWxsIHJlbWFpbmluZyB3aWR0aFxuICAgIC50ZWFtX25hbWUge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHRlYW0tc2NvcmUgKiAyICsgJGdhbWUtY2xvY2sgKyAkc2NvcmUtdHlwZX0pO1xuICAgIH1cblxuICAgIC5wbGF5X2RldGFpbHMge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBVc2UgYWJzb2x1dGUgcG9zaXRpb25pbmcgdG8gcHVsbCBzY29yZXMgYmFjayBpbnRvIHBsYWNlXG4gICAgLnNjb3JpbmdfaW5mbyB7XG4gICAgICAudGVhbV9zY29yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6ICR0ZWFtLXNjb3JlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTaHJpbmsgdGVhbS1zY29yZSBhbmQgc2NvcmUtdHlwZSBjb2x1bW5zIGEgbGl0dGxlLCBhbmQgcmVjYWxjdWxhdGUgb3RoZXIgY29sdW1uc1xuICBAbWVkaWEgKG1heC13aWR0aDogMzQwcHgpIHtcbiAgICAkdGVhbS1zY29yZTogNTVweDtcbiAgICAkc2NvcmUtdHlwZTogMjhweDtcblxuICAgIC5pbnRlcnZhbF9yb3cgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHRlYW0tc2NvcmUgKiAyfSk7XG4gICAgfVxuXG4gICAgLnNjb3JpbmdfaW5mbyAudGVhbV9zY29yZSB7XG4gICAgICByaWdodDogJHRlYW0tc2NvcmU7XG4gICAgfVxuXG4gICAgLnRlYW1fbmFtZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skdGVhbS1zY29yZSAqIDIgKyAkZ2FtZS1jbG9jayArICRzY29yZS10eXBlfSlcbiAgICB9XG5cbiAgICAuc2NvcmVfdHlwZSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHdpZHRoOiAkc2NvcmUtdHlwZTtcbiAgICB9XG5cbiAgICAudGVhbV9zY29yZSB7XG4gICAgICB3aWR0aDogJHRlYW0tc2NvcmU7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gQ2hhbmdlIHBhZGRpbmcgYWx0ZXJuYXRpb24gYmVjYXVzZSAuY2xlYXJBbGwgZGl2cyB0aHJvdyBvZmYgZXZlbi9vZGQgY291bnRcbi5nYW1lX2JveHNjb3JlIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLlN0YXRXaWRnZXRDb2x1bW4ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgICY6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKDNuKzIpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zcGFjZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4vKiBHQUxMRVJJRVMgKi9cbiNnYW1lR2FsbGVyeUhlYWRlciB7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgcGFkZGluZzoxMHB4IDEwcHggMTBweCAzJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG59XG4jZ2FtZUdhbGxlcnlIZWFkZXIgLmNvdW50IHtcbiAgZmxvYXQ6bGVmdDtcbiAgbWFyZ2luLWxlZnQ6MTBweDtcbiAgY29sb3I6Izk5OTtcbiAgbGluZS1oZWlnaHQ6MzZweDtcbn1cbiNnYW1lR2FsbGVyeUhlYWRlciAuYnV0dG9uIHtcbiAgZmxvYXQ6bGVmdDtcbiAgbWFyZ2luLXRvcDo4cHg7XG59XG4jZ2FtZUdhbGxlcnlIZWFkZXIgLnRvb2xfcGFnaW5hdGlvbiB7XG4gIHBhZGRpbmc6MTBweCAxMHB4IDA7XG4gIGJvcmRlci10b3A6bm9uZTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbGxlcnlJdGVtTGlzdCB7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNCQkI7XG4gIG1pbi1oZWlnaHQ6IDMyNHB4O1xufVxuXG5cbi8qIEdBTUUgU0hPVyBORVhUIEdFTiBTVFlMRVMgKi9cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4ge1xuICBtYXJnaW46IDA7XG59XG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5leHRyYV9nYW1lX2RldGFpbHN7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAubGlzdF9vZmZpY2lhbHN7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAuZXh0cmFfZ2FtZV9kZXRhaWxzIC5wYWdlRWxlbWVudHtcbiAgbWFyZ2luOiAwIDE1cHggMTVweCAxNXB4O1xufVxuXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5saXN0X29mZmljaWFscyAucGFnZUVsZW1lbnR7XG4gIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbn1cblxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjZ2FtZV9kZXRhaWxze1xuICBwYWRkaW5nOiAwcHggMHB4IDEwcHggMHB4O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjZ2FtZV9kZXRhaWxzIHVse1xuICBmb250LXNpemU6IDExcHg7XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gI2dhbWVfZGV0YWlscyBsaXtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5nYW1lX2JveHNjb3JlIGgze1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjZ2FtZV9kZXRhaWxzIGgze1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjZ2FtZVRvdGFsIC5ldmVuIHRkLCAjR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5nYW1lX2RldGFpbHMgLmV2ZW57XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuICNnYW1lVG90YWwgLm9kZCB0ZCwgI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAuZ2FtZV9kZXRhaWxzIC5vZGR7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7XG59XG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuICNnYW1lVG90YWwgLnN0YXRfdGFibGUgdGR7XG4gIHdpZHRoOiA3MHB4XG59XG5cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLnRhYl9tZW51e1xuICB3aWR0aDogMTAwJTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLmxpdmVfZ2FtZV9zaGVldHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogNXB4IDA7XG59XG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuIC5zcG9ydC10b29sc3tcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwIDVweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gLnJhcGlkQ29udGVudEdlbmVyYWwsXG4jR2FtZVNob3dDb250ZW50LmdhbWVfc2hvd19uZXh0Z2VuICNjb250ZW50VGFic0xvYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQuZ2FtZV9zaG93X25leHRnZW4gdWwudGFiX21lbnUtbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAjcmFwaWRUYWJzIHtcbiAgcGFkZGluZzogMHB4O1xufVxuI0dhbWVTaG93Q29udGVudC5nYW1lX3Nob3dfbmV4dGdlbiAuR2FtZVNob3dEYXRhQ29udGFpbmVyIHtcbiAgcGFkZGluZzogMjBweCAxMHB4IDAgMTBweDtcbn1cblxuI3RhYl9uZXh0Z2VuX2NvbW1lbnRzX2NvbnRlbnQgLkdhbWVTaG93RGF0YUNvbHVtbiB7XG4gIHBvc2l0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4jdGFiX25leHRnZW5fY29tbWVudHNfY29udGVudCAuR2FtZVNob3dEYXRhQ29sdW1uIC5jb21tZW50U3RyZWFtQ29udGFpbmVyIHtcbiAgbWluLWhlaWdodDogMTAwcHggIWltcG9ydGFudDtcbn1cblxuLmdhbWVfaGVhZGVyX3YyIHtcbiAgbWFyZ2luOiAwIDE1cHg7XG4gIGNsZWFyOiBib3RoO1xufVxuLmdhbWVfaGVhZGVyX3YyIC5hd2F5LCAuZ2FtZV9oZWFkZXJfdjIgLmhvbWUge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2FtZV9oZWFkZXJfdjIgLmF3YXkge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZ2FtZV9oZWFkZXJfdjIgLmhvbWUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmdhbWVfaGVhZGVyX3YyIGgzLCAuZ2FtZV9oZWFkZXJfdjIgLnRlYW1fbG9nbyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmdhbWVfaGVhZGVyX3YyIGgzIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG4uZ2FtZV9oZWFkZXJfdjIgLnNjb3JlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4jR2FtZVNob3dDb250ZW50IC50ZWFtSGVhZGxpbmUge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLnRlYW1IZWFkbGluZSAudGVhbV9sb2dvIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmxpbmVfc2NvcmVfdjIgLnRlYW0ge1xuICB3aWR0aDogMjUwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4jR2FtZVNob3dDb250ZW50IC5zdGF0X3RhYmxlIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLnN0YXRfdGFibGUgdGQge1xuICB3aWR0aDogNTZweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLnN0YXRfdGFibGUgLm9kZCB0ZCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG4jR2FtZVNob3dDb250ZW50IC5zdGF0X3RhYmxlIC50b3RhbHMge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQubmV4dGdlbiB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xufVxuI0dhbWVTaG93Q29udGVudC5uZXh0Z2VuICNyYXBpZFRhYnMge1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLlN0YXRXaWRnZXRDb2x1bW46bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgcGFkZGluZy1yaWdodDogN3B4O1xuICB9XG4gIC5TdGF0V2lkZ2V0Q29sdW1uOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDdweDtcbiAgICAucGxheWVyX3N0YXRzLWxpc3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbiNHYW1lU2hvd1Njb3JlYm9hcmRTaW1wbGUge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuZ2FtZV9pbmZvX2Jhcl92MiB7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3RhdF90YWJsZSAudGVhbSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuLmdhbWVfaW5mb19iYXJfdjIge1xuICBmb250OiA2MDAgMTJweC8xNHB4ICRmb250VHdvO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG4gIC5kYXRlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5zdGF0dXMge1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLyogU2ltcGxlciBTY29yZWJvYXJkICovXG4jR2FtZVNob3dDb250ZW50IHNwYW4ucGl0Y2hlcl9yZWNvcmRfc3RhdHMge1xuICBjb2xvcjogI0ZGMDAwMDtcbn1cblxuXG4vKiBHYW1lIE5vdGVzICovXG4uZ2FtZVNob3cgI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgaDEge1xuICBmb250LXNpemU6IDMycHg7XG59XG4jR2FtZVNob3dDb250ZW50IC5nYW1lX25vdGVzIGgyIHtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoMyB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgaDQge1xuICBmb250LXNpemU6IDE2cHg7XG59XG4jR2FtZVNob3dDb250ZW50IC5nYW1lX25vdGVzIGg1IHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBoNiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgcCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xufVxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyB1bCwgI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBvbCB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgbGkge1xuICBsaXN0LXN0eWxlOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMTUwJTtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgLmdhbWVfbm90ZXMgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuI0dhbWVTaG93Q29udGVudCAuZ2FtZV9ub3RlcyBibG9ja3F1b3RlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNjY2M7XG59XG4jR2FtZVNob3dDb250ZW50IC5nYW1lX25vdGVzIGhyIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG59XG5cbi8vIE5FVyBBUyBPRiBTRVBURU1CRVIgMjAxNS5cbi8vIEFCT1ZFIENPREUgTkVFRFMgVE8gQkUgUkVGQUNUT1JFRCBBTkQgQ09ORVZFUlRFRCBJTiBUTyBTQVNTLlxuLy8gQ09OU0lERVIgQlJFQUtJTkcgVVAgSU5UTyBNVUxUSVBMRSBGSUxFU1xuLlN0YXRXaWRnZXRHcm91cENvbnRhaW5lci5nYW1lX3ByZXZpZXctaGVhZGVyIHtcbiAgLlN0YXRXaWRnZXRDb250YWluZXItc3ViIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLlN0YXRXaWRnZXRDb250YWluZXItc3ViOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gICAgYm90dG9tOjdweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA0OSU7XG4gIH1cbiAgLlN0YXRXaWRnZXRDb250YWluZXItc3ViOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgICBib3R0b206N3B4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA0OSU7XG4gIH1cbn1cbiIsIi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vLyBTQ09SRUJPQVJEIC8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuLyogRklFTEQgUE9TSVRJT04gKi9cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCBsaS5kb3duIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvbGktZG93bi5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IHdpZHRoOiAxOHB4OyB9XG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgbGkudG9nbyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL2xpLXRvZ28ucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyB3aWR0aDogMzBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLmJhbGxvbiB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL2xpLWJhbGxvbi5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IG1hcmdpbi1yaWdodDogNXB4OyB3aWR0aDogMzBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLmRkLXN0YXJ0IHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvZGQtc3RhcnQucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyB3aWR0aDogMjBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLmRkLWVuZCB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL2RkLWVuZC5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IHdpZHRoOiAyMnB4OyB9XG5cbi8qIFBPU1NFU1NJT04gKi9cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAuYXdheV90ZWFtIC5wb3NzZXNzaW9uLmFjdGl2ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC02MXB4OyB9XG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLmhvbWVfdGVhbSAucG9zc2Vzc2lvbi5hY3RpdmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IC02MXB4OyB9XG5cbi8qIFRJTUUgT1VUUyAqL1xuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0F3YXkgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc2NvcmVib2FyZC9iZy10aW1lb3V0cy1hd2F5LnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogNThweDsgbGVmdDogMTUwcHg7IHdpZHRoOiAxNDhweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc2NvcmVib2FyZC9iZy10aW1lb3V0cy1ob21lLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogNThweDsgcmlnaHQ6IDE1MHB4OyB3aWR0aDogMTQ4cHg7IH1cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcgeyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc2NvcmVib2FyZC90aW1lb3V0cy5wbmdcIikgbm8tcmVwZWF0IDAgLTFweDsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogNTBweDsgbGVmdDogMjJweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDExcHg7IHdpZHRoOiAxMDBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUgLnRpbWVvdXRzLXJlbWFpbmluZyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgLTEwMHB4IC0xcHg7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDUwcHg7IHJpZ2h0OiAtMjVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDExcHg7IHdpZHRoOiAxMDBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0F3YXkgLnRpbWVvdXRzLXJlbWFpbmluZy56ZXJvIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC0xcHg7IH1cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcuemVybyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgLTEwMHB4IC0xcHg7IH1cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcub25lIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC01MXB4OyB9XG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nLm9uZSB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgLTEwMHB4IC01MXB4OyB9XG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLnR3byB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgMCAtMTAxcHg7IH1cbmJvZHkuZm9vdGJhbGwgI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcudHdvIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAtMTAwcHggLTEwMXB4OyB9XG5ib2R5LmZvb3RiYWxsICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLnRocmVlIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMucG5nXCIpIG5vLXJlcGVhdCAwIC0xNTBweDsgfVxuYm9keS5mb290YmFsbCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUgLnRpbWVvdXRzLXJlbWFpbmluZy50aHJlZSB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLnBuZ1wiKSBuby1yZXBlYXQgLTEwMHB4IC0xNTBweDsgfVxuXG4vKi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8vLyBQTEFZIEJZIFBMQVkgLy8vLy8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyovXG5cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWZpbHRlcnMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4yNSk7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiA1cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDVweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDVweCA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LXN0YXJ0X3BlcmlvZCB7XG4gIGJhY2tncm91bmQ6ICNjY2M7IC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYigyMDQsMjA0LDIwNCksIDAlLCByZ2IoMjI5LDIyOSwyMjkpIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2IoMjA0LDIwNCwyMDQpKSwgY29sb3Itc3RvcCgxMDAlLHJnYigyMjksMjI5LDIyOSkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiKDIwNCwyMDQsMjA0KSAwJSxyZ2IoMjI5LDIyOSwyMjkpIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2IoMjA0LDIwNCwyMDQpIDAlLHJnYigyMjksMjI5LDIyOSkgMTAwJSk7IC8qIE9wZXJhMTEuMTArICovXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2IoMjA0LDIwNCwyMDQpIDAlLHJnYigyMjksMjI5LDIyOSkgMTAwJSk7IC8qIElFMTArICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYigyMDQsMjA0LDIwNCkgMCUscmdiKDIyOSwyMjksMjI5KSAxMDAlKTsgLyogVzNDICovXG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4IDVweCAwcHggMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweCA1cHggMHB4IDBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwcHggMHB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5wbGF5X2J5X3BsYXktY2Fycm90IHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL2NhcnJvdC1wZXJpb2Qtc3RhcnQucG5nXCIpIG5vLXJlcGVhdCA1MCUgdG9wOyBjbGVhcjogbGVmdDsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogNXB4OyBtYXJnaW46IDAgYXV0bzsgd2lkdGg6IDEwMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgdWwucGxheV9ieV9wbGF5LWZpbHRlcnMgbGkgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogM2VtOyBsaW5lLWhlaWdodDogM2VtOyBwYWRkaW5nOiAwIDAgMCAxMHB4OyB9XG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1maWx0ZXJzIGxpLnNpbmdsZV9wbGF5ZXIgeyBmbG9hdDogcmlnaHQ7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiNHYW1lU2hvd0NvbnRlbnQgdGFibGUucGxheV9ieV9wbGF5IHsgd2lkdGg6IDEwMCU7IH1cbiNHYW1lU2hvd0NvbnRlbnQgdGFibGUucGxheV9ieV9wbGF5IHRoIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4jR2FtZVNob3dDb250ZW50IHRhYmxlLnBsYXlfYnlfcGxheSB0ZCB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjY2NjO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHBhZGRpbmc6IDVweCAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4jR2FtZVNob3dDb250ZW50IHRhYmxlLnBsYXlfYnlfcGxheSB0ci5wb3NzZXNzaW9uU3RhcnQgdGQgeyBwYWRkaW5nOiAwOyB9XG4jR2FtZVNob3dDb250ZW50IHRhYmxlLnBsYXlfYnlfcGxheSB0ci5jb2x1bW5IZWFkZXJzIHRoIHtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDAgMnB4O1xufVxudGFibGUucGxheV9ieV9wbGF5IC5wbGF5LWljb24geyB3aWR0aDo0MnB4OyBoZWlnaHQ6MzBweDsgfVxudGFibGUucGxheV9ieV9wbGF5IC5wbGF5LWRvd25BbmREaXN0YW5jZSxcbnRhYmxlLnBsYXlfYnlfcGxheSAucGxheS1iYWxsT24sXG50YWJsZS5wbGF5X2J5X3BsYXkgLnBsYXktZ2FtZUNsb2NrIHsgd2lkdGg6IDU1cHg7IH1cbnRhYmxlLnBsYXlfYnlfcGxheSAucGxheS1wbGF5RGV0YWlscyB7IHdpZHRoOiBhdXRvOyB9XG5cbnRhYmxlLnBsYXlfYnlfcGxheSB0ci50b3VjaGRvd24gLnBsYXktaWNvbiB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9wbGF5X2ljb24tdGQucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG50YWJsZS5wbGF5X2J5X3BsYXkgdHIubWFkZV9maWVsZF9nb2FsIC5wbGF5LWljb24geyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheV9pY29uLWZnLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTsgfVxudGFibGUucGxheV9ieV9wbGF5IHRyLmNvbnZlcnNpb25fc3VjY2VzcyAucGxheS1pY29uIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3BsYXlfaWNvbi0ycC5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IH1cbnRhYmxlLnBsYXlfYnlfcGxheSB0ci5zYWZldHkgLnBsYXktaWNvbiB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9nYW1lX3Nob3dfMy9wbGF5X2ljb24tc2YucG5nXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG50YWJsZS5wbGF5X2J5X3BsYXkgdHIuZXh0cmFfcG9pbnRfbWFkZSAucGxheS1pY29uIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2dhbWVfc2hvd18zL3BsYXlfaWNvbi14cC5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IH1cblxuI0dhbWVTaG93Q29udGVudCB1bC5wbGF5X2J5X3BsYXktZHJpdmUtaGVhZGVyIHtcbiAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1kcml2ZS1oZWFkZXIgbGkge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1kcml2ZS1oZWFkZXIgbGkuZHJpdmUtc3RhcnQsXG4jR2FtZVNob3dDb250ZW50IHVsLnBsYXlfYnlfcGxheS1kcml2ZS1oZWFkZXIgbGkuZHJpdmUtc3VtbWFyeSAge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvcGxheV9ieV9wbGF5LWFycm93LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCA1MCU7XG4gIHRleHQtaW5kZW50OiA0cHg7XG59XG5cbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vIEZJRUxEIE9GIFBMQVkgLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuYm9keS5mb290YmFsbCAjRk9QIHtcbiAgcGFkZGluZzo1MHB4IDE2cHggMDtcbiAgbWFyZ2luOi01MHB4IDAgMDtcbiAgaGVpZ2h0OjQyNXB4O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApIDAlLCByZ2JhKDAsMCwwLDAuMSkgMTAlLCByZ2JhKDAsMCwwLDAuMikgMzIlLCByZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDAsMCwwLDApKSwgY29sb3Itc3RvcCgxMCUscmdiYSgwLDAsMCwwLjEpKSwgY29sb3Itc3RvcCgzMiUscmdiYSgwLDAsMCwwLjIpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMCwwLDAsMCkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuMSkgMTAlLHJnYmEoMCwwLDAsMC4yKSAzMiUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuMSkgMTAlLHJnYmEoMCwwLDAsMC4yKSAzMiUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogT3BlcmExMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjEpIDEwJSxyZ2JhKDAsMCwwLDAuMikgMzIlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIElFMTArICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDAwMDAnLCBlbmRDb2xvcnN0cj0nIzAwMDAwMDAwJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4xKSAxMCUscmdiYSgwLDAsMCwwLjIpIDMyJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBXM0MgKi9cbiAgei1pbmRleDogMTAwO1xuICBjbGVhcjogYm90aDtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZmllbGQge1xuICBwYWRkaW5nOjAgOC4yJTtcbiAgaGVpZ2h0OjQwMHB4O1xuICBiYWNrZ3JvdW5kOiMwNjA7XG4gIGJvcmRlcjo2cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luOjA7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBvdmVyZmxvdzp2aXNpYmxlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjY5OTIxOSkgMHB4IDZweCA4cHggLTRweDtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjY5OTIxOSkgMHB4IDZweCA4cHggLTRweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAxMDAwbXMgZWFzZS1pbi1vdXQ7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgLmluX2JvdW5kcyB7IHBvc2l0aW9uOnJlbGF0aXZlOyBoZWlnaHQ6MTAwJTsgd2lkdGg6MTAwJTsgb3ZlcmZsb3c6dmlzaWJsZTsgfVxuYm9keS5mb290YmFsbCAjRk9QIC5saW5lX29mX3NjcmltbWFnZSxcbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZmlyc3RfZG93bl9saW5lIHsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0Oi0xMDAwcHg7IHdpZHRoOjNweDsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQ6IzRCRjsgei1pbmRleDozOyBtYXJnaW4tbGVmdDotMXB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgLmZpcnN0X2Rvd25fbGluZSB7IGJhY2tncm91bmQ6I0ZDMDsgfVxuYm9keS5mb290YmFsbCAjRk9QIC5ncmFzcyB7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDoxMDAlO1xuICBkaXNwbGF5OmJsb2NrO1xuICBtYXJnaW46MDtcbn1cbi8qIFlhcmQgTGluZXMgKi9cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMge1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzowO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIGxlZnQ6MDtcbiAgaGVpZ2h0OjEwMCU7XG4gIHdpZHRoOjEwMCU7XG4gIGxpc3Qtc3R5bGU6bm9uZTtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkge1xuICBvcGFjaXR5Oi43O1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIGJvdHRvbTowO1xuICB3aWR0aDoxcHg7XG4gIGhlaWdodDoxMDAlO1xuICB6LWluZGV4OjI7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl81eWQgeyBib3JkZXItbGVmdDoxcHggc29saWQgI0ZGRjsgfVxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaTpudGgtY2hpbGQoMTBuKzYpIHtcbiAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICNGRkY7XG4gIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuMik7XG4gIHdpZHRoOjUlO1xuICB6LWluZGV4OjE7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl81eWQgc3BhbiB7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNGRkY7XG4gIGNvbG9yOiNGRkY7XG4gIGZvbnQ6Ym9sZCAxNnB4IFwiQXJpYWwgQmxhY2tcIixzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzo1cHg7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6NDAlO1xuICBib3R0b206NDAlO1xuICBoZWlnaHQ6MjAlO1xuICBtYXJnaW4tbGVmdDotMnB4O1xuICB3aWR0aDozcHg7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkuXzV5ZCBzcGFuIHNwYW4geyBib3JkZXI6bm9uZTsgdG9wOmF1dG87IGJvdHRvbTotMTcwJTsgaGVpZ2h0OmF1dG87IG1hcmdpbi1sZWZ0OjA7IHRleHQtaW5kZW50Oi0xMnB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLl81eWQgc3BhbiBzcGFuICsgc3BhbiB7XG4gIHRvcDotMTcwJTtcbiAgYm90dG9tOmF1dG87XG4gIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xufVxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5fMXlkLFxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5fMXlkIHNwYW4geyBiYWNrZ3JvdW5kOm5vbmU7IGhlaWdodDoyMCU7IHRvcDo0MCU7IG1hcmdpbi10b3A6LTJweDsgYm9yZGVyLXRvcDozcHggc29saWQgI0ZGRjsgYm9yZGVyLWJvdHRvbTozcHggc29saWQgI0ZGRjsgfVxuYm9keS5mb290YmFsbCAjRk9QIHVsLnlhcmRsaW5lcyBsaS5fMXlkIHNwYW4geyB3aWR0aDoxcHg7IGhlaWdodDphdXRvOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi0yMDAlOyBib3R0b206LTIwMCU7IG1hcmdpbjotMXB4IDAgMXB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLmZpcnN0IHNwYW4gc3BhbiB7IHRleHQtaW5kZW50OjJweDsgYm9yZGVyOm5vbmU7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkuZmlyc3Qgc3BhbiBzcGFuICsgc3BhbiB7IHRleHQtaW5kZW50Oi0xMnB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgdWwueWFyZGxpbmVzIGxpLmxhc3QgeyBtYXJnaW4tbGVmdDotMXB4OyB9IC8qIEcgKi9cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkubGFzdCBzcGFuIHsgbGVmdDphdXRvOyByaWdodDowOyBib3JkZXI6bm9uZTsgdGV4dC1pbmRlbnQ6LTE1cHg7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCB1bC55YXJkbGluZXMgbGkubGFzdCBzcGFuIHNwYW4gKyBzcGFuIHsgdGV4dC1pbmRlbnQ6NXB4OyB9XG4vKiBFbmQgWm9uZSAqL1xuYm9keS5mb290YmFsbCAjRk9QIC5lbmR6b25lIHtcbiAgZGlzcGxheTpibG9jaztcbiAgd2lkdGg6OC4zMzMlO1xuICBoZWlnaHQ6MTAwJTtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHJpZ2h0OjA7XG4gIHRvcDowO1xuICBvdmVyZmxvdzpoaWRkZW47XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgLmVuZHpvbmUgaW1nIHtcbiAgZGlzcGxheTpibG9jaztcbiAgd2lkdGg6MTAwJTtcbiAgaGVpZ2h0OjEwMCU7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgLmVuZHpvbmUgc3BhbiB7XG4gIGZvbnQ6Ym9sZCAzMHB4IFwiQXJpYWwgQmxhY2tcIixWZXJkYW5hLHNhbnMtc2VyaWY7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIC8qdG9wOjUwJTsqL1xuICB0b3A6MDtcbiAgbGVmdDo1MCU7XG4gIC8qbWFyZ2luOi0yNXB4IDAgMCAtMjAwcHg7Ki9cbiAgbWFyZ2luOjAgMCAwIC0yNXB4O1xuICBsaW5lLWhlaWdodDo1MHB4O1xuICBsZXR0ZXItc3BhY2luZzoxcHg7XG4gIGNvbG9yOiNGRkY7XG4gIHdpZHRoOjQwMHB4O1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMTc1cHgsIDE3NXB4KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMTc1cHgsIDE3NXB4KTtcbiAgLW1vei10cmFuc2Zvcm06cm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMTc1cHgsIDE3NXB4KTtcbiAgLW8tdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDE3NXB4LCAxNzVweCk7XG4gIC1tcy10cmFuc2Zvcm06cm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMTc1cHgsIDE3NXB4KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKTtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZW5kem9uZTpmaXJzdC1jaGlsZCB7XG4gIGxlZnQ6MDtcbiAgcmlnaHQ6YXV0bztcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuZW5kem9uZTpmaXJzdC1jaGlsZCBzcGFuIHtcbiAgdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtMTc1cHgsIC0xNzVweCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtMTc1cHgsIC0xNzVweCk7XG4gIC1tb3otdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtMTc1cHgsIC0xNzVweCk7XG4gIC1vLXRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoLTE3NXB4LCAtMTc1cHgpO1xuICAtbXMtdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcgdHJhbnNsYXRlKC0xNzVweCwgLTE3NXB4KSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249Myk7XG59XG4vKi8vLy8vLy8gUGxheSBTdHJpbmcgLy8vLy8vLy8vLyovXG5ib2R5LmZvb3RiYWxsICNGT1AgLnBsYXlTdHJpbmdDb250YWluZXIge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIGxlZnQ6NTAlO1xuICB3aWR0aDoyMzBweDtcbiAgcGFkZGluZzowIDUwcHggMjBweDtcbiAgaGVpZ2h0OjcwcHg7XG4gIGxpbmUtaGVpZ2h0OjYwcHg7XG4gIG1hcmdpbi1sZWZ0Oi0xNjVweDtcbiAgb3BhY2l0eTouNjtcbiAgei1pbmRleDo1O1xuICBiYWNrZ3JvdW5kOnVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2Zvb3RiYWxsL2ZpZWxkX29mX3BsYXlfbmF2LnBuZ1wiKSAwIC0xNTBweCBuby1yZXBlYXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UtaW4tb3V0O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnBsYXlTdHJpbmdDb250YWluZXI6aG92ZXIsXG5ib2R5LmZvb3RiYWxsICNGT1Audmlld18zZCAucGxheVN0cmluZ0NvbnRhaW5lciB7IG9wYWNpdHk6MTsgfVxuYm9keS5mb290YmFsbCAjRk9QIC5wbGF5U3RyaW5nIHtcbiAgY3Vyc29yOmRlZmF1bHQ7XG4gIGNvbG9yOiNEREQ7XG4gIHdpZHRoOjEwMCU7XG4gIGxpbmUtaGVpZ2h0OjEuMmVtO1xuICBkaXNwbGF5OmlubGluZS1ibG9jazsgem9vbToxOyAqZGlzcGxheTppbmxpbmU7XG4gIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcbiAgcGFkZGluZzo1cHggMDtcbn1cblxuLyovLy8vLy8vLy8vIFBMQVkgTkFWSUdBVElPTiBCVVRUT05TIC8vLy8vLy8vLy8qL1xuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMge1xuICB6LWluZGV4OjU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOjI1cHg7XG4gIGxlZnQ6NTAlO1xuICB3aWR0aDo0MDBweDtcbiAgbWFyZ2luLWxlZnQ6LTIwMHB4O1xuICBvcGFjaXR5Oi42O1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjY1KSA1MCUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSxyZ2JhKDAsMCwwLDApKSwgY29sb3Itc3RvcCg1MCUscmdiYSgwLDAsMCwwLjY1KSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDAsMCwwLDApKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC42NSkgNTAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC42NSkgNTAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIE9wZXJhMTEuMTArICovXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuNjUpIDUwJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBJRTEwKyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjY1KSA1MCUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogVzNDICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xufVxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnM6aG92ZXIge1xuICBvcGFjaXR5OjE7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyBkaXYge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICB6b29tOjE7ICpkaXNwbGF5OmlubGluZTtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOjAgLThweDtcbiAgYmFja2dyb3VuZDp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb290YmFsbC9maWVsZF9vZl9wbGF5X25hdi5wbmdcIikgMCAxMDAwcHggbm8tcmVwZWF0O1xuICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjUGxheU5hdmlnYXRpb25CdXR0b25zIC5wcmV2RHJpdmUgeyBwYWRkaW5nLXRvcDo1MHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMHB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dERyaXZlIHsgcGFkZGluZy10b3A6NTBweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTEwcHg7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjUGxheU5hdmlnYXRpb25CdXR0b25zIC5wcmV2UGxheSB7IHBhZGRpbmctdG9wOjYwcHg7IGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IC01cHg7IHotaW5kZXg6MjsgfVxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLm5leHRQbGF5IHsgcGFkZGluZy10b3A6NjBweDsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MHB4IC01cHg7IHotaW5kZXg6MjsgfVxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLmxhdGVzdFBsYXkgeyBwYWRkaW5nLXRvcDo3MHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggMDsgbWFyZ2luOjAgLTEycHg7IHotaW5kZXg6MzsgfVxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZEcml2ZTphY3RpdmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dERyaXZlOmFjdGl2ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtODBweDsgfVxuYm9keS5mb290YmFsbCAjRk9QICNQbGF5TmF2aWdhdGlvbkJ1dHRvbnMgLnByZXZQbGF5OmFjdGl2ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IC03NXB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubmV4dFBsYXk6YWN0aXZlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MHB4IC03NXB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI1BsYXlOYXZpZ2F0aW9uQnV0dG9ucyAubGF0ZXN0UGxheTphY3RpdmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTcwcHg7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRk9QYnV0dG9ucyB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6NzBweDtcbiAgcmlnaHQ6MjBweDtcbiAgb3BhY2l0eTouNDtcbiAgei1pbmRleDo1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLWluLW91dDtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRk9QYnV0dG9ucyBkaXYge1xuICBjdXJzb3I6cG9pbnRlcjtcbiAgd2lkdGg6NTBweDtcbiAgaGVpZ2h0OjA7XG4gIHBhZGRpbmctdG9wOjM1cHg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgYmFja2dyb3VuZDp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb290YmFsbC9maWVsZF9vZl9wbGF5X25hdi5wbmdcIikgMCAxMDAwcHggbm8tcmVwZWF0O1xufVxuYm9keS5mb290YmFsbCAjRk9QICNGT1BidXR0b25zOmhvdmVyIHsgb3BhY2l0eToxOyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZPUGJ1dHRvbnMgLnZpZXdUb2dnbGUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOi0zMDBweCAtMnB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZPUGJ1dHRvbnMgLnZpZXdUb2dnbGU6YWN0aXZlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMzAwcHggLTM2cHg7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRmllbGRPZlBsYXkudmlld18zZCAjRk9QYnV0dG9ucyAudmlld1RvZ2dsZSB7IGJhY2tncm91bmQtcG9zaXRpb246LTMwMHB4IC03MHB4OyB9XG5ib2R5LmZvb3RiYWxsICNGT1AgI0ZpZWxkT2ZQbGF5LnZpZXdfM2QgI0ZPUGJ1dHRvbnMgLnZpZXdUb2dnbGU6YWN0aXZlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMzAwcHggLTEwNHB4OyB9XG5cbi8qLy8vLy8vLy8vLy8gRFJJVkVTIC8vLy8vLy8vLy8vKi9cbmJvZHkuZm9vdGJhbGwgI0ZPUCAjRHJpdmVzQ29udGFpbmVyIHtcbiAgei1pbmRleDo0O1xuICBoZWlnaHQ6NDAwcHg7XG4gIHdpZHRoOjEwMCU7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjIpO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xufVxuYm9keS5mb290YmFsbCAjRk9QICNEcml2ZXMge1xuICBoZWlnaHQ6MTAwJTtcbiAgdG9wOjQwMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OnZpc2libGU7XG59XG5cbi8qLy8vLy8vLy8vLyBJTkRJVklEVUFMIFBMQVkgTEVOR1RIUyAvLy8vLy8vLy8vKi9cblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMDAge1xuICBib2R5LmZvb3RiYWxsICNGT1AgLnlkcyN7JGl9IHtcbiAgICB3aWR0aDogJGkgKiAxJTtcbiAgfVxufVxuXG4vKi8vLy8vLy8vLy8gVEVBTSBDT0xPUlMgLy8vLy8vLy8vLyovXG5cbi5ob21lVGVhbSxcbi5hd2F5VGVhbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG59XG5cbi8qLy8vLy8vLy8vLyBEUklWRSBCQVJTIGFrYSBHUk9VUCBPRiBQTEFZUyAvLy8vLy8vLy8vKi9cblxuYm9keS5mb290YmFsbCAjRk9QIC5kcml2ZUNvbnRhaW5lciB7XG4gIGZsb2F0OmxlZnQ7XG4gIHBhZGRpbmc6MTBweCA4LjIlO1xuICB3aWR0aDo4My42JTtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBtYXJnaW46M3B4IDA7XG59XG5cbmJvZHkuZm9vdGJhbGwgI0ZPUCAucGxheSB7XG4gcG9zaXRpb246cmVsYXRpdmU7XG4gaGVpZ2h0OjE1cHg7XG4gbWFyZ2luOjNweCAwO1xuIG92ZXJmbG93OnZpc2libGU7XG4gZGlzcGxheTogbm9uZTtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC5iYXIgeyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgfVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLmRyaXZlQmFyIHtcbiBwb3NpdGlvbjpyZWxhdGl2ZTtcbiBoZWlnaHQ6MTVweDtcbiBiYWNrZ3JvdW5kOnVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy91dGlscy9ibGFjay0zMC5wbmdcIik7XG4gYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4zKTtcbiBwYWRkaW5nOjk5OTlweCAzMHB4O1xuIG1hcmdpbjotOTk5OXB4IC0zMHB4O1xuIGN1cnNvcjpwb2ludGVyO1xufVxuYm9keS5mb290YmFsbCAjRk9QIC5jdXJyZW50IC5kcml2ZUJhciB7XG4gIGN1cnNvcjpkZWZhdWx0O1xuICBoZWlnaHQ6MDtcbiAgbWFyZ2luLWJvdHRvbTogLTEwMDAycHg7XG59XG5ib2R5LmZvb3RiYWxsICNGT1AgLmN1cnJlbnQgLmRyaXZlQmFyICogeyBkaXNwbGF5Om5vbmU7IH1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAuY3VycmVudCAuZHJpdmVCYXIgLnRlYW1sb2dvIHsgZGlzcGxheTpibG9jazsgfVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLmRyaXZlQmFyIC5iYXIsXG5ib2R5LmZvb3RiYWxsICNGT1AgLnBsYXkgLmJhciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjI5Mjk2OSkgMHB4IDFweCA2cHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwcHggLTJweCAxMHB4IC02cHggaW5zZXQ7XG4gIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjI5Mjk2OSkgMHB4IDFweCA2cHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwcHggLTJweCAxMHB4IC02cHggaW5zZXQ7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yOTI5NjkpIDBweCAxcHggNnB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMHB4IC0ycHggMTBweCAtNnB4IGluc2V0O1xuICBjdXJzb3I6cG9pbnRlcjtcbn1cbmJvZHkuZm9vdGJhbGwgI0ZPUCAucGxheS5jdXJyZW50IC5iYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9mb290YmFsbC9wbGF5X2Jhci5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjsgLyogZmlyc3QgdHdvIHJ1bGVzIGFyZSBmb3IgSUUgNy05ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjQpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDAuMikgNTAlLCByZ2JhKDAsMCwwLDAuMikgNTElLCByZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuNCkpLCBjb2xvci1zdG9wKDUwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuMikpLCBjb2xvci1zdG9wKDUxJSxyZ2JhKDAsMCwwLDAuMikpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgwLDAsMCwwKSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDAuNCkgMCUscmdiYSgyNTUsMjU1LDI1NSwwLjIpIDUwJSxyZ2JhKDAsMCwwLDAuMikgNTElLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC40KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuMikgNTAlLHJnYmEoMCwwLDAsMC4yKSA1MSUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogT3BlcmExMS4xMCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC40KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuMikgNTAlLHJnYmEoMCwwLDAsMC4yKSA1MSUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogSUUxMCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjQpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSA1MCUscmdiYSgwLDAsMCwwLjIpIDUxJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBXM0MgKi9cbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDI1NSwyNTUsMjU1LCAwLjYpIDBweCAycHggMTBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDBweCAtMnB4IDEwcHggMnB4IGluc2V0O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMjU1LDI1NSwyNTUsIDAuNikgMHB4IDJweCAxMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMHB4IC0ycHggMTBweCAycHggaW5zZXQ7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjU1LDI1NSwyNTUsIDAuNikgMHB4IDJweCAxMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMHB4IC0ycHggMTBweCAycHggaW5zZXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgZGl2LnBsYXkgZGl2Lmljb25fcmlnaHQge1xuICB3aWR0aDoxMnB4O1xuICBoZWlnaHQ6MTVweDtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDowO1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9kcml2ZWJhci9hcnJvdy1yaWdodC5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IHRvcDtcbiAgbGVmdDoxMDAlO1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgZGl2LmRyaXZlQmFyIGRpdi5pY29uX3JpZ2h0IHtcbiAgd2lkdGg6MTJweDtcbiAgaGVpZ2h0OjE1cHg7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9kcml2ZWJhci9hcnJvdy1yaWdodC5wbmdcIikgbm8tcmVwZWF0O1xuICByaWdodDoxNXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgZGl2LnBsYXkgZGl2Lmljb25fbGVmdCB7XG4gIHdpZHRoOjEycHg7XG4gIGhlaWdodDoxNXB4O1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvZHJpdmViYXIvYXJyb3ctbGVmdC5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IHRvcDtcbiAgbGVmdDotMTVweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIGRpdi5kcml2ZUJhciBkaXYuaWNvbl9sZWZ0IHtcbiAgd2lkdGg6MTJweDtcbiAgaGVpZ2h0OjE1cHg7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9kcml2ZWJhci9hcnJvdy1sZWZ0LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGxlZnQ6MThweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC50ZWFtbG9nbyB7XG4gIHdpZHRoOjIwcHg7XG4gIGhlaWdodDoxNXB4O1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjk5OTlweDtcbn1cblxuYm9keS5mb290YmFsbCAjRk9QIC50ZWFtbG9nby5hd2F5VGVhbSB7XG4gIGxlZnQ6NXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLnRlYW1sb2dvLmhvbWVUZWFtIHtcbiAgcmlnaHQ6NXB4O1xufVxuXG5ib2R5LmZvb3RiYWxsICNGT1AgLmRyaXZlQ29udGFpbmVyLmN1cnJlbnQuZXhwYW5kZWQgZGl2LnBsYXksXG5ib2R5LmZvb3RiYWxsICNGT1AgLmRyaXZlQ29udGFpbmVyLmN1cnJlbnQuZXhwYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyovLy8vLy8vLy8vIFBFUlNQRUNUSVZFIC8vLy8vLy8vLy8vLyovXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmZvb3RiYWxsICNGT1Audmlld18zZCAuZmllbGQge1xuICAvKiByaWdodCBub3csIG9ubHkgd2Via2l0IHN1cHBvcnRzIDNkICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg2MDApIHJvdGF0ZVgoMzVkZWcpIHRyYW5zbGF0ZTNkKDAsLTEwMnB4LC04MHB4KTtcbiAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDYwMCkgcm90YXRlWCgzNWRlZykgdHJhbnNsYXRlM2QoMCwtMTAycHgsLTgwcHgpO1xuICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDYwMCkgcm90YXRlWCgzNWRlZykgdHJhbnNsYXRlM2QoMCwtMTAycHgsLTgwcHgpO1xuICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg2MDApIHJvdGF0ZVgoMzVkZWcpIHRyYW5zbGF0ZTNkKDAsLTEwMnB4LC04MHB4KTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg2MDApIHJvdGF0ZVgoMzVkZWcpIHRyYW5zbGF0ZTNkKDAsLTEwMnB4LC04MHB4KTtcbn1cbi8qIFdlIG5lZWQgdG8gdGVtcG9yYXJpbHkgcmVtb3ZlIDNkIHRyYW5zZm9ybXMgd2hlbiBjYWxjdWxhdGluZyBwb3NpdGlvbmluZyBmb3Igc2Nyb2xsaW5nICovXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmZvb3RiYWxsICNGT1AgLm5vVHJhbnNmb3JtIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5mb290YmFsbCAjRk9QIC5ub1RyYW5zaXRpb24ge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLyogUmVtb3ZlIHdoZW4gY3VycmVudCBwbGF5IGlzIHJlYWR5ICovXG5ib2R5LmhvY2tleWlzaCAjRk9QIC5jdXJyZW50X3BsYXkgeyBkaXNwbGF5Om5vbmU7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXlfYXJlYSB7IG1hcmdpbi10b3A6MCAhaW1wb3J0YW50OyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QLnZpZXdfM2QgLnBsYXlfYXJlYSB7IG1hcmdpbi10b3A6LTgwcHggIWltcG9ydGFudDsgfVxuXG4vKiBSZW1vdmUgd2hlbiBQb3dlciBQbGF5cyBzdGF0dXMgaXMgaW1wbGVtZW50ZWQgKi9cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnBvc3Nlc3Npb24geyBkaXNwbGF5OiBub25lOyB9XG5cbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vIFNDT1JFQk9BUkQgLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuLyogU0hPVFMgT04gR09BTCAqL1xuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCBsaS5zb2cgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvc2NvcmVib2FyZC9saS1zb2cucG5nXCIpOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlOyBtYXJnaW46IDAgMTBweDsgdGV4dC1hbGlnbjogY2VudGVyOyB3aWR0aDogNTBweDsgfVxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCBsaS5zb2cgc3BhbiB7IGZvbnQtc2l6ZTogMjBweDsgfVxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCBsaS5zb2cgZGl2LnNvZyB7IGNvbG9yOiAjZmZmOyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMjZweDsgbGluZS1oZWlnaHQ6IDI2cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDI0cHg7ICB9XG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIGxpLnNvZyBkaXYubG9nby1taW5pIHsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7IGRpc3BsYXk6IGJsb2NrOyBmbG9hdDogbGVmdDsgaGVpZ2h0OiAxNnB4OyB3aWR0aDogMTZweDsgbWFyZ2luOiA1cHg7IH1cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgbGkuc29nIGRpdi5sb2dvLW1pbmkgYSB7IGJvcmRlcjogbm9uZTsgYmFja2dyb3VuZC1zaXplOiAxNnB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7IGhlaWdodDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi8qIFBPU1NFU1NJT04gLyBQT1dFUiBQTEFZICovXG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIC5hd2F5X3RlYW0gLnBvc2Vzc2lvbiAucHAgeyBiYWNrZ3JvdW5kOiBub25lIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIC5ob21lX3RlYW0gLnBvc2Vzc2lvbiAucHAgeyBiYWNrZ3JvdW5kOiBub25lIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG5cbi8qIFRJTUUgT1VUUyAqL1xuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvYmctdGltZW91dHMtYXdheS5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IGRpc3BsYXk6IG5vbmU7IGhlaWdodDogNzZweDsgbGVmdDogMTEwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgd2lkdGg6IDE2NHB4OyB6LWluZGV4OiAxMTM7IH0gLyogU3dpdGNoIHRvIGRpc3BsYXk6YmxvY2sgd2hlbiBpbXBsZW1lbnRlZCAqL1xuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvYmctdGltZW91dHMtaG9tZS5wbmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IGRpc3BsYXk6IG5vbmU7IGhlaWdodDogNzZweDsgcmlnaHQ6IDExMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IHdpZHRoOiAxNjRweDsgei1pbmRleDogMTEzOyB9IC8qIFN3aXRjaCB0byBkaXNwbGF5OmJsb2NrIHdoZW4gaW1wbGVtZW50ZWQgKi9cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nIHsgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL3Njb3JlYm9hcmQvdGltZW91dHMtaG9ja2V5LnBuZ1wiKSBuby1yZXBlYXQgMjVweCAtMXB4OyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiA1MHB4OyBsZWZ0OiAyNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogMjNweDsgd2lkdGg6IDEwMHB4OyB9XG5ib2R5LmhvY2tleWlzaCAjR2FtZVNob3dTY29yZWJvYXJkIC50aW1lb3V0c0hvbWUgLnRpbWVvdXRzLXJlbWFpbmluZyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IC03NXB4IC0xcHg7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDUwcHg7IHJpZ2h0OiAtMzVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDIzcHg7IHdpZHRoOiAxMDBweDsgfVxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNBd2F5IC50aW1lb3V0cy1yZW1haW5pbmcuemVybyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IDI1cHggLTFweDsgfVxuYm9keS5ob2NrZXlpc2ggI0dhbWVTaG93U2NvcmVib2FyZCAudGltZW91dHNIb21lIC50aW1lb3V0cy1yZW1haW5pbmcuemVybyB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IC03NXB4IC0xcHg7IH1cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzQXdheSAudGltZW91dHMtcmVtYWluaW5nLm9uZSB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IDI1cHggLTUxcHg7IH1cbmJvZHkuaG9ja2V5aXNoICNHYW1lU2hvd1Njb3JlYm9hcmQgLnRpbWVvdXRzSG9tZSAudGltZW91dHMtcmVtYWluaW5nLm9uZSB7IGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9zY29yZWJvYXJkL3RpbWVvdXRzLWhvY2tleS5wbmdcIikgbm8tcmVwZWF0IC03NXB4IC01MXB4OyB9XG5cbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLy8vIEZJRUxEIE9GIFBMQVkgLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuLyovLy8vLy8vLy8vIFRJTUVMSU5FIFNMSURFUiAvLy8vLy8vLy8vLy8qL1xuXG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTEwcHg7XG4gIG1hcmdpbjogLTYwcHggLTI1cHggNzBweDtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRvcDo2OHB4O1xuICB6LWluZGV4OjEwMTtcbn1cbiNGT1AtdGltZWxpbmUge1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xuICBib3JkZXItdG9wOnNvbGlkIDFweCAjMDAwO1xuICBib3JkZXItYm90dG9tOnNvbGlkIDFweCAjNjY2OyAgaGVpZ2h0OiA2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOjZweCAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI0ZPUC10aW1lbGluZSAudWktc2xpZGVyLWhhbmRsZSB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2hvY2tleWlzaC9zbGlkZXItaGFuZGxlLnBuZ1wiKSBuby1yZXBlYXQgNTAlIGJvdHRvbTtcbiAgYm90dG9tOi02cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDM1cHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAzMHB4O1xuICB6LWluZGV4OiAxMDtcbn1cbiNGT1AtdGltZWxpbmUgLnVpLXNsaWRlci1oYW5kbGUubGVmdCB7XG4gIG1hcmdpbi1sZWZ0Oi0zMHB4O1xufVxuI0ZPUC10aW1lbGluZSAudWktc3RhdGUtZm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG4jRk9QLXRpbWVsaW5lIC51aS1zbGlkZXItcmFuZ2UgIHsgYmFja2dyb3VuZDogIzZjNjAyZDsgaGVpZ2h0OiAxMDAlOyBtYXJnaW46IDA7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuI0ZPUC10aW1lbGluZSAudWktc2xpZGVyLXBhdHRlcm4geyBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9ob2NrZXlpc2gvc2xpZGVyLXBhdHRlcm4ucG5nXCIpIHJlcGVhdC14IDUwJTsgaGVpZ2h0OjEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IH1cbiNGT1AtdGltZWxpbmUgLnVpLXNsaWRlci1wYXR0ZXJuOmJlZm9yZSB7IGNvbnRlbnQ6dXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaG9ja2V5aXNoL3NsaWRlci1ncm9vdmVzLnBuZ1wiKTsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6LTNweDsgbGVmdDotNzBweDsgfVxuI0ZPUC10aW1lbGluZSAudWktc2xpZGVyLXBhdHRlcm46YWZ0ZXIgeyBjb250ZW50OnVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2hvY2tleWlzaC9zbGlkZXItZ3Jvb3Zlcy5wbmdcIik7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOi0zcHg7IHJpZ2h0Oi03MHB4OyB9XG4jRk9QLXRpbWVsaW5lIC5pbnRlcnZhbCB7XG4gIGJhY2tncm91bmQ6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2hvY2tleWlzaC9pbnRlcnZhbC1kaXZpZGVyLnBuZ1wiKSBuby1yZXBlYXQgNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzJTtcbiAgdG9wOiAtMXB4O1xuICB6LWluZGV4OiA1O1xuICB9XG4vKi8gVGltZSBNYXJrZXJzIC8qL1xuI0ZPUC10aW1lbGluZS1zdGFydCxcbiNGT1AtdGltZWxpbmUtc3RvcCAge1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOjA7XG4gIHBhZGRpbmc6IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogLTMwcHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuI0ZPUC10aW1lbGluZS1zdGFydCB7IG1hcmdpbi1sZWZ0OjhweDsgfVxuLnVpLXNsaWRlci1oYW5kbGUubGVmdCAuYXJyb3csXG4udWktc2xpZGVyLWhhbmRsZS5yaWdodCAuYXJyb3cge1xuICBib3JkZXItY29sb3I6ICNjY2MgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwcHg7XG4gIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0zMHB4O1xuICB3aWR0aDogMHB4O1xufVxuLnVpLXNsaWRlci1oYW5kbGUucmlnaHQgLmFycm93IHsgbWFyZ2luLWxlZnQ6MTJweDsgfVxuXG4vKi8vLy8vLy8vLy8gUExBWSBNQVJLRVJTIC8vLy8vLy8vLy8vLyovXG4jRk9QLXRpbWVsaW5lLW1hcmtlcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMThweDtcbiAgbWFyZ2luOjAgMTAwcHg7XG4gIHBhZGRpbmctdG9wOjE1cHg7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKi8vLy8vLy8vLy8gRklMVEVSUyAvLy8vLy8vLy8vLy8qL1xuI0ZPUC10aW1lbGluZS1maWx0ZXJzIHtcbiAgaGVpZ2h0OiA1MXB4O1xuICBsaW5lLWhlaWdodDogMzFweDtcbiAgbWFyZ2luOi0yMXB4IDUwcHggMDtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIHBhZGRpbmctdG9wOjIxcHg7XG59XG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgZGl2IHsgbWFyZ2luOmF1dG87IG92ZXJmbG93OiBoaWRkZW47IHdpZHRoOiBhdXRvOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7fVxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIHNwYW4uZmlsdGVycyxcbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IGF1dG87XG59XG5cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBzcGFuLmZpbHRlcnMge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjI1KTtcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGNvbG9yOiAjY2NjO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOjFweCBzb2xpZCAjY2NjO1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgbGFiZWwuZGVzZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG4gIGNvbG9yOiAjNzc3O1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgbGFiZWwuZGVzZWxlY3RlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjNDQ0O1xufVxuXG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgbGFiZWwgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbC5ob21lVGVhbSBzcGFuLFxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsLmF3YXlUZWFtIHNwYW4ge1xuICBoZWlnaHQ6IDI2cHg7XG59XG4jRk9QLXRpbWVsaW5lLWZpbHRlcnMgbGFiZWwgc3Bhbi5maWx0ZXJJY29uIHtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGxhYmVsLmhvbWVUZWFtIHNwYW4gYSxcbiNGT1AtdGltZWxpbmUtZmlsdGVycyBsYWJlbC5hd2F5VGVhbSBzcGFuIGEge1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5cHg7XG59XG5cbi8qLy8vLy8vLyBUSU1FTElORSBDQVBTIC8vLy8vLy8vKi9cbiNGT1AtdGltZWxpbmUtY29udGFpbmVyIC5jYXAge1xuICBkaXNwbGF5OmJsb2NrO1xuICBoZWlnaHQ6MTAwJTtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDowO1xuICB3aWR0aDo4NHB4O1xufVxuI0ZPUC10aW1lbGluZS1jb250YWluZXIgLmNhcC5sZWZ0IHtcbiAgbGVmdDotNXB4O1xufVxuI0ZPUC10aW1lbGluZS1jb250YWluZXIgLmNhcC5yaWdodCB7XG4gIHJpZ2h0Oi05cHg7XG59XG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciAuY2FwIHNwYW4ge1xuICBkaXNwbGF5OmJsb2NrO1xuICBoZWlnaHQ6MzBweDtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHdpZHRoOjgwcHg7XG59XG4jRk9QLXRpbWVsaW5lLWNvbnRhaW5lciAuY2FwLnJpZ2h0IHNwYW4ge1xuICByaWdodDowO1xufVxuXG4vKi8vLy8vLy8vLy8gUExBWSBBUkVBIC8vLy8vLy8vLy8vLyovXG5ib2R5LmhvY2tleWlzaCAjRk9QIGEgeyB0ZXh0LWRlY29yYXRpb246bm9uZTsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCB7XG4gIHBhZGRpbmc6IDI0cHggMTZweCAwO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMC4xKSAxMCUsIHJnYmEoMCwwLDAsMC4yKSAzMiUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLHJnYmEoMCwwLDAsMCkpLCBjb2xvci1zdG9wKDEwJSxyZ2JhKDAsMCwwLDAuMSkpLCBjb2xvci1zdG9wKDMyJSxyZ2JhKDAsMCwwLDAuMikpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgwLDAsMCwwKSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4xKSAxMCUscmdiYSgwLDAsMCwwLjIpIDMyJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4xKSAxMCUscmdiYSgwLDAsMCwwLjIpIDMyJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBPcGVyYTExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuMSkgMTAlLHJnYmEoMCwwLDAsMC4yKSAzMiUscmdiYSgwLDAsMCwwKSAxMDAlKTsgLyogSUUxMCsgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwMDAnLEdyYWRpZW50VHlwZT0wICk7IC8qIElFNi05ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjEpIDEwJSxyZ2JhKDAsMCwwLDAuMikgMzIlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIFczQyAqL1xuICB6LWluZGV4OiAxMDA7XG4gIGNsZWFyOiBib3RoO1xufVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheV9hcmVhIHtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGhlaWdodDo0NTJweDtcbiAgbWFyZ2luOjgwcHggMCAwIDA7XG4gIG1hcmdpbjowOyAvKiB0ZW1wIHVudGlsIGN1cnJlbnQgcGxheSBpcyBhZGRlZCAqL1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuNjk5MjE5KSAwcHggNnB4IDhweCAtNHB4O1xuICAtbW96LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC42OTkyMTkpIDBweCA2cHggOHB4IC00cHg7XG59XG5ib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5cyxcbmJvZHkuaG9ja2V5aXNoICNGT1AgLnRleHR1cmUyLFxuYm9keS5ob2NrZXlpc2ggI0ZPUCAudGV4dHVyZTEgeyBoZWlnaHQ6MTAwJTsgd2lkdGg6MTAwJTsgb3ZlcmZsb3c6dmlzaWJsZTsgcG9zaXRpb246IGFic29sdXRlOyB6LWluZGV4OjE7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowOyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5cyB7IHotaW5kZXg6MzsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAudGV4dHVyZTIgeyB6LWluZGV4OjI7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgLnNwb25zb3IgeyBkaXNwbGF5Om5vbmU7IH1cblxuLyovLy8vLy8vLy8vIEhPQ0tFWSBQTEFZIElDT05TIC8vLy8vLy8vLy8vLyovXG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5nb2FsIGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L2dvYWwucG5nXCIpOyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5zaG90IGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3Nob3QucG5nXCIpOyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5zaG90b25nb2FsIGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3Nob3QucG5nXCIpOyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5zaG90b2ZmdGFyZ2V0IGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9sYWNyb3NzZS9taXNzZWQtc2hvdC5wbmdcIik7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLmJsb2NrZWRzaG90IGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L2Jsb2NrLnBuZ1wiKTsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24ucGVuYWx0eSBiIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9wZW5hbHR5LnBuZ1wiKTsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24uaGl0IGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L2hpdC5wbmdcIik7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLmZhY2VvZmYgYiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvZmFjZW9mZi5wbmdcIik7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLmxvb3NlYmFsbCBiIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvbGFjcm9zc2UvbG9vc2UtYmFsbC5wbmdcIik7IH1cbmJvZHkuaG9ja2V5aXNoICNGT1AgI25vX2xvY2F0aW9uLnR1cm5vdmVyIGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3R1cm5vdmVyLnBuZ1wiKTsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24uZ29hbGllY2hhbmdlIGIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L2dvYWxpZS1jaGFuZ2UucG5nXCIpOyB9XG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbi5nb2FsIGIgeyBwYWRkaW5nLWxlZnQ6MzBweDsgfVxuYm9keS5ob2NrZXlpc2ggI0ZPUCAjbm9fbG9jYXRpb24ge1xuICBwYWRkaW5nOjEwcHg7XG4gIGJvcmRlcjoxcHggc29saWQgIzY2NjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwuMyk7XG4gIC1tb3otYm94LXNoYWRvdzowIDJweCAxMHB4IHJnYmEoMCwwLDAsLjMpO1xuICBib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwuMyk7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB6LWluZGV4OjEwO1xuICB0b3A6NDUlO1xuICB3aWR0aDoyMDBweDtcbiAgbGVmdDo1MCU7XG4gIG1hcmdpbi1sZWZ0Oi0xMTBweDtcbiAgYm9yZGVyLXJhZGl1czo2cHg7XG4gIGRpc3BsYXk6bm9uZTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIG9wYWNpdHk6Ljg7XG59XG5ib2R5LmhvY2tleWlzaCAjRk9QICNub19sb2NhdGlvbiBiIHsgcGFkZGluZzo1cHggMCA1cHggMjFweDsgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOmxlZnQgY2VudGVyOyB9XG5cbi8qLy8vLy8vLy8vLyBQRVJTUEVDVElWRSAvLy8vLy8vLy8vLy8qL1xuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDcwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlOiA3MDBweDtcbiAgLW8tcGVyc3BlY3RpdmU6IDcwMDtcbiAgLW1zLXBlcnNwZWN0aXZlOiA3MDA7XG4gIHBlcnNwZWN0aXZlOiA3MDA7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkubmV3IC5zaGFkb3cge1xuICBvcGFjaXR5OjA7XG59XG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5X2FyZWEsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5zaGFkb3cge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheV9hcmVhIHtcbiAgbWFyZ2luOjAgMCAtMTMwcHg7XG4gIG1hcmdpbjotODBweCAwIC0xMzBweDsgLyogdGVtcCB1bnRpbCBjdXJyZW50IHBsYXkgaXMgYWRkZWQgKi9cbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCg1MGRlZykgc2NhbGUoLjkpIHRyYW5zbGF0ZTNkKDAsLTE1MHB4LC01MHB4KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoNTBkZWcpIHNjYWxlKC45KSB0cmFuc2xhdGUzZCgwLC0xNTBweCwtNTBweCk7IFxuICB0cmFuc2Zvcm06IHJvdGF0ZVgoNTBkZWcpIHNjYWxlKC45KSB0cmFuc2xhdGUzZCgwLC0xNTBweCwtNTBweCk7XG59XG5cbi8qLy8vLy8vLy8vLyBGT1AgUE9QIFVQUyAvLy8vLy8vLy8vLy8qL1xuLk5HSU5fdGlwLmhvY2tleWlzaF9mb3BfcG9wdXAgLmNvbnRhaW5lciB7IG92ZXJmbG93OnZpc2libGU7IH1cbi5ob2NrZXlpc2hfZm9wX3BvcHVwIC5OR0lOX3RpcCAuY2xvc2VfdGlwIHtcbiAgZm9udDoxMXB4IGJvbGQgVmVyZGFuYSwgQXJpYWwsIHNhbnMtZXJzaWY7XG4gIGN1cnNvcjpwb2ludGVyO1xuICBkaXNwbGF5OmJsb2NrO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOi02cHg7XG4gIHJpZ2h0Oi02cHg7XG4gIHdpZHRoOjEycHg7XG4gIGhlaWdodDoxMnB4O1xuICBib3JkZXI6MnB4IHNvbGlkICNGRkY7XG4gIGJhY2tncm91bmQ6IzExMTtcbiAgY29sb3I6I0ZGRjtcbiAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OjEwcHg7XG4gIC1tb3otYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMCwwLDAsLjI1KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MTBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOjEwcHg7XG4gIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uaG9ja2V5aXNoX2ZvcF9wb3B1cCAuY2xvc2VfdGlwIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiAtMTBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG4uZm9wUG9wVXAge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvZGlhZ29uYWxfc3RyaXBlcy5wbmdcIikgbGVmdCBib3R0b207XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgwLDAsMCwuMjUpO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwwLDAsLjI1KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMjBweCAwO1xuICB3aWR0aDogMTIwcHg7XG59XG4uZm9wUG9wVXAuZXhwYW5kZWQgeyB3aWR0aDogMzUwcHg7IG1hcmdpbi1sZWZ0Oi0xMTVweDsgfVxuLmZvcFBvcFVwIC5jYXJyb3QtdG9wLFxuLmZvcFBvcFVwIC5jYXJyb3QtYm90dG9tIHtcbiAgYm9yZGVyLXdpZHRoOjA7XG4gIGJvcmRlci1zdHlsZTpzb2xpZDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgZGlzcGxheTpibG9jaztcbiAgaGVpZ2h0OiAwcHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDA7XG59XG4uZm9wUG9wVXAgLmNhcnJvdC10b3AgeyBib3JkZXItYm90dG9tLWNvbG9yOnRyYW5zcGFyZW50OyB9XG4uZm9wUG9wVXAgLmNhcnJvdC1ib3R0b20geyBib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50OyB9XG4uZm9wUG9wVXAgLnBsYXllck5hbWUgLmNhcnJvdC1ib3R0b20geyBib3JkZXItd2lkdGg6MnB4IDRweCA0cHggNHB4OyB9XG5cbi8qLy8vLy8gUGxheSBEZXRhaWxzIC8vLy8vKi9cbi5mb3BQb3BVcCAucGxheUluZm8ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZ2FtZV9zaG93XzMvc3RhdF9jb21wYXJpc29uLXNoaW5lLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6MCA0cHggMCA3cHg7XG4gIGhlaWdodDoyOHB4O1xuICBsaW5lLWhlaWdodDozMHB4O1xufVxuLmZvcFBvcFVwIC5wbGF5SW5mbyAucGxheVR5cGUgeyBmb250LXNpemU6IDE4cHg7IH1cbi5mb3BQb3BVcCAudGltZVN0YW1wIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmZmO1xuICBmbG9hdDpyaWdodDtcbiAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgbWFyZ2luOjdweCAwIDAgMDtcbiAgdGV4dC1hbGlnbjpsZWZ0O1xufVxuLmZvcFBvcFVwIC50aW1lU3RhbXAgLmludGVydmFsLFxuLmZvcFBvcFVwIC50aW1lU3RhbXAgLmNsb2NrIHsgZm9udC1zaXplOiA4cHg7IGxpbmUtaGVpZ2h0OiA4cHg7IH1cbi5mb3BQb3BVcCAudGltZVN0YW1wIC5pbnRlcnZhbCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4uZm9wUG9wVXAgLmJhY2tUb1BsYXkge1xuICBoZWlnaHQ6MDtcbiAgYmFja2dyb3VuZDojRUVFO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjowO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTRweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBtYXJnaW46IDAgM3B4IDAgLTNweDtcbiAgLXdlYmtpdC1zaGFkb3c6aW5zZXQgMCAtMXB4IDVweCAycHggcmdiYSgyNTUsMjU1LDI1NSwuMyksIGluc2V0IDAgMHB4IDVweCByZ2JhKDAsMCwwLC4zKTtcbiAgLW1vei1ib3gtc2hhZG93Omluc2V0IDAgLTFweCA1cHggMnB4IHJnYmEoMjU1LDI1NSwyNTUsLjMpLCBpbnNldCAwIDBweCA1cHggcmdiYSgwLDAsMCwuMyk7XG4gIGJveC1zaGFkb3c6aW5zZXQgMCAtMXB4IDVweCAycHggcmdiYSgyNTUsMjU1LDI1NSwuMyksIGluc2V0IDAgMHB4IDVweCByZ2JhKDAsMCwwLC4zKTtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIGZvbnQ6OXB4IG5vcm1hbCAkZm9udE9uZTtcbiAgbGluZS1oZWlnaHQ6MTFweDtcbn1cbi5mb3BQb3BVcCAuYmFja1RvUGxheTpob3ZlciB7IGJhY2tncm91bmQ6IzMzMzsgfVxuLmZvcFBvcFVwIC5iYWNrVG9QbGF5IHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kOiB1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L2JhY2tUb1BsYXkucG5nXCIpIC0ycHggMnB4IG5vLXJlcGVhdDtcbiAgcGFkZGluZy1sZWZ0OjE4cHg7XG59XG5cbi8qIFR3by1QbGF5ZXIgUG9wdXBzICovXG4uZm9wUG9wVXAudHdvLXBsYXllciB7IHdpZHRoOjI0N3B4OyB9XG4uZm9wUG9wVXAudHdvLXBsYXllci5leHBhbmRlZCB7IHdpZHRoOjM1MHB4OyBtYXJnaW4tbGVmdDotNTFweDsgfVxuLmZvcFBvcFVwLkZhY2VvZmYgLndpbm5lciB7IGJhY2tncm91bmQ6dXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9mYWNlT2ZmLXdvbi5wbmdcIikgbm8tcmVwZWF0IDUwJTsgZmxvYXQ6bGVmdDsgaGVpZ2h0OjI2cHg7IHdpZHRoOjQ1cHg7IH1cbi5mb3BQb3BVcC5GYWNlb2ZmIC5wbGF5SW5mbyB7IHRleHQtYWxpZ246Y2VudGVyOyB9XG5cbi8qIFBMQVlFUiBDQVJEICovXG4uZm9wUG9wVXAgLnBsYXllckNhcmQge1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCAxMXB4IDExcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDExcHggMTFweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDExcHggMTFweDtcbiAgbWFyZ2luOjAgLTZweCAtNnB4O1xuICBib3JkZXI6NnB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci10b3A6bm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJGFzc2V0X3BhdGhfZm9yK1wiL2FwcF9pbWFnZXMvZmllbGRfb2ZfcGxheS9pY2VfaG9ja2V5L3BsYXllckRldGFpbHMtYmcucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgZmxvYXQ6bGVmdDtcbiAgLyogcmVxdWlyZWQgZm9yIGFuaW1hdGlvbiAqL1xuICBoZWlnaHQ6NzhweDtcbiAgd2lkdGg6MTIwcHg7XG59XG4uZm9wUG9wVXAgLnBsYXllckNhcmQgKyAucGxheWVyQ2FyZCB7IG1hcmdpbi1sZWZ0OjFweDsgbWFyZ2luLXJpZ2h0Oi01MCU7IH1cbi5mb3BQb3BVcCAucGxheWVyQ2FyZC5jb2xsYXBzZWQgKyAucGxheWVyQ2FyZCB7IG1hcmdpbi1sZWZ0Oi02cHg7IH1cbi5mb3BQb3BVcCAucGxheWVyQ2FyZCA+IC5wbGF5ZXJOYW1lIHtcbiAgY29sb3I6IzIyMjtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIGZvbnQtc2l6ZToxMnB4O1xuICBsaW5lLWhlaWdodDoxMnB4O1xuICBiYWNrZ3JvdW5kOiNGRkY7XG4gIGhlaWdodDoxOHB4O1xuICBwYWRkaW5nOjZweCA2cHggMDtcbiAgbWFyZ2luOjAgLTZweDtcbn1cbi5mb3BQb3BVcCAucGxheWVySW5mbyB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTFweCAxMXB4IDAgMDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMXB4IDExcHggMCAwO1xuICBib3JkZXItcmFkaXVzOiAxMXB4IDExcHggMCAwO1xuICBtYXJnaW46LTZweDtcbiAgYm9yZGVyOjZweCBzb2xpZCAjRkZGO1xuICBib3JkZXItYm90dG9tOm5vbmU7XG4gIHBhZGRpbmc6IDdweCA3cHggNnB4O1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xuICBsaW5lLWhlaWdodDoyMHB4O1xuICBtaW4td2lkdGg6MTA2cHg7XG4gIGhlaWdodDo0MXB4O1xufVxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvID4gLnBsYXllck5hbWUge1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDowO1xuICB0ZXh0LWFsaWduOmxlZnQ7XG4gIHRleHQtaW5kZW50OjdweDtcbn1cbi5mb3BQb3BVcCAucGxheWVySW5mbyA+IC5wbGF5ZXJOYW1lIC5maXJzdE5hbWUgeyBkaXNwbGF5OmJsb2NrOyBmb250LXNpemU6IDE2cHg7IH1cbi5mb3BQb3BVcCAucGxheWVySW5mbyA+IC5wbGF5ZXJOYW1lIC5sYXN0TmFtZSB7IGRpc3BsYXk6YmxvY2s7IGZvbnQtc2l6ZTogMjZweDsgfVxuLmZvcFBvcFVwIC5wbGF5ZXJQaG90byB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZDogIzY2NiBub25lIGNlbnRlciBjZW50ZXI7XG59XG4uZm9wUG9wVXAgLnBsYXllckluZm8gLnRlYW1Mb2dvLXNtYWxsIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgYm9yZGVyOm5vbmU7IH1cbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyTnVtYmVyIHtcbiAgZm9udC1zaXplOjUzcHg7XG4gIGxpbmUtaGVpZ2h0OjQzcHg7XG4gIGhlaWdodDo0MHB4O1xuICB0ZXh0LWluZGVudDotNTBweDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xuICBmbG9hdDpyaWdodDtcbiAgb3BhY2l0eTouNTtcbn1cbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyU3BlY3Mge1xuICBmb250LXNpemU6MTZweDtcbiAgbGluZS1oZWlnaHQ6MTZweDtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgd2lkdGg6YXV0bztcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHRvcDo0cHg7XG59XG4uZm9wUG9wVXAgLnBsYXllckluZm8gLnBsYXllclNwZWNzLnNtYWxsIHsgd2lkdGg6NjBweDsgbWFyZ2luOjAgMCAwIGF1dG87IH1cbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyU3BlY3MubGFyZ2Uge1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xuICBkaXNwbGF5Om5vbmU7XG59XG5cbi8qIEdhbWUgU3RhdHMgKi9cbi5mb3BQb3BVcCAucGxheWVyU3RhdHMge1xuICBoZWlnaHQ6MDtcbn1cbi5mb3BQb3BVcCAucGxheWVyU3RhdExpbmUge1xuICBwYWRkaW5nOjdweCA3cHggMDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIHdoaXRlLXNwYWNlOm5vd3JhcDtcbn1cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4zKTtcbiAgd2lkdGg6IDc0JTtcbn1cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCB0YWJsZSB7IGZvbnQtZmFtaWx5OiAkZm9udE9uZTsgZm9udC1zaXplOjEycHg7IHdpZHRoOjEwMCU7IH1cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCB0ZCB7IHBhZGRpbmc6MCAxMHB4IDAgMDsgY29sb3I6I0ZGRjsgd2hpdGUtc3BhY2U6bm93cmFwOyB9XG4uZm9wUG9wVXAgLmdhbWVTdGF0c0xpc3QgdGQuZ2FtZVN0YXRzIHsgcGFkZGluZzowOyB3aWR0aDoxJTsgfVxuLmZvcFBvcFVwIC5nYW1lU3RhdHNMaXN0IHRkLmdhbWVTdGF0cyBzcGFuIHtcbiAgZGlzcGxheTpibG9jaztcbiAgYmFja2dyb3VuZDojMDAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgcGFkZGluZzowIDVweCAwIDEwcHg7XG59XG4uZm9wUG9wVXAgLmdhbWVTdGF0c0xpc3QgdGQuc2VwYXJhdG9yIHNwYW4ge1xuICBkaXNwbGF5OmJsb2NrO1xuICBoZWlnaHQ6MDtcbiAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDA7XG4gIGJvcmRlci13aWR0aDoxM3B4IDAgMTNweCA3cHg7XG4gIGJvcmRlci1zdHlsZTpzb2xpZDtcbn1cbi5mb3BQb3BVcCAuZ2FtZVN0YXRzTGlzdCAuc3RhdENhdGVnb3J5IHsgdmVydGljYWwtYWxpZ246bWlkZGxlOyB9XG4uZm9wUG9wVXAgLmdhbWVTdGF0c0xpc3QgLnNpbmdsZVN0YXQgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGZvbnQtc2l6ZToxOHB4OyB9XG4uZm9wUG9wVXAgLnByb2ZpbGVCdXR0b24ge1xuICB3aWR0aDoyNCU7XG4gIGZsb2F0OnJpZ2h0O1xuICBmb250LXNpemU6MTJweDtcbn1cbi5mb3BQb3BVcCAucHJvZmlsZUJ1dHRvbiBhIHtcbiAgbGluZS1oZWlnaHQ6MTNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9maWVsZF9vZl9wbGF5L2ljZV9ob2NrZXkvYnRuLW91dC5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6N3B4O1xuICBjb2xvcjojRkZGO1xufVxuLmZvcFBvcFVwIC5wcm9maWxlQnV0dG9uIGE6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7IGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNzUpOyB9XG5cbi8qIEdhbWUgUGxheXMgKi9cbi5mb3BQb3BVcCAuZ2FtZVBsYXlzIHtcbiAgY29sb3I6I0ZGRjtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBiYWNrZ3JvdW5kOiMxMTE7XG4gIG1hcmdpbi1ib3R0b206N3B4O1xufVxuLmZvcFBvcFVwIC5wbGF5TGlzdCB7XG4gIG1hcmdpbjowIDdweDtcbiAgaGVpZ2h0OjA7XG59XG4uZm9wUG9wVXAgLnRvdGFsUGxheXMgeyBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM2NjY7IGZvbnQtc2l6ZTogMTRweDsgcGFkZGluZzowIDhweCA0cHg7IH1cbi5mb3BQb3BVcCAuc2luZ2xlUGxheSB7IGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzY2NjsgZm9udC1zaXplOiAxNHB4OyBsaW5lLWhlaWdodDogMzBweDsgcGFkZGluZzogNXB4OyB9XG4uZm9wUG9wVXAgLnNpbmdsZVBsYXkgLnBsYXlUeXBlIHtcbiAgYmFja2dyb3VuZDogcmdiKDIwMCwzMiwzOSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXRfcGF0aF9mb3IrXCIvYXBwX2ltYWdlcy9ibGFjay5wbmdcIik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDkwcHg7XG59XG4uZm9wUG9wVXAgLnNpbmdsZVBsYXkgLnJvbGUgeyBtYXJnaW4tbGVmdDogMTBweDsgfVxuLmZvcFBvcFVwIC5zaW5nbGVQbGF5IC50aW1lIHsgZmxvYXQ6IHJpZ2h0OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLyovLy8vLy8vLy8vLyBFWFBBTkRFRCAvLy8vLy8vLy8vLyovXG5cbi5mb3BQb3BVcC5ub1RyYW5zaXRpb25zIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogVHJhbnNpdGlvbnMgKi9cbi5mb3BQb3BVcCxcbi5mb3BQb3BVcCAucGxheUluZm8sXG4uZm9wUG9wVXAgLnBsYXllckluZm8yLFxuLmZvcFBvcFVwIC5wbGF5ZXJJbmZvID4gLnBsYXllck5hbWUsXG4uZm9wUG9wVXAgLnBsYXllckluZm8gLnBsYXllck51bWJlcixcbi5mb3BQb3BVcCAucGxheWVyQ2FyZCxcbi5mb3BQb3BVcCAucGxheWVyQ2FyZCA+IC5wbGF5ZXJOYW1lLFxuLmZvcFBvcFVwIC5wbGF5ZXJTdGF0cyxcbi5mb3BQb3BVcCAuZ2FtZVBsYXlzLFxuLmZvcFBvcFVwIC5wbGF5TGlzdCxcbi5mb3BQb3BVcCAuYmFja1RvUGxheSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cblxuLyogSGlkZW4gV2hlbiBFeHBhbmRlZCAqL1xuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5SW5mbyxcbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVyQ2FyZCA+IC5wbGF5ZXJOYW1lIHtcbiAgaGVpZ2h0OjA7XG4gIHBhZGRpbmctdG9wOjA7XG4gIHBhZGRpbmctYm90dG9tOjA7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVySW5mbyAucGxheWVyU3BlY3Muc21hbGwgeyBkaXNwbGF5Om5vbmU7IH1cblxuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5ZXJDYXJkIHtcbiAgd2lkdGg6MzUwcHg7XG4gIGhlaWdodDoyNTVweDtcbn1cbi5mb3BQb3BVcCAucGxheWVyQ2FyZC5jb2xsYXBzZWQgeyB3aWR0aDowOyBoZWlnaHQ6MDsgfVxuXG4vKiBWaXNpYmxlIFdoZW4gRXhwYW5kZWQgKi9cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVyU3RhdHMgeyBoZWlnaHQ6IDQwcHg7IH1cbi5mb3BQb3BVcC5leHBhbmRlZCAuZ2FtZVBsYXlzIHsgaGVpZ2h0OmF1dG87IH1cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheUxpc3QgeyBoZWlnaHQ6MTQwcHg7IG92ZXJmbG93OmF1dG87IH1cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVySW5mbyAucGxheWVyU3BlY3MubGFyZ2UgeyBkaXNwbGF5OmJsb2NrOyB9XG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXllckluZm8gPiAucGxheWVyTmFtZSB7IHdpZHRoOjIwMHB4OyBtYXJnaW4tcmlnaHQ6LTIwMHB4OyB9XG4uZm9wUG9wVXAuZXhwYW5kZWQgLnBsYXllckluZm8gLnBsYXllck51bWJlciB7IHRleHQtaW5kZW50OjVweDsgfVxuLmZvcFBvcFVwLmV4cGFuZGVkIC5nYW1lUGxheXMgLmNhcnJvdC10b3AsXG4uZm9wUG9wVXAuZXhwYW5kZWQgLmdhbWVQbGF5cyAuY2Fycm90LWJvdHRvbSB7XG4gIGJvcmRlci13aWR0aDo1cHg7XG59XG4uZm9wUG9wVXAuZXhwYW5kZWQgLmJhY2tUb1BsYXkgeyBoZWlnaHQ6MTJweDsgfVxuXG4vKiBIT1ZFUiBTVEFURSAqL1xuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLmV4cGFuZGFibGU6aG92ZXIge1xuICBjdXJzb3I6cG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJek1pVWlJSE4wYjNBdFkyOXNiM0k5SWlOak5HTTBZelFpSUhOMGIzQXRiM0JoWTJsMGVUMGlNQ0l2UGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJMk55VWlJSE4wYjNBdFkyOXNiM0k5SWlObVpHWmtabVFpSUhOMGIzQXRiM0JoWTJsMGVUMGlNQzQwTmlJdlBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSTJPQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTm1abVptWm1ZaUlITjBiM0F0YjNCaFkybDBlVDBpTUM0eU15SXZQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0kyT1NVaUlITjBiM0F0WTI5c2IzSTlJaU5tWm1abVptWWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1DSXZQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l4TURBbElpQnpkRzl3TFdOdmJHOXlQU0lqWm1abVptWm1JaUJ6ZEc5d0xXOXdZV05wZEhrOUlqQXVNellpTHo0S0lDQThMMnhwYm1WaGNrZHlZV1JwWlc1MFBnb2dJRHh5WldOMElIZzlJakFpSUhrOUlqQWlJSGRwWkhSb1BTSXhJaUJvWldsbmFIUTlJakVpSUdacGJHdzlJblZ5YkNnalozSmhaQzExWTJkbkxXZGxibVZ5WVhSbFpDa2lJQzgrQ2p3dmMzWm5QZz09KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgxOTYsMTk2LDE5NiwwKSAzMiUsIHJnYmEoMjUzLDI1MywyNTMsMC40NikgNjclLCByZ2JhKDI1NSwyNTUsMjU1LDAuMjMpIDY4JSwgcmdiYSgyNTUsMjU1LDI1NSwwKSA2OSUsIHJnYmEoMjU1LDI1NSwyNTUsMC4zNikgMTAwJSk7IC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDMyJSxyZ2JhKDE5NiwxOTYsMTk2LDApKSwgY29sb3Itc3RvcCg2NyUscmdiYSgyNTMsMjUzLDI1MywwLjQ2KSksIGNvbG9yLXN0b3AoNjglLHJnYmEoMjU1LDI1NSwyNTUsMC4yMykpLCBjb2xvci1zdG9wKDY5JSxyZ2JhKDI1NSwyNTUsMjU1LDApKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMC4zNikpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMTk2LDE5NiwxOTYsMCkgMzIlLHJnYmEoMjUzLDI1MywyNTMsMC40NikgNjclLHJnYmEoMjU1LDI1NSwyNTUsMC4yMykgNjglLHJnYmEoMjU1LDI1NSwyNTUsMCkgNjklLHJnYmEoMjU1LDI1NSwyNTUsMC4zNikgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDE5NiwxOTYsMTk2LDApIDMyJSxyZ2JhKDI1MywyNTMsMjUzLDAuNDYpIDY3JSxyZ2JhKDI1NSwyNTUsMjU1LDAuMjMpIDY4JSxyZ2JhKDI1NSwyNTUsMjU1LDApIDY5JSxyZ2JhKDI1NSwyNTUsMjU1LDAuMzYpIDEwMCUpOyAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDE5NiwxOTYsMTk2LDApIDMyJSxyZ2JhKDI1MywyNTMsMjUzLDAuNDYpIDY3JSxyZ2JhKDI1NSwyNTUsMjU1LDAuMjMpIDY4JSxyZ2JhKDI1NSwyNTUsMjU1LDApIDY5JSxyZ2JhKDI1NSwyNTUsMjU1LDAuMzYpIDEwMCUpOyAvKiBJRTEwKyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgxOTYsMTk2LDE5NiwwKSAzMiUscmdiYSgyNTMsMjUzLDI1MywwLjQ2KSA2NyUscmdiYSgyNTUsMjU1LDI1NSwwLjIzKSA2OCUscmdiYSgyNTUsMjU1LDI1NSwwKSA2OSUscmdiYSgyNTUsMjU1LDI1NSwwLjM2KSAxMDAlKTsgLyogVzNDICovXG59XG4uZm9wUG9wVXAgLnBsYXllckNhcmQuZXhwYW5kYWJsZTpob3ZlciAucGxheWVySW5mbyB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDE1cHggMnB4IHJnYmEoMjU1LDI1NSwyNTUsLjYpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCAxNXB4IDJweCByZ2JhKDI1NSwyNTUsMjU1LC42KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDE1cHggMnB4IHJnYmEoMjU1LDI1NSwyNTUsLjYpO1xufVxuLmZvcFBvcFVwLmV4cGFuZGVkIC5wbGF5ZXJDYXJkLmV4cGFuZGFibGU6aG92ZXIge1xuICBjdXJzb3I6ZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2ZpZWxkX29mX3BsYXkvaWNlX2hvY2tleS9wbGF5ZXJEZXRhaWxzLWJnLnBuZ1wiKTtcbn1cbi5mb3BQb3BVcC5leHBhbmRlZCAucGxheWVyQ2FyZC5leHBhbmRhYmxlOmhvdmVyIC5wbGF5ZXJJbmZvIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vICMgU1ZHIGFuZCBtYXJrZXIgc3BlY2lmaWMgY3NzIFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDM1cHg7XG4gIC8vICMgSW5zdGFudCB0cmFuc2l0aW9uIG9uIHBsYXlzIChmb3IgaG92ZXIgYW5kIHN1Y2gpLlxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBtcyBsaW5lYXI7XG4gIC8vICMgVGhpcyBhZGp1c3RzIHRoZSB0cmFuc2xhdGlvbiB0byBtaWRwb2ludCBvZiB0aGUgcmFzdGVyaXplZCBzdmcuXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNy41cHgsMTVweCwxcHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE3LjVweCwxNXB4LDFweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE3LjVweCwxNXB4LDFweCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgYmFja2dyb3VuZDogdXJsKCRhc3NldF9wYXRoX2ZvcitcIi9hcHBfaW1hZ2VzL2xpdmUvaG9ja2V5X2ljb25fc2hhZG93LnBuZ1wiKSBib3R0b20gbm8tcmVwZWF0O1xufVxuXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAuc3ZnLXBpbiB7XG4gIGhlaWdodDogNDhweDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgNDhweCAwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgNDhweCAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDQ4cHggMDtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZTNkKDFweCwwLC0xNXB4KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoLTkwZGVnKSB0cmFuc2xhdGUzZCgxcHgsMCwtMTVweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZTNkKDFweCwwLC0xNXB4KTtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggLnN2Zy1waW4gc3ZnIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMzVweDtcbn1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggLnN2Zy1waW4gc3ZnIC5wb3NpdGlvbi1waW4ge1xuICBzdHJva2U6ICMwMDA7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoIC5zdmctcGluLmhvbWVUZWFtLCAuc3ZnLXBpbi5hd2F5VGVhbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBQbGF5IEFjdGlvbiBBY3RpdmF0aW9uIG9uIFNWRyAqL1xuYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheSB7IGN1cnNvcjpwb2ludGVyOyBkaXNwbGF5Om5vbmU7IH1cblxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggLnBsYXkgc3ZnIC5hY3Rpb24taWNvbiB7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbGw6ICNmZmY7XG4gIHN0cm9rZTogIzAwMDtcbn1cblxuI0ZPUC10aW1lbGluZS1maWx0ZXJzLFxuLmZvcFBvcFVwLFxuLmZvcFBvcFVwIC5wbGF5SW5mbyxcbi5mb3BQb3BVcCAucGxheWVySW5mbyxcbi5mb3BQb3BVcCAucGxheWVySW5mbzIsXG4uZm9wUG9wVXAgLnBsYXllckluZm8gPiAucGxheWVyTmFtZSxcbi5mb3BQb3BVcCAucGxheWVySW5mbyAucGxheWVyTnVtYmVyLFxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkLFxuLmZvcFBvcFVwIC5wbGF5ZXJDYXJkID4gLnBsYXllck5hbWUsXG4uZm9wUG9wVXAgLnBsYXllclN0YXRzLFxuLmZvcFBvcFVwIC5nYW1lUGxheXMsXG4uZm9wUG9wVXAgLnBsYXlMaXN0LFxuLmZvcFBvcFVwIC5iYWNrVG9QbGF5IHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkucGVuYWx0eSBzdmcgLnBlbmFsdHksXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LmhpdCBzdmcgLmhpdCxcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkuc2hvdCBzdmcgLnNob3QsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LmJsb2NrZWRzaG90IHN2ZyAuYmxvY2ssXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LmZhY2VvZmYgc3ZnIC5mYWNlb2ZmLFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheS50dXJub3ZlciBzdmcgLnR1cm5vdmVyLFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheS5nb2FsIHN2ZyAuZ29hbCB7XG4gIG9wYWNpdHk6IDEuMDtcbn1cblxuLy8jIGFuaW1hdGlvbnNcbmh0bWwuY3NzdHJhbnNmb3JtczNkIGJvZHkuaG9ja2V5aXNoICNGT1AgLnBsYXkubmV3IC5zdmctcGluIHtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwcHggMTAwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAxMDBweCAxMDBweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDBweCAxMDBweDtcbiAgb3BhY2l0eTowO1xufVxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheV9hcmVhLFxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheXMsXG5odG1sLmNzc3RyYW5zZm9ybXMzZCBib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuaHRtbC5jc3N0cmFuc2Zvcm1zM2QgYm9keS5ob2NrZXlpc2ggI0ZPUCAucGxheSAuc2hhZG93IHsgZGlzcGxheTpub25lOyB9XG4jRk9QLXRpbWVsaW5lLW1hcmtlcnMgLm1hcmtlci5maWx0ZXJfc2hvdy5zbGlkZXJfc2hvdy50ZWFtX3Nob3csXG5ib2R5LmhvY2tleWlzaCAjRk9QIC5wbGF5LmZpbHRlcl9zaG93LnNsaWRlcl9zaG93LnRlYW1fc2hvdyB7IGRpc3BsYXk6YmxvY2s7IH1cblxuLyogTUFSS0VSUyAqL1xuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYm90dG9tOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW4tbGVmdDogLTNweDtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgZGlzcGxheTpub25lO1xufVxuXG4jbGl2ZUdhbWVTaW1wbGU6aG92ZXIgLm1hcmtlciBzdmcsXG4jbGl2ZUdhbWVTaW1wbGUuZGltX3BsYXlzIC5tYXJrZXIgc3ZnLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlLmRpbV9wbGF5cyAucGxheSAuc3ZnLXBpbixcbmJvZHkuaG9ja2V5aXNoICNsaXZlR2FtZVNpbXBsZTpob3ZlciAucGxheSAuc3ZnLXBpbiB7IFxuICBvcGFjaXR5Oi4yOyBcbn1cbmJvZHkuaG9ja2V5aXNoICNsaXZlR2FtZVNpbXBsZS5kaW1fcGxheXMgLnBsYXkuYWN0aXZlIC5zdmctcGluLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlOmhvdmVyIC5wbGF5IC5zdmctcGluOmhvdmVyLFxuYm9keS5ob2NrZXlpc2ggI2xpdmVHYW1lU2ltcGxlLmRpbV9wbGF5cyAubWFya2VyLmFjdGl2ZSB7IFxuICBvcGFjaXR5OjE7IHotaW5kZXg6NDk5OyBcbn1cblxuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXI6aG92ZXIgc3ZnLFxuI0ZPUC10aW1lbGluZS1tYXJrZXJzIC5tYXJrZXIuYWN0aXZlIHN2ZyB7XG4gIG9wYWNpdHk6IDEuMDtcbn1cblxuLy8jIFRoZSBmb2xsb3dpbmcgZWZmZWN0aXZlbHkgaGlkZXMgdGhlICNGT1AgaW4gYWxsIE0kIGJyb3dzZXJzIHVwdG8gSUUxMSBcbiNsaXZlR2FtZVNpbXBsZS5uby1uZXN0ZWQtM2QtdHJhbnNmb3JtcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIkZ2FtZS1zbGlkZXItaGVpZ2h0OiA2M3B4O1xuJGdhbWUtc2xpZGVyLW1vbnRoLXdpZHRoOiAxN3B4O1xuXG4lZ2FtZXMtc2xpZGVyLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gIGJveC1zaGFkb3c6XG4gICAgMCAycHggJGxpbmstY29sb3IgaW5zZXQsXG4gICAgMCAtMnB4ICRsaW5rLWNvbG9yIGluc2V0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICogeyBjb2xvcjogI2ZmZjsgfVxufVxuXG4uZ2FtZXMtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICBtYXJnaW46IDVweCAwIDE1cHg7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICB1bCB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgICAmOmZpcnN0LWNoaWxkIGEgeyBib3JkZXItbGVmdC13aWR0aDogMnB4OyB9XG4gICAgJjpsYXN0LWNoaWxkIGEgeyBib3JkZXItcmlnaHQtd2lkdGg6IDJweDsgfVxuICAgICYuc2VsZWN0ZWQgYSB7IEBleHRlbmQgJWdhbWVzLXNsaWRlci1ob3ZlcjsgfVxuICB9XG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAycHggI2I1YjViNSBpbnNldCxcbiAgICAgIDAgLTJweCAjYjViNWI1IGluc2V0O1xuICAgIGJvcmRlci1jb2xvcjogI2I1YjViNTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMCAxcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRnYW1lLXNsaWRlci1oZWlnaHQ7XG4gICAgcGFkZGluZzogOXB4IDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZCAuMjVzLFxuICAgICAgYm9yZGVyIC4yNXMsXG4gICAgICBib3gtc2hhZG93IC4yNXMsXG4gICAgICBjb2xvciAuMjVzO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBiYWNrZ3JvdW5kIC4yNXMsXG4gICAgICBib3JkZXIgLjI1cyxcbiAgICAgIGJveC1zaGFkb3cgLjI1cyxcbiAgICAgIGNvbG9yIC4yNXM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogNTBweDtcblxuICAgICY6aG92ZXIgeyBAZXh0ZW5kICVnYW1lcy1zbGlkZXItaG92ZXI7IH1cbiAgfVxufVxuXG4uZ2FtZXMtc2xpZGVyLWlubmVyIHsgZGlzcGxheTogdGFibGU7IH1cblxuXG4uZ2FtZXMtc2xpZGVyLWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1sZWZ0OiAkZ2FtZS1zbGlkZXItbW9udGgtd2lkdGg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdhbWVzLXNsaWRlci1tb250aCB7XG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGhlaWdodDogJGdhbWUtc2xpZGVyLW1vbnRoLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJGdhbWUtc2xpZGVyLW1vbnRoLXdpZHRoIC0gMXB4O1xuICBwYWRkaW5nOiAxcHggMCAxcHggNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC13ZWJraXQtdHJhbnNmb3JtOlxuICAgIHJvdGF0ZXooLTkwZGVnKVxuICAgIHRyYW5zbGF0ZSgtMTAwJSwgLTEwMCUpO1xuICB0cmFuc2Zvcm06XG4gICAgcm90YXRleigtOTBkZWcpXG4gICAgdHJhbnNsYXRlKC0xMDAlLCAtMTAwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAkZ2FtZS1zbGlkZXItaGVpZ2h0O1xufVxuXG4uZ2FtZXMtc2xpZGVyLWRhdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBwYWRkaW5nOiA0cHggMDtcbn1cblxuLmdhbWVzLXNsaWRlci1kYXksXG4uZ2FtZXMtc2xpZGVyLWNvdW50LFxuLmdhbWVzLXNsaWRlci10aW1lLFxuLmdhbWVzLXNsaWRlci1vdXRjb21lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkZm9udFR3bztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IC43ZW07XG59XG5cbi5nYW1lcy1zbGlkZXItZGF5IHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZ2FtZXMtc2xpZGVyLWNvdW50LFxuLmdhbWVzLXNsaWRlci10aW1lIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmdhbWVzLXNsaWRlci1vdXRjb21lIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4iLCIkZ2FtZS1oZWFkZXItY3Jlc3Qtd2lkdGg6IDEwNnB4O1xuJGdhbWUtaGVhZGVyLXNwYWNpbmc6IDE1cHg7XG4kZ2FtZS1oZWFkZXItc2NvcmUtZm9udC1zaXplOiAzNnB4O1xuJGdhbWUtaGVhZGVyLXRpdGxlLWZvbnQtc2l6ZTogMTZweDtcbiRnYW1lLWhlYWRlci10ZWFtLWZvbnQtc2l6ZTogMjBweDtcbiRnYW1lLWhlYWRlci1hYmJyZXYtZm9udC1zaXplOiAxNHB4O1xuJGdhbWUtaGVhZGVyLXN0YXR1cy1mb250LXNpemU6IDE0cHg7XG4kZ2FtZS1oZWFkZXItY2VudGVyLXdpZHRoOiAxMWVtO1xuJGdhbWUtaGVhZGVyLXNtYWxsLXNwYWNpbmc6IDhweDtcblxuLmdhbWUtaGVhZGVyIHtcbiAgQGluY2x1ZGUgZmxleC1ib3gocm93KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQG1peGluIGdhbWUtaGVhZGVyLW1lZGl1bSB7XG4gICAgLnRlYW0tbmFtZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudGVhbS1hYmJyZXYgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50ZWFtLWNyZXN0IHsgQGluY2x1ZGUgZmxleCgwLCAxLCAkZ2FtZS1oZWFkZXItY3Jlc3Qtd2lkdGgpOyB9XG4gIH1cblxuICBAbWl4aW4gZ2FtZS1oZWFkZXItc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDM2JSArXG4gICAgICAjeyRnYW1lLWhlYWRlci1hYmJyZXYtZm9udC1zaXplfSArXG4gICAgICAjeyRnYW1lLWhlYWRlci1zbWFsbC1zcGFjaW5nfSk7XG5cbiAgICAmLmhhcy10aXRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYygzNiUgK1xuICAgICAgICAjeyRnYW1lLWhlYWRlci10aXRsZS1mb250LXNpemUgKiAxLjV9ICtcbiAgICAgICAgI3skZ2FtZS1oZWFkZXItYWJicmV2LWZvbnQtc2l6ZX0gK1xuICAgICAgICAjeyRnYW1lLWhlYWRlci1zbWFsbC1zcGFjaW5nfSk7XG4gICAgICAgIFxuICAgICAgICAudGVhbS1jcmVzdCB7IHRvcDogJGdhbWUtaGVhZGVyLXRpdGxlLWZvbnQtc2l6ZSAqIDEuNTsgfVxuICAgIH1cblxuICAgIC5nYW1lLWhlYWRlci1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgZmxleCgwLCAwLCAxMDAlKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnRlYW0tYWJicmV2IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAudGVhbS1uYW1lIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC50ZWFtLWNyZXN0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRnYW1lLWhlYWRlci1zbWFsbC1zcGFjaW5nIC8gMn0pO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICB+IC50ZWFtLWNyZXN0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdhbWUtdGl0bGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAkZ2FtZS1oZWFkZXItdGl0bGUtZm9udC1zaXplO1xuICAgIH1cblxuICAgIC5zY29yZXMge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJvdHRvbTogJGdhbWUtaGVhZGVyLXN0YXR1cy1mb250LXNpemUgKyAkZ2FtZS1oZWFkZXItc21hbGwtc3BhY2luZztcblxuICAgICAgLmhvbWUsXG4gICAgICAuYXdheSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skZ2FtZS1oZWFkZXItc21hbGwtc3BhY2luZyAvIDJ9KTtcbiAgICAgIH1cblxuICAgICAgLmhvbWUgeyBmbG9hdDogcmlnaHQ7IH1cblxuICAgICAgLnNlcGFyYXRvciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG5cbiAgICAvLyBoaWRlIHRoZSBzdGF0dXMvZGF0ZXRpbWUgaWYgdGhlcmUgaXMgYSB0YWJsZSBhZnRlciB0aGlzIChzaW5jZSBpdCdzIGFsc28gaW5jbHVkZWQgdGhlcmUpXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIC5kYXRldGltZSxcbiAgICAgIC5zdGF0dXMgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuICB9XG5cbiAgLmdhbWUtdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLmRhdGV0aW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRnYW1lLWhlYWRlci1zdGF0dXMtZm9udC1zaXplO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIHBhZGRpbmctdG9wOiAuM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFtLWFiYnJldixcbiAgLnRlYW0tbmFtZSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgLnRlYW0tYWJicmV2IHtcbiAgICBmb250LXNpemU6ICRnYW1lLWhlYWRlci1hYmJyZXYtZm9udC1zaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tdG9wOiAkZ2FtZS1oZWFkZXItc21hbGwtc3BhY2luZztcbiAgfVxuXG4gIC50ZWFtLW5hbWUge1xuICAgIEBpbmNsdWRlIGZsZXgoMSwgMSwgNTAlKTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nOiAwICRnYW1lLWhlYWRlci1zcGFjaW5nIDAgMDtcbiAgICBmb250LXNpemU6ICRnYW1lLWhlYWRlci10ZWFtLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1heC1oZWlnaHQ6IDIuNGVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICB+IC50ZWFtLW5hbWUge1xuICAgICAgcGFkZGluZzogMCAwIDAgJGdhbWUtaGVhZGVyLXNwYWNpbmc7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC52cyxcbiAgLnNjb3JlcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250OiAkZ2FtZS1oZWFkZXItc2NvcmUtZm9udC1zaXplLyN7MX0gJGZvbnRPbmU7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgfVxuXG4gIC5zY29yZXMgLnNlcGFyYXRvciB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDAgLTAuMWVtO1xuICB9XG5cbiAgLnN0YXR1cyB7XG4gICAgZm9udC1zaXplOiAkZ2FtZS1oZWFkZXItc3RhdHVzLWZvbnQtc2l6ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgfVxuXG4gICRzdHJpcGUtd2lkdGg6IDRweDtcbiAgJHN0cmlwZS1zcGFjaW5nOiAycHg7XG4gICRzdHJpcGUtb2Zmc2V0OiAkc3RyaXBlLXdpZHRoICsgJHN0cmlwZS1zcGFjaW5nO1xuXG4gIC50ZWFtLWxvZ28ge1xuICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAkc3RyaXBlLXdpZHRoO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLnRlYW0tY3Jlc3Qge1xuICAgIEBpbmNsdWRlIGZsZXgoMCwgMCwgJGdhbWUtaGVhZGVyLWNyZXN0LXdpZHRoKTtcblxuICAgICYuYXdheSAudGVhbS1sb2dvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHN0cmlwZS1vZmZzZXQ7XG4gICAgICAmOmJlZm9yZSB7IHJpZ2h0OiAtJHN0cmlwZS1vZmZzZXQ7IH1cbiAgICB9XG5cbiAgICAmLmhvbWUgLnRlYW0tbG9nbyB7XG4gICAgICBtYXJnaW4tbGVmdDogJHN0cmlwZS1vZmZzZXQ7XG4gICAgICAmOmJlZm9yZSB7IGxlZnQ6IC0kc3RyaXBlLW9mZnNldDsgfVxuICAgIH1cbiAgfVxuXG4gIC5nYW1lLWhlYWRlci1jZW50ZXIge1xuICAgIEBpbmNsdWRlIGZsZXgoMCwgMCwgJGdhbWUtaGVhZGVyLWNlbnRlci13aWR0aCk7XG4gICAgcGFkZGluZzogMCAkZ2FtZS1oZWFkZXItc3BhY2luZztcbiAgfVxuXG4gIH4gLmJveHNjb3JlLWlubmVyLWNvbnRhaW5lciB7IG1hcmdpbi10b3A6ICRnYW1lLWhlYWRlci1zbWFsbC1zcGFjaW5nOyB9XG5cbiAgLy8gU01BTEwgQ09MVU1OIFNJWkVTXG5cbiAgLy8gREVTS1RPUFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0xICYsXG4gICAgLmxheW91dC0zMy02NiAuY29sdW1uLTIgJixcbiAgICAubGF5b3V0LTUwLTI1LTI1IC5jb2x1bW4tMSAmLFxuICAgIC5sYXlvdXQtMjUtNTAtMjUgLmNvbHVtbi0yICYsXG4gICAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uLTMgJixcbiAgICAubGF5b3V0LTUwLTUwICYge1xuICAgICAgQGluY2x1ZGUgZ2FtZS1oZWFkZXItbWVkaXVtO1xuICAgIH1cblxuICAgIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0xICYsXG4gICAgLmxheW91dC02Ni0zMyAuY29sdW1uLTIgJixcbiAgICAubGF5b3V0LTMzLTMzLTMzICYsXG4gICAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpICYsXG4gICAgLmxheW91dC0yNS01MC0yNSAuY29sdW1uOm5vdCguY29sdW1uLTIpICYsXG4gICAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpICYge1xuICAgICAgQGluY2x1ZGUgZ2FtZS1oZWFkZXItc21hbGw7XG4gICAgfVxuICB9XG5cbiAgLy8gVEFCTEVUXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAgIC5sYXlvdXQtMzMtMzMtMzMgJixcbiAgICAubGF5b3V0LTMzLTY2IC5jb2x1bW4tMSAmLFxuICAgIC5sYXlvdXQtNjYtMzMgLmNvbHVtbi0yICYsXG4gICAgLmxheW91dC0yNS01MC0yNSAmIHtcbiAgICAgIEBpbmNsdWRlIGdhbWUtaGVhZGVyLXNtYWxsO1xuICAgIH1cblxuICAgIC5sYXlvdXQtMzMtNjYgLmNvbHVtbi0yICYsXG4gICAgLmxheW91dC02Ni0zMyAuY29sdW1uLTEgJixcbiAgICAubGF5b3V0LTUwLTUwICYsXG4gICAgLmxheW91dC0yNS0yNS01MCAuY29sdW1uOm5vdCguY29sdW1uLTMpICYsXG4gICAgLmxheW91dC01MC0yNS0yNSAuY29sdW1uOm5vdCguY29sdW1uLTEpICYge1xuICAgICAgQGluY2x1ZGUgZ2FtZS1oZWFkZXItbWVkaXVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRBQkxFVC9QSEFCRVRcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIEBpbmNsdWRlIGdhbWUtaGVhZGVyLW1lZGl1bTtcbiAgfVxuXG4gIC8vIFBIT05FXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgICBAaW5jbHVkZSBnYW1lLWhlYWRlci1zbWFsbDtcbiAgfVxufVxuIiwiI3Bvc3RMaXN0IGRpdi5wb3N0RWxlbWVudCB7XG4gIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczpib3R0b20pO1xuICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIC5wb3N0VXNlciB7XG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkZGQ7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTgwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250T25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgIH1cbiAgICAuZGF0ZSB7XG4gICAgICBjb2xvcjogJGJvZHlDb3B5Q29sb3JUd287XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTApO1xuICAgICAgbWFyZ2luOiAuMjVlbSAwIDEuNWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1pbWFnZS1yaWdodCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB+IC5idXR0b24tY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIC5wb3N0VXNlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgfVxuICAgIC5wb3N0Q29udGVudCB7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG59XG5cbi50b29sc0xpZ2h0Ym94IHtcbiAgI3Bvc3RDb250ZW50IHtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMDtcbiAgICAucG9zdEVsZW1lbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgI3Bvc3RDb21tZW50cyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwIDE1cHggMTVweDtcbiAgfVxufVxuIiwiLndpZGdldC1tdWx0aS1zdGF0LWZpbHRlcmFibGUge1xuICBbaWRePVwibXVsdGlfc3RhdFwiXSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgICsgZGl2IHtcbiAgICAgIEBpbmNsdWRlIGxpbmUtcGF0dGVybi1ib3JkZXIoJHBvczpib3R0b20pO1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG5cbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBsaW5rLXdpdGgtYXJyb3c7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3BvcnRUYWJsZUxhYmVsIHsgQGluY2x1ZGUgc3BvcnQtdGFibGUtbGFiZWw7IH1cblxuICAuc3RhdFRhYmxlIHtcbiAgICB0aCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGltZyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICB9XG5cbiAgICAuc3RhdFBsYXllciB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMsXG4gIC5jb2wtbWQtNCB7XG4gICAgW2lkXj1cIm11bHRpX3N0YXRcIl0ge1xuICAgICAgLnNwb3J0VGFibGVMYWJlbCB7IEBpbmNsdWRlIHNwb3J0LXRhYmxlLWxhYmVsLXNob3J0OyB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtMjUtNTAtMjUge1xuICAgIC5jb2wtbWQtMyxcbiAgICAuY29sLW1kLTYge1xuICAgICAgW2lkXj1cIm11bHRpX3N0YXRcIl0ge1xuICAgICAgICAuc3BvcnRUYWJsZUxhYmVsIHsgQGluY2x1ZGUgc3BvcnQtdGFibGUtbGFiZWwtc2hvcnQ7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIFdpZGdldCAtIFN0YXQgTGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0LWxlYWRlciB7XG4gIC5zcG9ydFRhYmxlTGFiZWwgeyBAaW5jbHVkZSBzcG9ydC10YWJsZS1sYWJlbDsgfVxuXG4gIC5zdGF0VGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgdGgsIHRkIHtcbiAgICAgICY6bnRoLWNoaWxkKDEpIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9IC8vIHJhbmsgY29sdW1uXG4gICAgICAmOm50aC1jaGlsZCgyKSB7IHRleHQtYWxpZ246IGxlZnQ7IH0gLy8gbmFtZSBjb2x1bW5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9IC8vIHN0YXQgY29sdW1uXG4gICAgfVxuXG4gICAgdGg6bnRoLWNoaWxkKDEpIHsgd2lkdGg6IDMwcHg7IH1cblxuICAgIHRkIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHsgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIH1cbiAgfVxuXG4gIC5sZWFkZXJOYW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDExMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLmxlYWRlci1oaWdobGlnaHQge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIH1cblxuICAuc3RhdHMge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgLXdlYmtpdC1mbGV4OiAxO1xuICAgIC1tcy1mbGV4OiAxO1xuICAgIGZsZXg6IDE7XG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5zdGF0cy1tYWpvcixcbiAgLnN0YXRzLW1pbm9yIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5wbGF5ZXJfcGhvdG8ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICRsaW5rLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDN0M3Qzc7IC8vIFNhbWUgZ3JleSBhcyBkZWZhdWx0IHBsYXllciBwaG90b1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDcwcHg7XG4gICAgfVxuICB9XG59XG4iLCJbaWRePVwid2lkZ2V0X3N0YW5kaW5nc193aWRnZXRfXCJdLFxuI3RhYl9kaXZpc2lvbl9zdGFuZGluZ3NfY29udGVudCB7XG4gIC5zcG9ydFRhYmxlTGFiZWwge1xuICAgIEBpbmNsdWRlIHNwb3J0LXRhYmxlLWxhYmVsO1xuICB9XG4gIHVsIHtcbiAgICB1bCB7XG4gICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keUNvcHlDb2xvclRocmVlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cHgpO1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDNweDtcbiAgICAgIH1cbiAgICAgIGg0LnRlYW1OYW1lOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRib2R5Q29weUNvbG9yVGhyZWU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgbGVmdDogLTIycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICAgICAgICBoNC50ZWFtTmFtZTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdGg6bm90KC5uYW1lKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbnRyW2lkXj1cInN0YW5kaW5nX1wiXSB7XG4gIHRkLm5hbWUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxudHJbaWRePVwic3RhbmRpbmdfXCJdIC50ZWFtTG9nby10aW55IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRhY2NlbnRfY29sb3I7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTVweDtcbiAgICB3aWR0aDogM3B4O1xuICB9XG59XG4iLCIvLyBUYWJsZSBjb250cm9scyBzaG91bGQgbm90IGJlIGVuYWJsZWRcbi8vIGluIHRoZSBmaXJzdCBwbGFjZSAoZG9uJ3QgcnVuIHRoZSBqcylcbi5OZ2luVGFibGVDb250cm9scyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0ge1xuICAuc3BvcnRUYWJsZUxhYmVsIHtcbiAgICBAaW5jbHVkZSBzcG9ydC10YWJsZS1sYWJlbDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RhdFRhYmxlIHtcbiAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICB0cjpudGgtY2hpbGQoMikgdGg6Zmlyc3QtY2hpbGQgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgfVxufVxuXG5AbWVkaWEobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kLTMsXG4gIC5jb2wtbWQtNCB7XG4gICAgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0ge1xuICAgICAgLnNwb3J0VGFibGVMYWJlbCB7IEBpbmNsdWRlIHNwb3J0LXRhYmxlLWxhYmVsLXNob3J0OyB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7XG4gIC5sYXlvdXQtMjUtNTAtMjUge1xuICAgIC5jb2wtbWQtMyxcbiAgICAuY29sLW1kLTYge1xuICAgICAgW2lkXj1cIndpZGdldF90ZWFtX3N0YXRzX3dpZGdldF9cIl0ge1xuICAgICAgICAuc3BvcnRUYWJsZUxhYmVsIHsgQGluY2x1ZGUgc3BvcnQtdGFibGUtbGFiZWwtc2hvcnQ7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkuYWRtaW57XG4gICAucmVwb3J0LWNvbnRhaW5lcntcbiAgICAgY2xlYXI6IGJvdGg7XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgfVxufSIsIi8vIFRoZW1lIEN1c3RvbWl6YXRpb25cbi5sYXlvdXRDb250YWluZXIgLnBhZ2VFbGVtZW50IHsgbWFyZ2luOiAwIDAgMzBweDsgfVxuXG4vLyBIb21lXG4jaG9tZSB7XG5cblx0I3NpdGVDb250YWluZXIgeyBtYXgtd2lkdGg6IDEyMDBweDsgfVxuXG5cdC50aGVtZS1zdWItbmF2IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cblx0I3RvcE5hdlBsYWNlaG9sZGVyIHsgaGVpZ2h0OiAxMDBweDsgfVxuXG5cdCN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYgLnRoZW1lLW1haW4tbmF2IHsgbWF4LXdpZHRoOiAxMTI1cHg7IH1cblxufVxuXG4vLyBOYXZcbiN0b3BOYXYgLnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biA+IC50aGVtZS1uYXYtaXRlbS5ob21lIHsgZGlzcGxheTogbm9uZTsgfVxuLmVkaXRfbW9kZSAjdG9wTmF2IC50aGVtZS1uYXYtc3R5bGUtZHJvcGRvd24gPiAudGhlbWUtbmF2LWl0ZW0uaG9tZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYtZml4ZWQgI3RvcE5hdi5oYXMtc2l0ZS1sb2dvIC5vdXRlck5hdixcbi5oYXMtbW9iaWxlLW5hdiAjdG9wTmF2Lmhhcy1zaXRlLWxvZ28gLm91dGVyTmF2IHsgaGVpZ2h0OiA0NXB4OyB9XG5cbiN0b3BOYXYuaGFzLXNpdGUtbG9nbyAub3V0ZXJOYXYge1xuXHRiYWNrZ3JvdW5kOiAkbGluay1jb2xvciB1cmwoJ2h0dHA6Ly9hc3NldHMubmdpbi5jb20uczMuYW1hem9uYXdzLmNvbS9zaXRlX2ZpbGVzLzEyNDI1L19zaXRlL2ltYWdlcy9wYXR0ZXJuLnBuZycpIHJlcGVhdC14O1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDBweDtcblxuXHQudGhlbWUtbWFpbi1uYXYge1xuXHRcdG1heC13aWR0aDogMTAwMHB4O1xuXG5cdFx0LnRoZW1lLW5hdi1zdHlsZS1kcm9wZG93biB7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR9XHRcblxuXHR9XG5cbn1cblxuLy8gSGlkZSBtb2JpbGUgaG9tZSBkcm9wZG93biBhcnJvdyBhbmQgbW9iaWxlIHNlYXJjaCB1bnRpbCBpdCBnZXRzIGZpeGVkIGZvciAzLjlcbi50aGVtZS1uYXYtZm9yd2FyZC5wYWdlX25vZGVfMjUwNzczMyxcbiNQYWdlU2VhcmNoQm94TW9iaWxlTmF2IHsgZGlzcGxheTogbm9uZTsgfVxuXG4vLyBNb2JpbGUgTG9nb1xuI21vYmlsZUxvZ28ge1xuXHRoZWlnaHQ6IDQ1cHg7XG4gIHdpZHRoOiA0NXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTEwMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDkwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4jbW9iaWxlVGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBsZWZ0OiAxMDIlO1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gSG9tZSBGZWF0dXJlXG4uZmVhdHVyZSB7XG5cblx0Ly8gRmVhdHVyZSBTbGlkZXJcblx0LnNuLW1lZGlhLXNsaWRlciB7XG5cblx0XHQuc2xpZGVyIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cblx0XHQuc2xpZGVzIC5zbGlkZSB7XG5cblx0XHRcdC5zbGlkZS1vdmVybGF5ICB7XG5cdFx0XHRcdHBhZGRpbmc6IDUlO1xuXHRcdFx0fVxuXG5cdFx0fVx0XG5cblx0XHQuc2xpZGUtdGl0bGUge1xuXHRcdFx0bWFyZ2luOiA1JSAwIDElO1xuXHRcdFx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRmb250LXNpemU6IDIzMCU7XG5cdFx0fVxuXG5cdFx0LnNsaWRlLWRlc2NyaXB0aW9uIHsgXG5cdFx0XHRtYXJnaW46IDAgMCAxJTsgXG5cdFx0XHRmb250LXNpemU6IDEwMCU7XG5cdFx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0XHRcdG1heC13aWR0aDogNTUlO1xuXHRcdH1cblxuXHR9XHRcblxuXHQudXNlcl9tb2RlICYge1xuXG5cdFx0Ly8gRmVhdHVyZSBMaW5rc1xuXHRcdC5saW5rV3JhcCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHR3aWR0aDogOTAlO1xuXHQgICAgbWFyZ2luOiAwIDUlIDglO1xuXG5cdFx0XHQucGFnZUVsZW1lbnQubGlua0VsZW1lbnQge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0bWF4LXdpZHRoOiAzMCU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRjbGVhcjogbm9uZTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAzJTtcblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cbn1cdFxuXG4vLyBIb21lIFNwZWNpZmljIENUQXNcbi5ob21lQ3RhIHtcblxuXHQuc24tY2FsbC10by1hY3Rpb24gLnNuLWNhbGwtdG8tYWN0aW9uLXRpdGxlIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuOCk7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICctJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cblx0fVxuXG59XG5cbi8vIGhyIGVsZW1lbnRcbmhyLmhyRWxlbWVudCB7IFxuXHRtYXJnaW46IDAgMCAzMHB4O1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXItdG9wOiBzb2xpZCAxcHggI2RkZDtcblx0aGVpZ2h0OiAwOyBcbn1cblxuLy8gY3VzdG9tQWdnXG4uY3VzdG9tQWdnIHtcblxuXHQubmV3c0FnZ3JlZ2F0b3JFbGVtZW50IHtcblxuXHRcdC5pdGVtIHtcblx0XHRcdHdpZHRoOiAzMC4zMzMzMzMzMzMzMzMzJTtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0Ym9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAzJTtcblxuXHRcdFx0Ji5leHRlbmRlZE9wdGlvbnMgeyBcblx0XHRcdFx0d2lkdGg6IDEwMCU7IFxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0XHRcdGEge1xuXG5cdFx0XHRcdFx0Ji5yc3NMaW5rIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cdFx0XHRcdFx0Ji5nb1RvTGluay5pY29uIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDE1cHggNjBweDtcblx0XHRcdFx0XHRcdGJvcmRlcjogc29saWQgMnB4ICNkZGRkZGQ7XG5cdFx0XHRcdFx0XHRjb2xvcjogI2RkZGRkZDtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udE9uZTtcblx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAuNXB4O1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0XHRcdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHRcdCY6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJ1xcZjEwNSc7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBzb2xpZCAycHggJGFjY2VudC1jb2xvcjtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJGFjY2VudC1jb2xvcjtcblx0XHRcdFx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVx0XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC5hcnRpY2xlSGFzSW1hZ2UgLm5ld3NJdGVtSGVhZGVyIHsgXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7IFxuXG5cdFx0XHQ+IGEgeyBkaXNwbGF5OiBub25lOyB9XG5cblx0XHR9XG5cblx0XHQuY29tbWVudHNBbmRNb3JlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cdH1cblxuXHQubmV3c0RhdGUsXG5cdC5uZXdzQXV0aG9yIHsgY29sb3I6ICRncmF5OyB9XG5cblx0LmNvbmRlbnNlZCB7XG5cblx0XHQ+IGEgeyBkaXNwbGF5OiBub25lOyB9XG5cblx0XHQuZGV0YWlscyB7IHBhZGRpbmctbGVmdDogMDsgfVxuXG5cdFx0PiB1bCBoNCB7IFxuXHRcdFx0Zm9udC1zaXplOiAyMHB4OyBcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0fVxuXG5cdFx0LnRlYXNlciB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdGNvbG9yOiAkZGFyaztcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0fVxuXG5cdH1cblxuXHQuZXhwYW5kZWQge1xuXG5cdFx0Lm5ld3NUZXh0IHsgZGlzcGxheTogbm9uZTsgfVxuXG5cdFx0Lm5ld3NJdGVtSGVhZGVyIGgyIHtcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH1cblxuXHRcdC5uZXdzSXRlbUVsZW1lbnQgaDQge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRjb2xvcjogJGRhcms7XG5cdFx0XHR0ZXh0LXdlaWdodDogNjAwcHg7XG5cdFx0fVxuXG5cdH1cdFxuXG59XG5cbi8vKioqIEJyZWFrcG9pbnQgKioqLy9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG5cblx0LmZlYXR1cmUge1xuXG5cdFx0LnNuLW1lZGlhLXNsaWRlciB7XG5cblx0XHRcdC5zbGlkZS10aXRsZSB7IG1hcmdpbjogMCAwIDElOyB9XG5cblx0XHR9XG5cblx0fVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG5cblx0LmZlYXR1cmUge1xuXHRcdFx0XG5cdFx0LnVzZXJfbW9kZSAmIHtcblxuXHRcdFx0LmxpbmtFbGVtZW50IHtcblxuXHRcdFx0XHRoNCBhIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAxNXB4IDMwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCYuYWx0TGluayB7XG5cblx0XHRcdFx0XHRoNCBhIHsgcGFkZGluZzogMTNweCAzMHB4OyB9XG5cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdC5saW5rV3JhcCB7XG5cdFx0XHRcdG1hcmdpbjogMCA1JSA1JTtcblxuXHRcdFx0XHQucGFnZUVsZW1lbnQubGlua0VsZW1lbnQge1xuXHRcdFx0XHRcdG1heC13aWR0aDogNDYlO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMiU7XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0fVx0XG5cblx0XHQuc24tbWVkaWEtc2xpZGVyIC5zbGlkZS1kZXNjcmlwdGlvbiB7XG5cdFx0XHRtYXgtd2lkdGg6IDg1JTtcblx0XHR9XG5cblx0fVxuXG5cdC5jdXN0b21BZ2cge1xuXG5cdFx0Lm5ld3NBZ2dyZWdhdG9yRWxlbWVudCB7XG5cblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXG5cdFx0fVx0XHRcblxuXHR9XG5cbn1cblxuLy8gU3BvbnNvcnNcbi5lZGl0X21vZGUgLnNwb25zb3JzIC5oZXJvUGhvdG9FbGVtZW50IGltZyB7IG1heC13aWR0aDogMTUwcHg7IH1cblxuLnVzZXJfbW9kZSAuc3BvbnNvcnMge1xuXG5cdC5zcG9uc29yV3JhcCB7XG5cdFx0bWFyZ2luOiBhdXRvO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXG5cdC5wYWdlRWwge1xuXHRcdHBhZGRpbmc6IDAgMzBweDtcblx0XHRtaW4td2lkdGg6IDE2LjY2NjY2NjY2NjY2NyUgIWltcG9ydGFudDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHQuaGVyb1Bob3RvRWxlbWVudCBpbWcge1xuXHRcdFx0ZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG5cdFx0XHRvcGFjaXR5OiAuNTtcblx0XHRcdHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGZpbHRlcjogZ3JheXNjYWxlKDApO1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cblx0LmxheW91dENvbnRhaW5lciAucGFnZUVsZW1lbnQgeyBtYXJnaW46IDAgMCAxNXB4OyB9XG5cblx0LnVzZXJfbW9kZSAuZmVhdHVyZSB7XG5cblx0XHQubGlua1dyYXAge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAycHggMCAwO1xuXHRcdFx0bWFyZ2luOiAwO1xuXG5cdFx0XHQucGFnZUVsZW1lbnQubGlua0VsZW1lbnQge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbjogMCAwIDJweCAwO1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQuc24tbWVkaWEtc2xpZGVyIHtcblxuXHRcdFx0LnNsaWRlLXRpdGxlIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxNTAlO1xuXHRcdFx0fVx0XG5cblx0XHRcdC5zbGlkZS1kZXNjcmlwdGlvbiB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogODAlO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cdFxuXG5cdC5saW5rRWxlbWVudC5hbHRMaW5rIGg0IGEge1xuXHRcdGJvcmRlcjogc29saWQgMnB4ICRhY2NlbnQtY29sb3I7XG5cdFx0Y29sb3I6ICRhY2NlbnQtY29sb3I7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0fVxuXG5cdH1cblxuXHQuY3VzdG9tQWdnIHtcblxuXHRcdC5uZXdzQWdncmVnYXRvckVsZW1lbnQge1xuXG5cdFx0XHQuaXRlbSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cblx0XHR9XHRcdFxuXG5cdH1cdFxuXG5cdC51c2VyX21vZGUgLnNwb25zb3JzIC5wYWdlRWwge1xuXHRcdHdpZHRoOiAzMy4zMzMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7XG5cblx0XHRpbWcgeyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuXHR9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuXG5cdC5sYXlvdXRDb250YWluZXIgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuXHQjcGFuZWxUd28ge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHR9XG5cblx0LnVzZXJfbW9kZSAuZmVhdHVyZSAuc24tbWVkaWEtc2xpZGVyIHtcblxuXHRcdC5zbGlkZS10aXRsZSB7IGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5cdFx0LnNsaWRlLWRlc2NyaXB0aW9uIHsgZm9udC1zaXplOiA3MCU7IH1cblxuXHR9XHRcblxufVxuXG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
