@charset "UTF-8";
/*
#######################################
DEV VERSION 4.0 LAST UPDATED 2/21/2019
#######################################
*/
body, .webfont,
.pc-header .Head,
#BottomFooter h2 {
  font-family: "Open Sans", sans-serif !important;
}

.webfont2,
.vlbCatalogBtn {
  font-family: "Open Sans", sans-serif;
}

.homepage .container {
  width: 100%;
  padding: 0 15px;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .homepage .container {
    width: 750px;
    margin: 0 auto;
    padding: 0px;
  }
}
@media (min-width: 992px) {
  .homepage .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .homepage .container {
    width: 1170px;
  }
}

.subpage .container {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

/*=============================================
=                  Resets                    =
=============================================*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

b {
  font-weight: 700;
}

em {
  font-style: italic;
}

/* Please don't remove this */
.DNNEmptyPane {
  display: none !important;
  visibility: hidden !important;
}

.DNNModuleContent {
  overflow: hidden;
}

#dnn_ContentPane .DNNModuleContent {
  overflow: visible;
}

.dnnLoginActions {
  display: none;
}

.dnnActionMenuBody:hover {
  position: relative;
  margin-top: -30px;
}

.ModPostalCodeLookupC, .ModDynamicFormsC, .ModICGLocalFocalModulesWheelConfiguratorC, .ModNetDrivenModulesVehicleLookupBarC, .ModLanguagesC {
  overflow: visible !important;
}

#TestingWarning {
  position: fixed;
  bottom: 0;
  left: 0;
  background: #000;
  color: #F00;
  padding: 5px;
  font-size: 16px;
  font-weight: 700;
}

h1, h2, h3, strong {
  font-weight: 700;
}

h2 {
  font-size: 1.5em;
  margin-bottom: 10px;
}

h3 {
  font-size: 1.25em;
  margin-bottom: 1%;
  line-height: normal;
}

img {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
  height: 100%;
}

img[style*=float]:not(#tirebrands img) {
  float: none !important;
}

.aqSectionBody .btnSubmitQuote {
  position: relative;
  z-index: 5;
}

/* HTML5 DISPLAY-ROLE RESET FOR OLDER BROWSERS
----------------------------------------------------------------------------------------------------*/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
  overflow-x: hidden;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.dnnclear {
  clear: both;
  overflow: hidden;
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

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

.clearfix {
  display: inline-block;
}

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

@media only screen and (max-width: 640px) {
  .ndcustombutton1, .ndcustombutton2 {
    display: block;
    margin-bottom: 5px;
    text-align: center;
    padding-top: 1%;
    font-size: 0.875em !important;
  }

  .ndcustombuttonformat {
    padding: 1% !important;
    white-space: normal !important;
  }

  select {
    font-size: 1em !important;
  }

  div[style*="float:left"], p[style*="float:left"], div[style*="float:right"], p[style*="float:right"] {
    float: none !important;
    margin: 2% !important;
  }
}
/* WRAPPER CLASS FOR FLOAT CLEARING
----------------------------------------------------------------------------------------------------*/
.wrapper {
  display: inline-block;
}

.wrapper:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.wrapper {
  display: block;
}

/*============================================================================================================================*/
/* CUSTOM STYLE GUIDE
----------------------------------------------------------------------------------------------------*/
.pc-header, .pc-title, .pc-footer {
  margin-bottom: 1%;
}

.pc-header, .pc-title {
  position: relative;
  z-index: 5;
  position: relative;
  padding: 8px 0;
}

.pc-header h1, .pc-title h1 {
  color: #FFF;
  font-weight: 800;
  text-transform: uppercase;
}

.title-bar {
  position: absolute;
  left: 0;
  width: 100%;
  content: "C";
  text-indent: -9999px;
}

.pc-header h1, .pc-title h1, .pc-header::before, .pc-title::before {
  font-size: 23px;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px), (max-width: 980px) and (min-width: 640px) {
  .pc-body {
    padding: 1%;
  }

  .pc-title, .pc-header {
    padding: 8px 1%;
  }
}
.ndforusa {
  display: block;
}

.ndforcanada {
  display: none;
}

.ndcustomcolorclass, .ndcustomcolorcontainer img {
  background-color: #000000;
}

/* !important */
.ndcustomtextcolor1 {
  color: #000000 !important;
}

.ndcustomtextcolor2 {
  color: #000000 !important;
}

.ndcustomlinkcolor1 {
  color: #000000 !important;
}

.ndcustomlinkcolor1:hover {
  color: #666666 !important;
}

.ndcustomlinkcolor2 {
  color: #000000 !important;
}

.ndcustomlinkcolor2:hover {
  color: #666666 !important;
}

.ndcustombuttonformat {
  text-transform: uppercase !important;
  text-decoration: none !important;
  font-weight: bold !important;
  -moz-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  border-radius: 3px !important;
  padding: 5px 7px !important;
  white-space: nowrap !important;
  cursor: pointer;
  background-image: url("//a.ndrv.in/modules/shared/buttongradient01.png") repeat-x center bottom !important;
}

.ndcustomroundedcorners {
  -moz-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  border-radius: 3px !important;
  background-image: url("//a.ndrv.in/modules/shared/buttongradient01.png") repeat-x center bottom !important;
  display: inline-block !important;
}

.ndcustombutton1 {
  background: #666666 !important;
  color: #ffffff !important;
}

.ndcustombutton1:hover {
  background: #000000 !important;
  color: #ffffff !important;
}

.ndcustombutton2 {
  background: #333333 !important;
  color: #ffffff !important;
}

.ndcustombutton2:hover {
  background: #000000 !important;
  color: #ffffff !important;
}

.ndcustom1 {
  background: #000000 !important;
  color: #ffffff !important;
}

.ndcustom2 {
  background: #666666 !important;
  color: #ffffff !important;
}

/* THIS MAY BE NOT RIGHT */
.ndcustomborder {
  border: 1px solid #666 !important;
}

.ndrequired {
  color: #F00;
  font-weight: bold;
}

/* DEFAULT DEV STYLES
----------------------------------------------------------------------------------------------------*/
.requiredforminfo {
  color: #F00;
  font-weight: 700;
  text-transform: uppercase;
}

.ATChidden, .hideme {
  display: none;
}

/* 16px */
#ndtestimonials .submit-review {
  font-size: 1em !important;
}

/* 14px */
#ndatc .FeaturesBenefits th, #ndatc .atctirepointtable, select:not(#tireconnect select), #ndatc .disclaimer, .ButtonLink1, .ndatcintrotext, #ndsc #CatList p, #ndsc .CategoryDescriptionText, #ndsc #servicedescription, #ndtestimonials .ndtestimonialsintrotext, #ndtestimonials .ndtestimonialsintrotext, #review-submission .review-submit-button, #ndtestimonials #reviews-showing .first-last a, #ndtestimonials #reviews-showing .sortby select, #review-submission, #review-submission input, #review-submission textarea, #ndtestimonials #review-stars .review-text, #review-submission input, #review-submission textarea, #ndsc .CatContent {
  font-size: 0.875em !important;
}

/* 12px */
#ndatc #atcinfotabs .atctabnav li, #ndatc #atctabcontent, .ndcustombuttonformat, #ndsc .ServiceLink, #ndsc #CatList ul {
  font-size: 0.75em !important;
}

/* 12px */
#ndsc .ServiceLink, #ndsc #CatList p, #ndsc #CatList ul {
  line-height: normal !important;
}

/*=============================================
=            Dynamic Form Styles            =
=============================================*/
label .padding {
  white-space: nowrap;
}

.padding {
  margin: 0 20px;
  margin-bottom: 10px;
}

.datepadding {
  margin-left: 20px;
  margin-bottom: 5px;
  white-space: nowrap;
}

/*.DynamicForms_Maintable {width: 100%; padding: 2px;}*/
.NormalTextBox {
  margin-left: 20px;
}

.ros_grid {
  margin: 0 20px;
  margin-bottom: 5px;
}

.ros_grid td {
  padding: 2px;
  border: 1px solid #000000;
}

.ros_grid .DynamicForms_GridHeaderColumn {
  background: #000000;
  color: #FFFFFF;
  font-weight: bold;
  padding: 3px;
  border: 1px solid #000000;
}

.ros_grid .DynamicForms_GridItemColumn {
  background: #CCCCCC;
  color: #000000;
}

.ros_grid .DynamicForms_GridColumn {
  background: #EBECEC;
}

label.padding-radio {
  font-weight: 700;
}

table.padding-radio {
  margin-bottom: 2%;
}

.ros-title {
  margin: 1% 0;
}

span.padding-radio {
  margin-bottom: 2%;
  display: inline-block;
  line-height: normal;
}

.DynamicForms_Maintable {
  width: 100%;
}

.DynamicForms_Maintable select, .DynamicForms_Maintable input {
  font-size: 1em;
}

#EntryForm .NormalTextBox {
  margin: 0 20px 10px;
}

#EntryForm .NormalTextBox {
  width: 150px;
}

span.captcha {
  position: relative;
  top: 4px;
}

#BottomFooter #EntryForm .captcha img[src*="/ImageChallenge.captcha.aspx?"] {
  width: 180px;
  height: 45px;
}

#BottomFooter #EntryForm .captcha {
  width: 100% !important;
  display: block;
}

#BottomFooter #EntryForm .captcha div {
  display: inline;
}

#BottomFooter #EntryForm .captcha input {
  padding: 1%;
  position: relative;
}

#BottomFooter .captcha {
  position: relative;
  display: block !important;
}

#BottomFooter .DynamicForms_CAPTCHAError {
  background: #990000;
  color: #FFF;
  padding: 10px;
  width: 200px;
  position: absolute;
  top: 37px;
  right: 0;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px), (max-width: 980px) {
  #BottomFooter .DynamicForms_CAPTCHAError {
    width: 30%;
    top: 0;
    white-space: normal;
  }

  #BottomFooter #EntryForm .captcha input {
    display: block !important;
  }
}
#BottomFooter .DynamicForms_Summary li, #BottomFooter .DynamicForms_Summary li:nth-of-type(3n+2) {
  float: none;
  display: block;
  width: auto;
}

@media only screen and (min-width: 980px) {
  #BottomFooter #EntryForm .captcha img[src*="/ImageChallenge.captcha.aspx?"] {
    float: right;
    position: relative;
    top: -18px;
  }

  #BottomFooter #EntryForm .captcha input {
    top: -10px;
  }
}
@media only screen and (max-width: 640px) {
  #BottomFooter #EntryForm .captcha img[src*="/ImageChallenge.captcha.aspx?"] {
    width: auto;
    height: auto;
  }
}
@media only screen and (max-width: 640px) {
  .padding {
    margin: 1% 0 1%;
  }

  #EntryForm * {
    box-sizing: border-box;
    white-space: normal;
  }

  .DynamicForms_TableRow, .DynamicForms_TableRow td {
    display: block;
    width: 100%;
  }

  .DynamicForms_TableRow td table, .DynamicForms_TableRow td table tbody, .DynamicForms_TableRow td table tr, .DynamicForms_TableRow td table:not(.padding-radio) tr > td:first-of-type {
    display: block;
    width: 100%;
  }

  /* Issue */
  #EntryForm input[type=text], #EntryForm select, #EntryForm textarea {
    width: 100% !important;
    font-size: 14px;
    padding: 2%;
    margin: 0 0 1%;
  }

  #EntryForm div[style*=margin-left] {
    margin: 0 !important;
  }

  #EntryForm input[type=button] {
    width: 100%;
    padding: 2%;
  }

  table.padding-radio {
    width: 100% !important;
    margin-bottom: 1%;
    padding: 2%;
  }

  table.padding-radio td {
    width: 20% !important;
    display: inline-block !important;
    text-align: center !important;
  }

  span.padding-radio {
    margin-bottom: 2%;
    display: inline-block;
    line-height: normal;
  }
}
/*============================================================================================================================*/
/*=============================================
=              Tire Brands Page              =
=============================================*/
#tirebrands a.shop, #tirebrands a.back {
  float: right;
  text-indent: 25px;
  display: block;
  color: #000000;
  text-decoration: none;
  padding: 5px;
  border: 1px solid #e6e8d9;
  margin: 5px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
}

#tirebrands a.shop {
  background: #e9e9e9 url(//a.ndrv.in/icons/cart.png) no-repeat 5px center;
}

#tirebrands a.back {
  background: #e9e9e9 url(//a.ndrv.in/icons/delete.gif) no-repeat 5px center;
}

#tirebrands a.shop:hover, #tirebrands a.back:hover {
  color: #666666;
  background-color: #ffffff;
}

@media only screen and (max-width: 640px) {
  img[src*="/tire_brands/logos/logo"], img[src*="/custom-pages/"] {
    height: auto;
  }
}
/* NEW BRAND PAGE ALL PAGES */
#new-brand-page .shop-with-us h2 {
  font-size: 2em;
  color: #FFF;
  font-weight: 400;
  text-transform: uppercase;
  display: inline-block;
  margin: 0;
  vertical-align: middle;
  line-height: normal;
}

#new-brand-page .nbp-specs img[src*="specs.png"] {
  margin-top: 10px;
}

#new-brand-page .shop-with-us img {
  vertical-align: top;
  margin-right: 25px;
}

#new-brand-page .nbp-title {
  margin-bottom: 10px;
}

#new-brand-page .nbp-slogan {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 20px;
}

#new-brand-page .shop-with-us {
  line-height: 72px;
  margin-bottom: 40px;
  margin-bottom: 40px;
}

#new-brand-page .shop-for-tires-here {
  display: block;
  font-size: 2.25em;
  padding-left: 18px;
  box-sizing: border-box;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Arial Narrow", arial;
}

#new-brand-page.michelin-landing-page .shop-for-tires-here {
  display: block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-tires-here.png) no-repeat top center;
  color: #000;
  width: 407px;
  height: 69px;
  font-size: 2.25em;
  line-height: 69px;
  float: left;
  clear: left;
}

#new-brand-page.bfgoodrich-landing-page .shop-for-tires-here {
  display: block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-bfgoodrich-tires-here.png) no-repeat top center;
  color: #FFF;
  width: 538px;
  height: 73px;
  font-size: 2.25em;
  line-height: 73px;
}

#new-brand-page.uniroyal-landing-page .shop-for-tires-here {
  display: block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-uniroyal-tires-here.png) no-repeat top center;
  color: #FFF;
  width: 473px;
  height: 64px;
  font-size: 2.25em;
  line-height: 64px;
}

#new-brand-page .nbp-subtitle {
  padding: 10px 2%;
  color: #FFF;
  font-weight: 400;
  font-size: 400;
  font-size: 1.25em;
  text-transform: uppercase;
}

#new-brand-page .nbp-subsection {
  padding: 2%;
}

#new-brand-page .nbp-subsection::after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#new-brand-page .nbp-brandslogan {
  float: left;
  width: 50%;
  box-sizing: border-box;
  border-right: 1px solid #c4cacf;
  padding-right: 30px;
  min-height: 149px;
}

#new-brand-page .nbp-keybenefits {
  float: right;
  width: 50%;
  padding-left: 30px;
  box-sizing: border-box;
}

#new-brand-page .nbp-tiredetails ul, #new-brand-page .nbp-tiredetails li {
  margin: 0 !important;
}

#new-brand-page .nbp-tiredetails a {
  position: absolute;
  right: 15px;
  bottom: 15px;
}

#new-brand-page h3 {
  text-transform: none;
  font-size: 1.125em;
  margin-bottom: 5px;
}

#new-brand-page.bfgoodrich-landing-page h3 {
  margin: 5px 0 0;
}

#new-brand-page .nbp-slogan h6 {
  font-size: 0.875em;
  font-weight: 400;
}

#new-brand-page .small-shop-arrow {
  display: inline-block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/small-shop-arrow.png) no-repeat top center;
  width: 212px;
  height: 50px;
  line-height: 50px;
  padding-left: 12px;
  box-sizing: border-box;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.25em;
  color: #000;
  vertical-align: middle;
  margin: 0 0 20px 40px;
}

#new-brand-page .subtext {
  color: #9d9d9d;
  font-size: 0.563em;
}

#new-brand-page .nbp-specs {
  padding: 12px;
  width: 50%;
  max-width: 340px;
  float: left;
  box-sizing: border-box;
  min-height: 150px;
  position: relative;
}

#new-brand-page.michelin-landing-page .nbp-specs .nbp-specs-tab {
  position: absolute;
  left: -12px;
  top: 30px;
  display: none;
}

#new-brand-page.bfgoodrich-landing-page .nbp-specs .nbp-specs-tab {
  position: absolute;
  left: -4px;
  top: 50px;
  display: none;
}

#new-brand-page.michelin-landing-page .nbp-specs {
  background: #d4dde6;
}

#new-brand-page.bfgoodrich-landing-page .nbp-specs {
  background: #d8d5d6;
}

#new-brand-page.uniroyal-landing-page .nbp-specs {
  background: #d8d5d6;
  width: 22%;
}

#new-brand-page .nbp-tiredetails {
  padding: 12px 30px;
  background: #e6eaee;
  width: 620px;
  float: right;
  box-sizing: border-box;
  min-height: 173px;
  position: relative;
  margin-left: 2%;
}

#new-brand-page.michelin-landing-page .nbp-tiredetails {
  background: #e6eaee;
}

#new-brand-page.bfgoodrich-landing-page .nbp-tiredetails {
  background: #ececec;
}

#new-brand-page .nbp-tiredetails p, #new-brand-page .nbp-tiredetails ul, #new-brand-page .nbp-tiredetails a {
  font-size: 0.75em;
  margin: 0 !important;
}

#new-brand-page .nbp-specs h3 {
  font-size: 1.125em;
  margin-bottom: 0;
  text-transform: uppercase;
}

#new-brand-page .nbp-specs h4 {
  font-size: 0.875em;
  font-weight: 700;
}

#new-brand-page .nbp-tirespec {
  font-size: 0.5em;
  text-transform: uppercase;
}

#new-brand-page .nbp-tirespec div {
  margin-bottom: 5px;
  vertical-align: middle;
  margin-right: 8px;
}

#new-brand-page .nbp-tire-container {
  margin: 20px 0;
  display: flex;
  flex-direction: row;
}

/*#new-brand-page .nbp-tire-container > div{flex:1;}*/
#new-brand-page .nbp-slider {
  width: 120px;
  height: 10px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  display: inline-block;
  background: #FFF;
  position: relative;
  background: url(//a.nd-cdn.us/img/new-brand-pages/complete-bar.gif) no-repeat, url(//a.nd-cdn.us/img/new-brand-pages/incomplete-bar.gif) no-repeat;
  background-position: -50% -50%, -50% 50%;
}

#new-brand-page .nbp-slider::before {
  border: 1px solid #626262;
  position: absolute;
  top: -2px;
  font-size: 1em;
  text-align: center;
  width: 14px;
  height: 14px;
  padding: 2px;
  box-sizing: border-box;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #FFF;
}

#new-brand-page .nbp-disclaimer {
  font-size: 0.563em;
}

/* TIRE BRANDS PAGES */
#dnn_ctr7592_HtmlModule_lblContent, #dnn_ctr7659_ContentPane {
  font-size: 125%;
}

#dnn_ctr7592_HtmlModule_lblContent .subtitle {
  font-size: 125%;
}

#tirebrands #info img[src*=logo] {
  width: 50%;
  max-width: 150px;
  margin-right: 2%;
}

#tirebrands #info img[src*="michelin-promise-plan-logo.png"] {
  width: 30%;
  height: auto;
}

#tirebrands #info img[src*="/logo_nexen.gif"] {
  width: 35%;
}

/* MICHELIN PAGES */
#new-brand-page.michelin-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/michelin-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 15px 0 0 50px;
}

#new-brand-page.michelin-landing-page .promise-plan-arrow {
  background: #ffea00;
  color: #000;
  padding: 10px 20px;
  color: #000;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  margin: 10px 0;
  position: relative;
}

#new-brand-page.michelin-landing-page .promise-plan-arrow::after {
  content: url(//a.nd-cdn.us/img/new-brand-pages/promise-plan-arrow.png);
  position: absolute;
  right: -20px;
  top: 0;
}

#new-brand-page.michelin-landing-page .here {
  color: #0057a6;
  font-weight: 700;
}

#new-brand-page.michelin-landing-page .nbp-subtitle {
  background: #0057a6;
}

/* BFGOODRICH PAGES */
#new-brand-page.bfgoodrich-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/bfgoodrich-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 7px 0 0 30px;
}

#new-brand-page.bfgoodrich-landing-page .shop-with-us h2 {
  margin-top: 9px;
}

#new-brand-page.bfgoodrich-landing-page .here {
  font-weight: 700;
}

#new-brand-page.bfgoodrich-landing-page .nbp-subtitle {
  background: #004785;
}

/* UNIROYAL PAGES */
#new-brand-page.uniroyal-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/uniroyal-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 7px 0 0 30px;
}

#new-brand-page.uniroyal-landing-page .shop-with-us h2 {
  margin-top: 9px;
}

#new-brand-page.uniroyal-landing-page .here {
  font-weight: 700;
}

#new-brand-page.uniroyal-landing-page .nbp-subtitle {
  background: #2b2b2b;
}

#new-brand-page.uniroyal-landing-page .nbp-specs img {
  margin: 10px auto 0 !important;
  display: block;
  float: none !important;
}

#new-brand-page.uniroyal-landing-page .nbp-specs h3 {
  font-size: 0.875em;
}

#new-brand-page.uniroyal-landing-page .nbp-tiredetails {
  width: 750px;
}

/* CONTINENTAL BRAND PAGE */
#new-brand-page.continental-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/continental-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 15px 0 0 30px;
}

#new-brand-page.continental-landing-page .here {
  font-weight: 700;
}

#new-brand-page.continental-landing-page .nbp-subtitle {
  background: #595959;
}

#new-brand-page.continental-landing-page .nbp-title h2 {
  min-height: 40px;
}

#new-brand-page.continental-landing-page .shop-for-tires-here {
  background: url(//a.nd-cdn.us/img/new-brand-pages/continental-shop-for-tires-here.png) no-repeat top center;
  color: #000;
  width: 407px;
  height: 69px;
  font-size: 36px;
  line-height: 69px;
}

#new-brand-page.continental-landing-page .nbp-specs .nbp-specs-tab {
  position: absolute;
  left: -12px;
  top: 30px;
  display: none;
}

#new-brand-page.continental-landing-page .small-shop-arrow {
  display: inline-block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/continental-small-shop-arrow.png) no-repeat top right;
  width: 272px;
  height: 50px;
  line-height: 50px;
  padding-left: 12px;
  box-sizing: border-box;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 20px;
  color: #000;
  vertical-align: middle;
}

#new-brand-page.continental-landing-page .logo-and-tire {
  width: 110px;
  float: left;
  margin-right: 15px;
}

#new-brand-page.continental-landing-page .nbp-specs h3 {
  text-transform: none;
  margin-bottom: 5px;
}

#new-brand-page.continental-landing-page .logo-and-tire img {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}

#new-brand-page.continental-landing-page .nbp-specs {
  background: #000;
  color: #FFF;
}

/* COOPER BRAND PAGE */
#new-brand-page.cooper-landing-page .shop-for-tires-here {
  display: block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-tires-here-cooper.png) no-repeat top center;
  color: #001d60;
  width: 407px;
  height: 69px;
  font-size: 2.25em;
  line-height: 69px;
  float: left;
  clear: left;
  font-weight: 700;
}

#new-brand-page.cooper-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/cooper-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 15px 0 0 50px;
}

#new-brand-page.cooper-landing-page .shop-with-us {
  text-align: right;
}

#new-brand-page.cooper-landing-page .shop-with-us h2 {
  font-family: "Arial Narrow", arial, sans-serif;
  font-size: 1.5em;
  margin-right: 10px;
}

#new-brand-page.cooper-landing-page .shop-with-us img {
  margin-top: 23px;
}

#new-brand-page.cooper-landing-page .promise-plan-arrow::after {
  content: url(//a.nd-cdn.us/img/new-brand-pages/promise-plan-arrow.png);
  position: absolute;
  right: -20px;
  top: 0;
}

#new-brand-page.cooper-landing-page .here {
  color: #0057a6;
  font-weight: 700;
}

#new-brand-page.cooper-landing-page .nbp-subtitle {
  background: #001d60;
  font-family: "Arial Narrow", arial, sans-serif;
  font-weight: 700;
}

#new-brand-page.cooper-landing-page .nbp-slogan h3 {
  text-transform: uppercase;
}

#new-brand-page.cooper-landing-page .small-shop-arrow {
  width: 382px;
  background: url(//a.nd-cdn.us/img/new-brand-pages/small-shop-arrow-cooper.png) no-repeat;
}

#new-brand-page.cooper-landing-page h3 {
  font-family: "Arial Narrow", arial, sans-serif;
  color: #5c666f;
  text-transform: uppercase;
}

#new-brand-page.cooper-landing-page .types-of-cooper-tires {
  float: left;
  margin-top: 60px !important;
}

#new-brand-page.cooper-landing-page .toct-image {
  float: left;
}

#new-brand-page.cooper-landing-page .learn-more-cooper {
  width: 100%;
  background: url(//a.nd-cdn.us/img/new-brand-pages/learn-more-cooper.png) no-repeat top right;
  display: block;
  height: 50px;
  margin-top: 20px;
  text-decoration: none;
  color: #000;
  padding: 8px 40px 8px 8px;
  box-sizing: border-box;
}

#new-brand-page.cooper-landing-page .learn-more-cooper .shop-online {
  float: left;
  font-size: 0.75em;
  margin-top: 6px;
}

#new-brand-page.cooper-landing-page .learn-more-cooper .learn-about {
  float: right;
  line-height: 34px;
  text-transform: uppercase;
  font-family: "Arial Narrow", arial, sans-serif;
  font-size: 1.5em;
}

#new-brand-page.cooper-landing-page .nbt-video {
  float: left;
  width: 30%;
  text-align: center;
}

#new-brand-page.cooper-landing-page .nbt-video:nth-of-type(2) {
  width: 40%;
}

#new-brand-page.cooper-landing-page .nbt-video:nth-of-type(4), #new-brand-page.cooper-landing-page .nbt-video:nth-of-type(5) {
  width: 50%;
  margin-top: 10px;
}

#new-brand-page.cooper-landing-page .nbt-video h3 {
  font-size: 1em;
}

/* MASTERCRAFT BRAND PAGE */
#new-brand-page.mastercraft-landing-page .shop-for-tires-here {
  display: block;
  background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-tires-here-mastercraft.png) no-repeat top center;
  color: #aa1d22;
  width: 407px;
  height: 69px;
  font-size: 2.25em;
  line-height: 69px;
  float: left;
  clear: left;
}

#new-brand-page.mastercraft-landing-page .nbp-title {
  background: url(//a.nd-cdn.us/img/new-brand-pages/mastercraft-banner-large.jpg) no-repeat top center;
  box-sizing: border-box;
  height: 230px;
  padding: 15px 0 0 50px;
}

#new-brand-page.mastercraft-landing-page .shop-with-us {
  text-align: right;
}

#new-brand-page.mastercraft-landing-page .shop-with-us h2 {
  font-family: "Arial Narrow", arial, sans-serif;
  font-size: 1.5em;
  margin-right: 10px;
}

#new-brand-page.mastercraft-landing-page .shop-with-us img {
  margin-top: 12px;
}

#new-brand-page.mastercraft-landing-page .here {
  font-weight: 700;
}

#new-brand-page.mastercraft-landing-page .nbp-subtitle {
  background: #aa1d22;
  font-family: "Arial Narrow", arial, sans-serif;
  font-weight: 700;
}

#new-brand-page.mastercraft-landing-page .nbp-slogan h3 {
  text-transform: uppercase;
}

#new-brand-page.mastercraft-landing-page .small-shop-arrow {
  width: 412px;
  background: url(//a.nd-cdn.us/img/new-brand-pages/small-shop-arrow-mastercraft.png) no-repeat;
}

#new-brand-page.mastercraft-landing-page h3 {
  font-family: "Arial Narrow", arial, sans-serif;
  color: #5c666f;
  text-transform: uppercase;
}

#new-brand-page.mastercraft-landing-page .types-of-mastercraft-tires {
  float: left;
  margin-top: 60px !important;
}

#new-brand-page.mastercraft-landing-page .tomt-image {
  float: left;
}

#new-brand-page.mastercraft-landing-page .learn-more-mastercraft {
  width: 515px;
  background: url(//a.nd-cdn.us/img/new-brand-pages/learn-more-mastercraft.png) no-repeat top right;
  display: block;
  height: 50px;
  margin-top: 20px;
  text-decoration: none;
  color: #000;
  padding: 0 0 0 20px;
  box-sizing: border-box;
  line-height: 50px;
  font-family: "Arial Narrow", arial, sans-serif;
  font-size: 1.5em;
  text-transform: uppercase;
}

#new-brand-page.mastercraft-landing-page .nbt-video {
  float: left;
  width: 30%;
  text-align: center;
}

#new-brand-page.mastercraft-landing-page .nbt-video:nth-of-type(2n) {
  width: 40%;
}

#new-brand-page.mastercraft-landing-page .nbt-video h3 {
  font-size: 1em;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 980px), (max-width: 980px) {
  #crt-list.two-row li, #crt-list.three-row li, #crt-list.four-row li, #crt-list.five-row li {
    float: none;
    width: auto;
  }

  #new-brand-page .shop-with-us h2 {
    font-size: 1.5em;
  }

  #new-brand-page .small-shop-arrow {
    display: block;
    margin-left: 0;
  }

  #new-brand-page .nbp-tiredetails {
    padding: 12px;
    width: 53%;
  }

  #new-brand-page .nbp-specs h3, #new-brand-page h3 {
    font-size: 1em;
  }

  #new-brand-page .nbp-brandslogan, #new-brand-page .nbp-keybenefits {
    height: auto;
    min-height: auto;
    padding: 0;
    float: none;
    width: auto;
  }

  #new-brand-page .nbp-brandslogan {
    border: none;
    margin-bottom: 10px;
  }

  #new-brand-page .nbp-disclaimer {
    font-size: 0.75em;
  }

  /* MICHELIN PAGES */
  #new-brand-page.michelin-landing-page .nbp-title {
    padding: 15px 0 0 20px;
  }

  #new-brand-page.uniroyal-landing-page .nbp-specs, #new-brand-page.uniroyal-landing-page .nbp-tiredetails {
    width: auto;
  }

  /* COOPER PAGES */
  #new-brand-page.cooper-landing-page .nbt-video, #new-brand-page.cooper-landing-page .nbt-video:last-of-type {
    float: none;
    width: 45%;
    margin: 0 auto 10px;
  }

  #new-brand-page.cooper-landing-page .toct-image {
    width: 50%;
  }

  #new-brand-page.cooper-landing-page .types-of-cooper-tires {
    margin-top: 0 !important;
  }

  /* MASTERCRAFT PAGES */
  #new-brand-page.mastercraft-landing-page .nbt-video, #new-brand-page.mastercraft-landing-page .nbt-video:nth-of-type(2n) {
    float: none;
    width: 80%;
    margin: 0 auto 10px;
  }

  #new-brand-page.mastercraft-landing-page .tomt-image {
    width: 50%;
  }

  #new-brand-page.mastercraft-landing-page .types-of-mastercraft-tires {
    margin-top: 0 !important;
  }
}
@media only screen and (min-device-width: 768px) and (max-device-width: 980px), (max-width: 980px) and (min-width: 640px) {
  #new-brand-page .shop-with-us img {
    max-height: 60px !important;
  }

  #new-brand-page .shop-with-us {
    margin-bottom: 75px;
  }

  #new-brand-page.michelin-landing-page .shop-with-us {
    margin-bottom: 65px;
  }
}
@media only screen and (max-width: 640px) {
  #new-brand-page .nbp-specs img {
    float: none !important;
    margin: 0 auto !important;
    display: block;
  }

  #new-brand-page .nbp-specs h3 {
    text-align: center;
  }

  #new-brand-page {
    max-width: 590px;
    margin: 0 auto;
  }

  #new-brand-page .shop-with-us {
    margin-bottom: 5px;
    line-height: normal;
  }

  #new-brand-page .small-shop-arrow {
    float: right;
    clear: right;
    width: 200px;
    margin-top: 20px;
    background-position: top right;
  }

  #new-brand-page .nbp-tire-container {
    display: block;
  }

  #new-brand-page .nbp-tiredetails {
    width: auto;
    float: none;
    margin: 0;
  }

  #new-brand-page .nbp-specs {
    width: auto;
    float: none;
    max-width: none;
    overflow: hidden;
    margin-bottom: 10px;
  }

  #new-brand-page .nbp-title h2 {
    height: 60px;
    position: relative;
    display: block;
    margin: 0 0 5px !important;
  }

  #new-brand-page .nbp-title h2 .responsive-titling {
    position: absolute;
    width: 100%;
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  #new-brand-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 5px;
    max-height: 70px !important;
    width: auto !important;
  }

  /* MICHELIN PAGES */
  #new-brand-page.michelin-landing-page .nbp-title {
    background: url(//a.nd-cdn.us/img/new-brand-pages/michelin-banner.jpg) no-repeat top center;
    box-sizing: border-box;
    height: 230px;
    padding: 15px 10px 0;
  }

  #new-brand-page.michelin-landing-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 10px;
  }

  #new-brand-page.michelin-landing-page .promise-plan-arrow {
    display: block;
    text-align: center;
  }

  #new-brand-page img[src*="michelin-tire-image.jpg"] {
    width: 200px;
    height: auto;
  }

  #new-brand-page img[src*="michelin-promise-plan.png"] {
    width: 150px;
    height: auto;
    margin-bottom: 30px !important;
  }

  /* BFGOODRICH PAGES */
  #new-brand-page.bfgoodrich-landing-page .nbp-title {
    background: url(//a.nd-cdn.us/img/new-brand-pages/bfgoodrich-banner.jpg) no-repeat top center;
    box-sizing: border-box;
    height: 230px;
    padding: 15px 10px 0;
  }

  #new-brand-page.bfgoodrich-landing-page .nbp-title h2 {
    min-height: 40px;
  }

  #new-brand-page.bfgoodrich-landing-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 5px;
  }

  #new-brand-page.bfgoodrich-landing-page .shop-for-tires-here {
    background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-bfgoodrich-tires-small.png) no-repeat top center;
    color: #FFF;
    width: 407px;
    height: 55px;
    font-size: 28px;
    line-height: 55px;
  }

  /* UNIROYAL PAGES */
  #new-brand-page.uniroyal-landing-page .nbp-title {
    background: url(//a.nd-cdn.us/img/new-brand-pages/uniroyal-banner.jpg) no-repeat top center;
    box-sizing: border-box;
    height: 230px;
    padding: 15px 10px 0;
  }

  #new-brand-page.uniroyal-landing-page .nbp-title h2 {
    min-height: 40px;
  }

  #new-brand-page.uniroyal-landing-page .shop-for-tires-here {
    background: url(//a.nd-cdn.us/img/new-brand-pages/shop-for-uniroyal-tires-small.png) no-repeat top center;
    color: #FFF;
    width: 407px;
    height: 55px;
    font-size: 28px;
    line-height: 55px;
  }

  #new-brand-page .nbp-title {
    position: relative;
  }

  #new-brand-page .shop-for-tires-here {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100% !important;
    text-align: center;
    padding-left: 0;
  }

  #new-brand-page.michelin-landing-page .shop-for-tires-here {
    background: #FFEA00;
  }

  #new-brand-page.bfgoodrich-landing-page .shop-for-tires-here {
    background: #004785;
  }

  #new-brand-page.uniroyal-landing-page .shop-for-tires-here {
    background: #EE3B33;
  }

  #new-brand-page.michelin-landing-page .shop-for-tires-here, #new-brand-page.bfgoodrich-landing-page .shop-for-tires-here, #new-brand-page.uniroyal-landing-page .shop-for-tires-here {
    font-size: 22px;
  }

  #new-brand-page .nbp-tiredetails {
    padding: 12px 12px 30px;
  }

  #new-brand-page .nbp-tiredetails a {
    bottom: 10px;
  }

  /* CONTINENTAL PAGES */
  #new-brand-page.continental-landing-page .nbp-title {
    background: url(//a.nd-cdn.us/img/new-brand-pages/continental-banner.jpg) no-repeat top center;
    box-sizing: border-box;
    height: 230px;
    padding: 15px 10px 0;
  }

  #new-brand-page.continental-landing-page .nbp-title h2 {
    min-height: 40px;
  }

  #new-brand-page.continental-landing-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 5px;
  }

  #new-brand-page.continental-landing-page .shop-for-tires-here {
    background: #DBDFE7;
    width: 100%;
    height: 55px;
    font-size: 28px;
    line-height: 55px;
  }

  /* COOPER PAGES */
  #new-brand-page.cooper-landing-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 10px;
  }

  #new-brand-page.cooper-landing-page .nbt-video, #new-brand-page.cooper-landing-page .nbt-video:last-of-type {
    width: 60%;
  }

  #new-brand-page.cooper-landing-page .shop-with-us h2 {
    display: none;
  }

  #new-brand-page.cooper-landing-page .promise-plan-arrow {
    display: block;
    text-align: center;
  }

  #new-brand-page.cooper-landing-page .nbt-video, #new-brand-page.cooper-landing-page .nbt-video:last-of-type {
    float: none;
    width: 60%;
    margin: 0 auto 10px;
  }

  #new-brand-page.cooper-landing-page .shop-for-tires-here {
    background: #C3C5C8;
  }

  #new-brand-page.cooper-landing-page .learn-more-cooper .shop-online {
    display: none;
  }

  #new-brand-page.cooper-landing-page .learn-more-cooper .learn-about {
    float: none;
  }

  #new-brand-page.cooper-landing-page .toct-image {
    width: 100%;
  }

  #new-brand-page.cooper-landing-page .types-of-cooper-tires {
    margin-top: 20px !important;
    font-size: 1.5em;
  }

  #new-brand-page.cooper-landing-page .learn-more-cooper {
    background: #C3C5C8;
    text-align: center;
    padding: 2%;
  }

  #new-brand-page.cooper-landing-page .small-shop-arrow, #new-brand-page.cooper-landing-page .learn-more-cooper {
    width: 100%;
    background: #C3C5C8;
    padding: 20px;
    line-height: normal;
    height: auto;
  }

  /* MASTERCRAFT PAGES */
  #new-brand-page.mastercraft-landing-page .nbp-title img {
    float: none !important;
    clear: both;
    margin-bottom: 10px;
  }

  #new-brand-page.mastercraft-landing-page .nbt-video, #new-brand-page.cooper-landing-page .nbt-video:last-of-type {
    width: 60%;
  }

  #new-brand-page.mastercraft-landing-page .shop-with-us h2 {
    display: none;
  }

  #new-brand-page.mastercraft-landing-page .promise-plan-arrow {
    display: block;
    text-align: center;
  }

  #new-brand-page.mastercraft-landing-page .nbt-video, #new-brand-page.cooper-landing-page .nbt-video:last-of-type {
    float: none;
    width: 60%;
    margin: 0 auto 10px;
  }

  #new-brand-page.mastercraft-landing-page .shop-for-tires-here {
    background: #C3C5C8;
  }

  #new-brand-page.mastercraft-landing-page .tomt-image {
    width: 100%;
  }

  #new-brand-page.mastercraft-landing-page .types-of-mastercraft-tires {
    margin-top: 20px !important;
    font-size: 1.5em;
  }

  #new-brand-page.mastercraft-landing-page .small-shop-arrow, #new-brand-page.mastercraft-landing-page .learn-more-mastercraft {
    width: 100%;
    background: #C3C5C8;
    padding: 20px;
    line-height: normal;
    height: auto;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Michelin Promise Plan           =
=============================================*/
#michelin-promise-plan ul {
  margin-left: 58px;
  margin-top: -1.12em;
  margin-bottom: 1.5em;
  padding-left: 0px;
  display: block;
  list-style: none;
}

#michelin-promise-plan li {
  display: list-item;
  margin-bottom: 0.25em;
  list-style: none;
  line-height: normal;
}

.michelin-promise-plan1 {
  margin-bottom: 0 !important;
  background: url(//a.ndrv.in/img/pages/michelin-promise-plan/michelin-promise-plan-icon-1.png) no-repeat;
  text-indent: 58px;
  line-height: 48px !important;
  height: 48px;
}

.michelin-promise-plan2 {
  margin-bottom: 0 !important;
  background: url(//a.ndrv.in/img/pages/michelin-promise-plan/michelin-promise-plan-icon-2.png) no-repeat;
  text-indent: 58px;
  line-height: 48px !important;
  height: 48px;
}

.michelin-promise-plan3 {
  margin-bottom: 0 !important;
  background: url(//a.ndrv.in/img/pages/michelin-promise-plan/michelin-promise-plan-icon-3.png) no-repeat;
  text-indent: 58px;
  line-height: 48px !important;
  height: 48px;
}

.michelin-promise-plan4 {
  margin-bottom: 0 !important;
  background: url(//a.ndrv.in/img/pages/michelin-promise-plan/michelin-promise-plan-icon-4.png) no-repeat;
  line-height: 48px !important;
  text-indent: 58px;
  height: 48px;
}

/*============================================================================================================================*/
/*=============================================
=            Custom Page Styles              =
=============================================*/
div[id*=HtmlModule_lblContent] .content-section {
  padding: 2% 0;
}

div[id*=HtmlModule_lblContent] .content-section:first-of-type {
  padding-top: 0;
}

div[id*=HtmlModule_lblContent] .content-section:last-of-type {
  padding-bottom: 0;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(even)::before {
  background: #000;
  opacity: 0.15;
  content: "";
  width: 500%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: -200%;
  overflow: hidden;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(even) {
  z-index: 1;
  position: relative;
  padding: 2% 0;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(even) img:first-of-type {
  float: left;
  margin: 0 2% 2% 0;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(odd) img:first-of-type {
  float: right;
  margin: 0 0 2% 2%;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(even) .ndcustombuttonformat img {
  float: none !important;
  margin: 0 5px 0 0 !important;
}

div[id*=HtmlModule_lblContent] .content-section:nth-of-type(odd) .ndcustombuttonformat img {
  float: none !important;
  margin: 0 5px 0 0 !important;
}

div[id*=HtmlModule_lblContent] .content-section:after {
  clear: both;
  content: "";
  display: block;
}

@media only screen and (max-width: 640px) {
  div[id*=HtmlModule_lblContent] .content-section:nth-of-type(even) :not(.ndcustombuttonformat) img:first-of-type {
    float: none;
    margin: 2% auto 2%;
    display: block;
  }

  div[id*=HtmlModule_lblContent] .content-section:nth-of-type(odd) :not(.ndcustombuttonformat) img:first-of-type {
    float: none;
    margin: 2% auto 2%;
    display: block;
  }

  div[id*=HtmlModule_lblContent] .content-section .ndcustombuttonformat {
    clear: both;
  }
}
/* CRT STYLES 
----------------------------------------------------------------------------------------------------*/
.crt-rounded {
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

#crt-list.two-row li {
  width: 45%;
  float: left;
  margin-right: 2%;
}

#crt-list.three-row li {
  width: 31%;
  float: left;
  margin-right: 2%;
}

#crt-list.four-row li {
  width: 23%;
  float: left;
  margin-right: 2%;
}

#crt-list.five-row li {
  width: 18%;
  float: left;
  margin-right: 2%;
}

/*============================================================================================================================*/
/*=============================================
=          Control Panel & Admin Bar          =
=============================================*/
#tab-id {
  clear: left;
}

#tab-id, #portal-guid {
  display: inline-block;
  float: right;
  font-weight: bold;
  line-height: 30px;
  margin: 0 10px;
}

#admin-bar #portal-id {
  display: inline-block;
  float: right;
  line-height: 30px;
  margin: 0 !important;
}

#adminLink, #hostLink {
  display: none;
}

.ControlPanel {
  width: 960px;
  margin: 40px auto 10px !important;
  background: #FFFFFF;
}

/* SHARED MODULE ADMIN STYLES
----------------------------------------------------------------------------------------------------*/
.ndAdminWrapper .ndManMenu, .ndAdminWrapper .ndManPane, .ndAdminWrapper .man-row {
  display: block;
  overflow: hidden;
}

.ndAdminWrapper .ndManMenu ul, .ndAdminWrapper .ndManMenu ul {
  list-style: none outside none !important;
  margin: 0 !important;
}

.ndAdminWrapper .ndManMenu li {
  background: #CCC;
  margin: 3px;
  padding: 3px;
  border: 2px solid #000;
  display: block !important;
  float: left !important;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-box-shadow: 0 0 3px #FFF;
  -webkit-box-shadow: 0 0 5px #FFF;
  box-shadow: 0 0 5px #FFF;
}

.ndAdminWrapper .ndManMenu li a {
  color: #00F;
  font-weight: 700;
}

.ndAdminWrapper .ndManPane {
  padding-top: 3px;
  border-top: 3px groove #666;
}

.ndAdminWrapper .man-lbl {
  display: inline-block;
  width: 100px;
}

.ndAdminWrapper .man-txt, .ndAdminWrapper .man-ddl {
  width: 400px;
}

.ndAdminWrapper .man-btn {
  background: #C00;
  color: #FF0;
  font-weight: 700;
  padding: 3px;
  border: 2px solid #000;
  display: block !important;
  float: left !important;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-box-shadow: 0 0 5px #FFF;
  -webkit-box-shadow: 0 0 5px #FFF;
  box-shadow: 0 0 5px #FFF;
}

.ndAdminWrapper .man-msg {
  background: #333;
  color: #F00;
  font-size: 14px;
  font-weight: 700;
  line-height: 24px;
}

/* FOR ADMIN PANEL (ADMIN BAR) */
@media only screen and (max-width: 1400px) {
  #adminpanel {
    font-size: 16px !important;
  }

  #site-vars {
    display: none;
  }
}
/*============================================================================================================================*/
/*=============================================
=                Cooper Reviews              =
=============================================*/
/* COOPER REVIEWS TEMP */
#cooper-reviews .cooper-review {
  padding-bottom: 10px;
  border-bottom: 1px solid #CCC;
  margin-bottom: 10px;
}

#cooper-reviews .cooper-review:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}

#cooper-reviews .cooper-review .stars {
  display: inline-block;
  vertical-align: middle;
  width: 125px;
  height: 22px;
  background: url(//a.nd-cdn.us/img/cooper-reviews/review-stars.png) no-repeat center center;
}

#cooper-reviews .cooper-review .stars.one-of-five {
  background-position: -100px center;
}

#cooper-reviews .cooper-review .stars.two-of-five {
  background-position: -75px center;
}

#cooper-reviews .cooper-review .stars.three-of-five {
  background-position: -50px center;
}

#cooper-reviews .cooper-review .stars.four-of-five {
  background-position: -25px center;
}

#cooper-reviews .cooper-review .stars.five-of-five {
  background-position: 0 left;
}

#cooper-reviews .cooper-review .date {
  font-size: 95%;
  margin-bottom: 10px;
}

#cooper-reviews .cooper-review .review-author {
  display: inline-block;
  vertical-align: middle;
  line-height: 22px;
  margin-left: 10px;
}

#cooper-reviews .cooper-review .stars img {
  float: left;
}

#cooper-reviews .cooper-review .recommend {
  margin: 10px 0 20px;
}

#cooper-reviews .cooper-review h3 {
  margin: 10px 0;
}

#cooper-reviews .cooper-review .ratings {
  text-transform: uppercase;
}

#cooper-reviews .cooper-review .ratings li {
  width: 20%;
  margin-right: 8%;
  float: left;
  list-style: none;
  margin-bottom: 10px;
}

#cooper-reviews .cooper-review .ratings .rating-scale {
  height: 16px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  margin-top: 5px;
  overflow: hidden;
  position: relative;
  width: 80%;
}

#cooper-reviews .cooper-review .ratings .rating-scale::after {
  background: #CCCCCC;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  display: block;
  content: "";
}

#cooper-reviews .cooper-review .ratings .rating-scale.one-of-five::after {
  width: 80%;
}

#cooper-reviews .cooper-review .ratings .rating-scale.two-of-five::after {
  width: 60%;
}

#cooper-reviews .cooper-review .ratings .rating-scale.three-of-five::after {
  width: 40%;
}

#cooper-reviews .cooper-review .ratings .rating-scale.four-of-five::after {
  width: 20%;
}

#cooper-reviews .cooper-review .ratings .rating-scale.five-of-five::after {
  width: 0;
}

/*============================================================================================================================*/
/*=============================================
=      Best One Experts Panel Styles         =
=============================================*/
.ask-experts-container {
  width: 320px;
  padding: 10px;
  background: #FFF;
  border: 1px solid #BBB;
}

.ask-experts {
  font-size: 24px;
  color: #000;
  font-weight: 700;
  margin: 0 0 10px;
}

.e-panelist {
  margin-bottom: 10px;
}

.e-panelist img {
  float: left;
  margin: 0 5px 0 0;
}

.e-panelist p {
  float: right;
  width: 50%;
  padding-top: 10px;
}

#BestOneExpertPanel_Contents #article {
  height: auto !important;
  min-height: 20px !important;
}

/*============================================================================================================================*/
/*=============================================
=            Custom Page Banner              =
=============================================*/
#cpb {
  position: relative;
  z-index: 1;
  height: 100px;
  margin-top: -1%;
  outline: 2px solid #000;
  outline-offset: -2px;
}

#cpb + .opening-banner {
  margin: 0;
}

#cpb img {
  width: 100%;
  height: auto;
}

#cpb.cpb-car-audio {
  background: url(//a.nd-cdn.us/img/custom-page-banners/car-stereo-980.png) no-repeat top left;
}

#cpb.cpb-hybrid-service {
  background: url(//a.nd-cdn.us/img/custom-page-banners/hybrid-service-980.png) no-repeat top left;
}

#cpb.cpb-comm-alignment {
  background: url(//a.nd-cdn.us/img/custom-page-banners/commercial-alignment-980.png) no-repeat top left;
}

#cpb.cpb-lift-kits {
  background: url(//a.nd-cdn.us/img/custom-page-banners/lift-kits-980.png) no-repeat top left;
}

#cpb.cpb-towing {
  background: url(//a.nd-cdn.us/img/custom-page-banners/towing-conventional-980.png) no-repeat top left;
}

#cpb.cpb-truck-accessories {
  background: url(//a.nd-cdn.us/img/custom-page-banners/truck-accessories-980.png) no-repeat top left;
}

#cpb.cpb-24-hour-towing {
  background: url(//a.nd-cdn.us/img/custom-page-banners/24-hour-towing-980.png) no-repeat top left;
}

#cpb.cpb-wheel-alignment {
  background: url(//a.nd-cdn.us/img/custom-page-banners/alignment-980.png) no-repeat top left;
}

/* INCOMPLETE */
#cpb.cpb-retreading {
  background: url(//a.nd-cdn.us/img/custom-page-banners/retreading.png) no-repeat top left;
}

#cpb.cpb-remote-starters {
  background: url(//a.nd-cdn.us/img/custom-page-banners/remote-start-980.png) no-repeat top left;
}

#cpb.cpb-fleet-services {
  background: url(//a.nd-cdn.us/img/custom-page-banners/fleetservice-980.png) no-repeat top left;
}

#cpb.cpb-24-hour-roadside-assistance {
  background: url(//a.nd-cdn.us/img/custom-page-banners/roadside-assistance-980.png) no-repeat top left;
}

#cpb.cpb-brake-repair {
  background: url(//a.nd-cdn.us/img/custom-page-banners/alignment-980.png) no-repeat top left;
}

#cpb.cpb-winter-tires {
  background: url(//a.nd-cdn.us/img/custom-page-banners/winter-tires-980.png) no-repeat top left;
}

#cpb.cpb-used-tires {
  background: url(//a.nd-cdn.us/img/custom-page-banners/used-tires-980.png) no-repeat top left;
}

#cpb.cpb-brake-repair {
  background: url(//a.nd-cdn.us/img/custom-page-banners/alignment-980.png) no-repeat top left;
}

#cpb .cpb-content {
  position: absolute;
  left: 30%;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 2%;
  color: #FFF;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  font-size: 1em;
  font-weight: 700;
  -moz-box-shadow: 2px 2px 2px #000;
  -webkit-box-shadow: 2px 2px 2px #000;
  box-shadow: 2px 2px 2px #000;
  text-shadow: 2px 2px 2px #000;
  text-transform: uppercase;
  width: 63%;
  line-height: normal;
}

/*============================================================================================================================*/
/*=============================================
=            Demand Force Reviews            =
=============================================*/
.d3cp_review_main {
  width: 100% !important;
  float: none !important;
}

#D3cpWidget {
  width: 100% !important;
}

.d3cp_review_order {
  margin: 3% 0 !important;
  padding: 0 2% !important;
}

.d3cp_feature_wrap {
  max-width: 570px !important;
  width: 100% !important;
}

.d3cp_review_box {
  overflow: visible !important;
}

#D3cpWidget hr {
  margin: 2% 0;
}

.d3cp_review_main {
  margin-left: 2%;
  width: 93% !important;
}

.d3cp_review_pic {
  margin-right: 10px;
}

@media only screen and (max-width: 640px) {
  .d3cp_review_pic {
    width: 13% !important;
  }

  .d3cp_feature_wrap {
    padding: 2% !important;
    box-sizing: border-box;
  }

  .d3cp_review_seal_wrap {
    display: none !important;
  }

  .d3cp_itemized_box {
    float: left !important;
  }

  .d3cp_feature_wrap .d3cp_review_box {
    display: none;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Net Driven Admin Menu           =
=============================================*/
#contentmain ul:not(.dnnActionMenuBody):not(.icf_nav-iblock), #contentmain ol:not(.dnnActionMenuBody) {
  margin: 0 0 10px 35px;
  padding-left: 0px;
  display: block;
  unicode-bidi: embed;
  list-style: none outside none;
}

#contentmain #slider ul {
  margin: 0;
}

#contentmain div[id*=HtmlModule] li {
  display: list-item;
  margin-bottom: 10px;
  list-style: disc;
  list-style-position: outside;
  line-height: normal;
}

#contentmain div[id*=HtmlModule] ul.master-list li {
  margin-left: 0;
}

@media only screen and (max-width: 640px) {
  #contentmain ul:not(.dnnActionMenuBody), #contentmain ol:not(.dnnActionMenuBody) {
    margin: 0 0 1% 2%;
  }

  #contentmain div[style*="float:left"] {
    float: none !important;
  }
}
#contentmain p {
  display: block;
  unicode-bidi: embed;
  margin: 0 0 1.12em 0;
}

/*============================================================================================================================*/
/*=============================================
=            Custom banner block             =
=============================================*/
a.ndcb {
  display: inline-block;
  text-decoration: none !important;
  text-transform: uppercase;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  font-weight: 700;
  margin-right: calc(2% - 5px);
  padding: 1%;
  color: #FFF !important;
  position: relative;
  line-height: normal;
  transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
  background: #333;
  font-size: 1.5em;
  box-sizing: border-box;
}

a.ndcb span {
  font-size: 150%;
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 20px;
}

a.ndcb span::after {
  content: "";
  display: inline-block;
  clear: both;
}

a.ndcb.large {
  font-size: 1.875em;
}

a.ndcb:hover {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

@media only screen and (max-width: 640px) {
  a.ndcb {
    display: block;
    width: 80%;
    max-width: inherit;
    margin: 2% auto;
  }

  a.ndcb.large {
    width: 95%;
    font-size: 1.5em;
  }

  a.ndcb:hover {
    -moz-transform: none;
    -webkit-transform: none;
    transform: none;
  }

  .list-container {
    display: block;
    margin: 0 0 2% 0;
  }

  .list-container ul {
    float: none;
    display: block;
  }

  .custom-buttons {
    clear: both;
  }

  img[src*="/tire_brands/logos/logo"], img[src*="/custom-pages/"] {
    display: block;
    margin: 0 auto 2%;
    float: none !important;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Titan Tire Catalog            =
=============================================*/
.titan-catalog {
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 4%;
}

.titan-catalog h2 {
  flex: 1 1 100%;
  color: #ff0000;
  text-align: center;
}

.titan-catalog .titan--product {
  flex: 0 1 300px;
  margin: 10px 0;
  box-sizing: border-box;
  border: solid #000 1px;
  border-radius: 8px;
  transition: all 0.3s ease-in-out;
  font-size: 0.9em;
}

.titan-catalog .titan--product:hover {
  box-shadow: 0 0 20px;
  box-shadow: 0 0 10px #9e9e9e;
}

.titan-catalog .titan--product img {
  display: block;
  margin: 2% auto;
}

.titan-catalog .titan--product--line {
  text-align: center;
  background: #00538C;
  box-sizing: border-box;
  padding: 10px;
  color: #fff;
  font-weight: 700;
  border-radius: 8px 8px 0 0;
}

.titan-catalog .titan--product--size {
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 10px;
  box-sizing: border-box;
}

.titan-catalog .titan--product--size div {
  flex: 1 1 auto;
  text-align: center;
  font-weight: 700;
  font-size: 0.8em;
}

.titan-catalog .titan--product--size div:first-of-type {
  border-right: solid #000 1px;
}

.titan-catalog .titan--product--size div span {
  font-weight: 400;
  font-size: 1.2em;
}

.titan--product--info {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: wrap;
  box-sizing: border-box;
  padding: 10px;
  border-bottom: solid #cbcbcb 1px;
  font-weight: 700;
}

.titan--product--info:nth-child(odd) {
  background: #F0F1F0;
}

.titan--product--info:last-of-type {
  border: 0;
  border-radius: 0 0 8px 8px;
}

.titan--product--info span {
  font-weight: 400;
}

/*============================================================================================================================*/
/*=============================================
=            Common Styles                   =
=============================================*/
html {
  min-height: 100%;
  font-size: 16px;
  overflow-x: hidden;
  box-sizing: border-box;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 100%;
  height: 100%;
}

a, a:link, a:visited {
  text-decoration: underline;
  color: #004990;
}

a:hover, a:active {
  text-decoration: none;
  color: #000;
}

p, #contentmain li {
  line-height: 1.6em;
}

.pc-header::before {
  content: " ";
  width: 500%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: -200%;
}

.ndcustomcolorclass, .ndcustomcolorcontainer img, .subtitle, .pc-header::before, #BottomFooter a[id*=lnkSave]:hover {
  background-color: #004990 !important;
}

.ndcustomtextcolor1, .ndcustomlinkcolor1 {
  color: #004990 !important;
}

.ndcustomtextcolor2, .ndcustomlinkcolor2 {
  color: #000 !important;
}

.ndmoduletextcolor1 {
  color: #004990 !important;
}

.ndmoduletextcolor2 {
  color: #000 !important;
}

.ndcustombutton2 {
  background: #004990 !important;
  color: #fff !important;
}

.ndcustomlinkcolor1:hover, .ndcustomlinkcolor2:hover {
  color: #666666 !important;
}

.ndcustombutton1, .ndcustom2 {
  background: #666666 !important;
  color: #fff !important;
}

.ndcustom1, .ndcustombutton1:hover, .ndcustombutton2:hover {
  background: #000 !important;
  color: #fff !important;
}

.ndcustomborder {
  border: 1px solid #666 !important;
}

.ndcustomcolorclass2 {
  background: #414141 !important;
}

.locwidget-shorthours ul.shortLocHours {
  margin: 5px 0 !important;
}

#ndau-mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  #ndau {
    display: none;
  }

  #ndau-mobile {
    display: block;
    width: 90%;
    margin: 0 auto;
  }

  #ndau-mobile #ndauhours {
    margin: 0;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }

  #ndau-mobile #ndauhours li {
    text-align: center;
    flex: 1 1 100%;
    box-sizing: border-box;
    padding: 0 10px;
  }

  #ndau-mobile #ndauhours li strong {
    float: left;
  }

  #ndau-mobile #ndauhours li span.ndHours {
    float: right;
  }

  #ndau-mobile #ndauhours span.ndhoursInfo:empty {
    display: none;
  }
}
/* QUOTING BADGE
----------------------------------------------------------------------------------------------------*/
a.nd-quotebadge {
  position: fixed;
  z-index: 1000;
  right: 0;
  top: 60%;
  width: 60px;
  transition: padding 100ms ease-in-out;
  -moz-transition: padding 100ms ease-in-out;
  -webkit-transition: padding 100ms ease-in-out;
  text-decoration: none;
  font-weight: 700;
  font-size: 9px;
  text-align: center;
  text-transform: uppercase;
  padding: 10px;
  border-radius: 6px 0 0 6px;
  -moz-border-radius: 6px 0 0 6px;
  -webkit-border-radius: 6px 0 0 6px;
  background: #CCC;
  box-shadow: 0 0 3px #000;
  -moz-box-shadow: 0 0 3px #000;
  -webkit-box-shadow: 0 0 3px #000;
  color: #000;
  line-height: 10px;
}

a.nd-quotebadge i {
  font-size: 34px;
  display: block;
  margin-bottom: 5px;
}

a.nd-quotebadge:hover {
  padding-right: 20px;
}

#quoting-buttons {
  height: 170px;
  position: fixed;
  right: 0;
  top: 45%;
  z-index: 1000;
}

#quoting-buttons a.nd-quotebadge {
  position: absolute;
  top: 0;
}

#quoting-buttons a.nd-quotebadge.tire-cart {
  bottom: 0;
  top: auto;
}

#quoting-buttons a.nd-quotebadge.tire-cart {
  color: #FFF;
}

@media only screen and (min-width: 1024px) {
  #quoting-buttons {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #quoting-buttons {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  a.nd-quotebadge {
    display: none;
  }

  .extra-nav-buttons {
    display: flex;
    border-bottom: 1px solid #FFF;
    padding: 0 20px;
  }

  .extra-nav-buttons a {
    padding: 20px 15px;
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: none;
    flex-grow: 1;
    text-align: center;
    font-size: 1.375em;
  }
}
/* BLOG WIDGET
----------------------------------------------------------------------------------------------------*/
.ModDNNGOxBlogDashBoardC {
  background: #272727;
  padding: 2%;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  height: 240px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
}

.ModDNNGOxBlogDashBoardC .article_list {
  background: #171717;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  color: #CCC;
  padding: 2%;
  position: relative;
  z-index: 1;
  height: 100%;
  box-sizing: border-box;
}

.ModDNNGOxBlogDashBoardC .nav_category {
  display: none;
}

.ModDNNGOxBlogDashBoardC a {
  color: #FFF;
}

.ArticleList_Default, .validationEngineContainer, .ModDNNGOxBlogDashBoardC > div {
  height: 100%;
}

/* CONTAINER HEADER
----------------------------------------------------------------------------------------------------*/
#dnn_SidePane, #dnn_CTCFilterPane {
  width: 30%;
  float: left;
  z-index: 10;
  position: relative;
}

#dnn_SidePane .pc-header {
  overflow: hidden;
}

.location {
  width: 25%;
  padding: 25% 0 2%;
  box-sizing: border-box;
  float: left;
  font-size: 24px;
  font-style: italic;
  color: #FFF !important;
  text-align: center;
  display: block;
  background-size: cover;
  background-size: 400% auto;
  transition: transform 0.2s ease-in-out;
  -moz-transition: transform 0.2s ease-in-out;
  -webkit-transition: transform 0.2s ease-in-out;
}

.location:hover {
  text-shadow: 0 0 6px #FFF;
  text-decoration: none;
}

#dnn_BottomLinksPane {
  font-size: 10px;
  margin: 10px 0 0 5px;
  text-transform: uppercase;
  overflow: hidden;
}

#dnn_BottomLinksPane a, #dnn_BottomLinksPane a:visited {
  font-weight: 700;
}

#dnn_SEOPane, #dnn_BottomLinksPane {
  line-height: normal;
}

#dnn_SEOPane {
  font-size: 10px;
  font-weight: 400;
  overflow: hidden;
}

#dnn_SEOPane p {
  margin-bottom: 10px;
  padding: 0 7px 0 7px;
  font-size: 10px !important;
}

#nd-buttons.contact {
  margin: 10px 0;
}

.coupon-section .see-our-coupons {
  margin: 10% 0;
  width: 100%;
  height: auto;
}

.coupon-section .coupon-wrap {
  margin: 3.5% 0;
}

#dnn_FooterPane4 #LocationWidget .locwidgetlisting .locwidget-name, #dnn_FooterPane4 #LocationWidget .locwidgetlisting .locwidget-addr, #dnn_FooterPane4 #LocationWidget .locwidgetlisting .locwidget-fax {
  display: none;
}

#dnn_FooterPane4 .locwidget-csz {
  margin-bottom: 0;
}

#nd-topbar {
  height: auto;
  padding: 20px 0;
}

.mobile-anchor {
  width: 90%;
  margin: 0 auto;
  transition: top 0.3s ease-in-out;
  left: 4%;
  border: 1px solid #444;
  z-index: 10 !important;
  position: fixed;
  -moz-box-shadow: 0 0 3px #000;
  -webkit-box-shadow: 0 0 3px #000;
  box-shadow: 0 0 3px #000;
}

.mobile-anchor + #ndatc #atcsearchsort {
  margin-top: 81px;
}

#mobile-social {
  display: none;
}

#poweredbynd {
  color: #fff;
  margin: 30px auto 0;
  width: 157px;
  height: 39px;
  padding: 3px 8px 0;
  border-radius: 4px;
  background: #111;
}

#poweredbynd #login a.ndlogo {
  background: url(//a2.nd-cdn.us/Skinning/ND_Badge/nd_logo.png) no-repeat center top;
  width: 57px;
  height: 35px;
  float: left;
  text-indent: -9999px;
}

#poweredbynd #login a.ndlogo:hover {
  background-position: bottom;
}

#poweredbynd #login span {
  float: right;
  text-align: center;
  font-size: 9px;
  margin-top: 5px;
}

#poweredbynd #login span a {
  text-decoration: underline !important;
  color: #fff;
}

#poweredbynd #login span a:hover {
  text-decoration: underline !important;
  color: #ccc;
}

.second-background {
  background: url(img/contentbg.png) no-repeat center 274px;
}

@media only screen and (max-width: 767px) {
  #poweredbynd {
    box-sizing: border-box;
  }

  #poweredbynd #login span {
    font-size: 8px !important;
  }
}
/* SUBTITLE BAR
----------------------------------------------------------------------------------------------------*/
.subtitle {
  color: #fff;
  display: block !important;
  font-weight: 700;
  padding: 10px 20px;
  text-transform: none;
  border: 1px solid #333;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.31) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.31)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.31) 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.31) 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.31) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.31) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#4f000000",GradientType=0 );
}

.subtitle a {
  color: #fff;
}

/* Social Media - Connect with us page
----------------------------------------------------------------------------------------------------*/
.smfont {
  font-weight: 700;
  font-family: "Open Sans", sans-serif;
}

.sm-connect .sm-feed {
  float: left;
  width: 48%;
}

.sm-connect .sm-buttons a {
  color: #fff !important;
  display: block;
  text-decoration: none;
  border-radius: 20px;
  padding: 3% 10%;
  box-sizing: border-box;
  text-align: center;
  margin: 0 5px 30px;
  transition: all ease-in-out 0.2s;
  -moz-transition: all ease-in-out 0.2s;
  -webkit-transition: all ease-in-out 0.2s;
  box-shadow: 0 3px 3px #333;
}

.sm-connect .sm-buttons a:hover {
  background: #999 !important;
  transform: scale(0.95);
  -moz-transform: scale(0.95);
  -webkit-transform: scale(0.95);
  box-shadow: inset 0 3px 3px #333;
}

.sm-connect .sm-buttons a span {
  float: left;
  font-size: 3em;
  margin: 20px 0 0;
}

.sm-connect .sm-buttons a h2 {
  margin: 0;
  font-size: 2.25em;
}

.sm-connect .sm-buttons a p {
  line-height: normal;
  font-size: 1.25em;
  margin: 0 !important;
}

.sm-connect h2.fb-bar {
  background: #3B5998;
  color: #fff;
}

.sm-connect .fb-area .sm-buttons a {
  background: #3B5998;
}

.sm-connect h2.tw-bar {
  background: #5EA9DD;
  color: #fff;
}

.sm-connect .tw-area .sm-buttons a {
  background: #5EA9DD;
}

.sm-connect h2.gp-bar {
  background: #D73D32;
  color: #fff;
}

.sm-connect .gp-area .sm-buttons a {
  background: #D73D32;
}

.sm-connect h2.pt-bar {
  background: #BD081C;
  color: #fff;
}

.sm-connect .pt-area .sm-buttons a {
  background: #BD081C;
}

.sm-connect h2.yp-bar {
  background: #D32323;
  color: #fff;
}

.sm-connect .yp-area .sm-buttons a {
  background: #D32323;
}

.sm-connect h2.fb-bar, .sm-connect h2.tw-bar, .sm-connect h2.gp-bar, .sm-connect h2.pt-bar, .sm-connect h2.yp-bar {
  text-align: center;
  font-size: 2.5em;
  padding: 1% 0;
}

.fb_iframe_widget span, .twitter-timeline, #___person_0, #___person_0 iframe, .PIN_1480714890434_embed_grid PIN_1480714890434_c3 {
  width: 100% !important;
  max-width: 470px;
}

@media only screen and (max-width: 980px) and (min-width: 641px) {
  .fb-page, .fb-page span, .fb-page span iframe[style] {
    width: 100% !important;
  }
}
/* Target Tablet Exclusively */
@media only screen and (max-width: 640px) {
  .sm-connect .sm-feed {
    display: none;
  }

  .sm-connect .sm-buttons {
    float: none;
    width: 100%;
  }

  .sm-connect h2.fb-bar, .sm-connect h2.tw-bar, .sm-connect h2.gp-bar, .sm-connect h2.pt-bar, .sm-connect h2.yp-bar {
    padding: 2% 0;
    font-size: 1.75em;
  }
}
/* Target Phone Exclusively */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #sub-content {
    padding: 2% 0;
  }
}
@media only screen and (max-width: 1023px) {
  .homepage .container {
    padding: 2%;
    box-sizing: border-box;
  }

  .homepage #main-content .container {
    padding: 0;
  }

  #main-content .container {
    padding: 2%;
    box-sizing: border-box;
  }

  .container.mobile-nopadding {
    padding: 0 !important;
  }

  .pc-header::before {
    width: 104%;
    left: -2%;
  }

  .location {
    font-size: 18px;
  }

  .location-dropdown, .call-dropdown {
    display: none;
    background: #272727 !important;
    padding: 5% 5%;
    font-size: 16px;
    color: #FFF;
    left: 5%;
    width: 90% !important;
    font-weight: 700;
  }

  .location-dropdown {
    overflow-y: scroll;
  }

  .location-choice {
    margin-bottom: 5%;
    overflow: hidden;
    border-radius: 6px;
    -moz-border-radius: 6px 6px 0 0;
    -webkit-border-radius: 6px 6px 0 0;
    box-shadow: 0 0 3px #000;
    -moz-box-shadow: 0 0 3px #000;
    -webkit-box-shadow: 0 0 2px #000;
  }

  .location-choice .location-name {
    background: #444;
    padding: 3%;
  }

  .location-choice .location-buttons a {
    display: block;
    padding: 2% !important;
    box-sizing: border-box;
    text-transform: uppercase;
    text-align: center;
    color: #FFF;
    font-size: 14px;
    text-decoration: none;
  }

  .location-choice .location-buttons a:first-of-type {
    float: left;
    width: 50%;
    border-right: 1px solid #333;
    border-radius: 0 0 0 6px;
    -moz-border-radius: 0 0 0 6px;
    -webkit-border-radius: 0 0 0 6px;
  }

  .call-choice {
    margin-bottom: 5%;
    background: #444;
    overflow: hidden;
    border-radius: 6px;
    -moz-border-radius: 6px 6px 0 0;
    -webkit-border-radius: 6px 6px 0 0;
    display: block;
    padding: 2% !important;
    box-shadow: 0 0 3px #000;
    -moz-box-shadow: 0 0 3px #000;
    -webkit-box-shadow: 0 0 2px #000;
  }

  .call-choice:last-of-type {
    margin-bottom: 0;
  }

  .call-choice .name-phone {
    color: #FFF;
    font-size: 14px;
    float: left;
    width: 70%;
  }

  .call-choice .call-button {
    float: right;
    width: 10%;
    height: 100%;
    text-align: center;
    padding: 2%;
    border-radius: 6px;
  }

  .location-choice .location-buttons a:last-of-type {
    float: right;
    width: 50%;
    border-radius: 0 0 6px 0;
    -moz-border-radius: 0 0 6px 0;
    -webkit-border-radius: 0 0 6px 0;
  }

  .gallery_boxs .box {
    width: 24% !important;
    margin: 0.5% !important;
  }

  .location-choice:last-of-type {
    margin: 0;
  }

  .close-button {
    position: absolute;
    top: 0.5%;
    right: 0.5%;
    text-decoration: none !important;
    color: #FFF;
    font-size: 26px !important;
    cursor: pointer;
  }

  .call-button .fa {
    font-size: 26px;
    color: #FFF !important;
  }

  .close-button:hover, .call-button .fa:hover {
    color: #FFF;
  }

  #quoting-buttons #quoting-buttons {
    height: auto;
    position: absolute;
    top: 10px;
  }

  #atcclicktorefinesearch {
    display: block !important;
    -moz-transition: all 200ms ease-in-out;
    -webkit-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
  }

  #dnn_SidePane {
    display: none;
  }

  #dnn_CTCFilterPane {
    width: 100%;
    float: none;
  }

  .nd-mobile-popup {
    opacity: 0;
    position: absolute !important;
    left: 10%;
    width: 80% !important;
    /*height:80%;*/
    box-sizing: border-box;
    box-shadow: #000;
    background: #FFF;
    z-index: 50;
    box-shadow: 0 0 15px #000;
    -moz-box-shadow: 0 0 15px #000;
    -webkit-box-shadow: 0 0 15px #000;
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    overflow: hidden;
  }

  #dnn_SidePane .pc-header {
    padding: 2%;
  }

  #dnn_SidePane .pc-header h1 {
    margin: 0;
    color: #FFF;
  }

  #dnn_SidePane .pc-body {
    padding: 2%;
  }

  #dnn_SidePane .close-window {
    text-transform: lowercase;
    float: right;
    text-decoration: none;
    color: #FFF;
    cursor: pointer;
  }

  .view-testimonials, .community-heroes, .slider-image {
    width: 100%;
  }

  .tpms {
    max-width: 20%;
  }

  .tabletButtons {
    display: block;
  }

  #contentnav {
    width: 100%;
    padding: 0;
  }

  #brands img {
    width: auto;
    height: auto;
  }

  /* Permanent Styles */
  .container {
    width: 100%;
  }

  #main-content .container {
    padding-top: 0;
  }

  #netdriven {
    width: 100%;
    box-sizing: border-box;
    padding: 0 2% 12%;
  }

  .ndcustombutton1, .ndcustombutton2 {
    display: block;
    margin-bottom: 5px;
    text-align: center;
    padding-top: 8px 0;
  }

  .atctypeimage, .atccategoryimage {
    display: block;
  }

  #locations {
    background: url(img/locations.png) no-repeat;
    background-size: 100% auto;
  }

  .nd-slidewindow .atcSideFilter {
    color: #FFF;
  }
}
@media only screen and (max-width: 767px) {
  .subtitle {
    padding: 1%;
  }

  .subtitle + * {
    padding: 1%;
  }

  #EntryForm input[type=text], #EntryForm select, #EntryForm textarea {
    font-size: 16px !important;
  }

  /* CONTAINER HEADER
  ----------------------------------------------------------------------------------------------------*/
  .pc-header h1, .pc-title h1, .pc-header::before, .pc-title::before {
    font-size: 22px;
  }

  img.mobile-image-full {
    width: 75%;
    height: auto;
    margin: 2% auto !important;
    display: block;
    clear: both;
    float: none !important;
  }

  .ndmobilehide {
    display: none !important;
  }

  .nd-mobile-only {
    display: block;
  }

  .gallery_boxs .box {
    width: 48% !important;
    margin: 0.5% !important;
  }

  #ndatc #tiresidewall_animation, #ndatc .atcSideFilter {
    display: block !important;
  }

  /* Overwrite in module.css */
  #dnn_SidePane:not(.DNNEmptyPane) + #dnn_ContentPane {
    float: none;
    width: auto;
  }

  #atcclicktorefinesearch {
    white-space: normal !important;
    display: none;
  }

  .slider-image {
    width: 100%;
  }

  #bottom-content {
    display: none;
  }

  #nd-topbar {
    display: none;
  }

  .tpms {
    display: none;
  }

  .view-testimonials, .community-heroes {
    display: none;
  }

  .couponsliderview::after {
    content: "";
    display: block;
  }

  /* Navigation Skinner Editable */
  .nd-mobile-search-window {
    position: fixed;
    top: -50%;
    left: 0;
    width: 100%;
    height: 10%;
    background: #444;
    z-index: 1000;
    box-sizing: border-box;
    padding: 1%;
  }

  #nd-topbar {
    box-sizing: border-box;
  }

  *.nd-mobile-app {
    background: #C8C8C8;
    border-radius: 0 0 6px 6px;
    -moz-border-radius: 0 0 6px 6px;
    -webkit-border-radius: 0 0 6px 6px;
    border-left: 3px solid #004990;
    border-bottom: 3px solid #004990;
    border-right: 3px solid #004990;
    padding: 4%;
  }

  table.nd-mobile-app, table.nd-mobile-app tr, table.nd-mobile-app td, table.nd-mobile-app tnd-m, ob, table.nd-mobile-app table {
    display: block;
  }

  /* DNN Control Overrides */
  .ControlPanel {
    display: none !important;
  }

  #nd-topbar {
    position: relative;
    padding: 2%;
  }

  #info {
    padding: 2%;
    margin-bottom: 0;
  }

  .nd-slidewindow {
    position: fixed;
    width: 80% !important;
    float: none !important;
    left: -80%;
    z-index: 100;
    background: #222;
    z-index: 1000;
    overflow: scroll;
    height: 100%;
    box-sizing: border-box;
    box-shadow: -20px 0 20px #000 inset;
    -moz-box-shadow: -20px 0 20px #000 inset;
    -webkit-box-shadow: -20px 0 20px #000 inset;
    display: block !important;
    top: 0;
  }

  .nd-slidewindow .atcSideFilter {
    color: #FFF;
  }

  .nd-mobilehide {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  #mapview {
    min-width: auto !important;
  }

  #maplegendwrapper #autocomplete {
    float: none !important;
    width: 100% !important;
    box-sizing: border-box;
    height: auto !important;
    padding: 2% !important;
  }

  #maplegendwrapper #btnMapSearch {
    float: none !important;
    width: 100% !important;
    box-sizing: border-box;
    height: auto !important;
    overflow: hidden;
    padding: 1% !important;
  }
}
.post_thum_img img {
  vertical-align: middle;
}

#HouseMenuNav, #HouseMenuNav ul, #HouseMenuNav li, #HouseMenuNav a {
  z-index: 55555 !important;
}

#fancybox-wrap, #fancybox-tmp, #fancybox-loading, #jquery-lightbox {
  z-index: 999999 !important;
}

.padding-radio {
  margin: 0 20px 10px;
}

@media only screen and (max-width: 640px) {
  .padding-radio {
    margin: 0 0 2%;
  }
}
#nd-mobile-only {
  display: none;
}

#dnn_SidePane {
  width: 30%;
  float: left;
}

#dhtmlpointer {
  display: none;
}

.dnnActionMenu {
  z-index: 10 !important;
}

#responsive-test-panel-new {
  display: none;
}

@media only screen and (min-width: 1024px) {
  .shared-width {
    width: 65%;
    float: right;
  }
}
.cw-ul {
  list-style: disc;
}

.cw-ul.circle {
  list-style: circle;
}

.cw-ul.square {
  list-style: circle;
}

.cw-ol {
  list-style: numeric;
}

.cw-ol.roman {
  list-style: upper-roman;
}

.cw-ol.roman ul {
  list-style: lower-roman;
}

.cw-ol.upper-alpha {
  list-style: upper-alpha;
}

.cw-ol.upper-alpha ol {
  list-style: lower-alpha;
}

.cw-ol.lower-alpha {
  list-style: lower-alpha;
}

/*=============================================
=            Animation Effects               =
=============================================*/
/*----------  Lifts Element 10px  ----------*/
.hvr-lift {
  transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
}

.hvr-lift:hover {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

/*----------  Lowers Element 10px  ----------*/
.hvr-sink {
  transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
}

.hvr-sink:hover {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

/*----------  Shrink & Rotate Element  ----------*/
a.shrink, a.rotate {
  transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
}

a.shrink:hover {
  transform: scale(0.9);
  -moz-transform: scale(0.9);
  -ms-transform: scale(0.9);
  -o-transform: scale(0.9);
  -webkit-transform: scale(0.9);
}

a.rotate:hover {
  transform: rotate(360deg) scale(0.9);
  -moz-transform: rotate(360deg) scale(0.9);
  -ms-transform: rotate(360deg) scale(0.9);
  -o-transform: rotate(360deg) scale(0.9);
  -webkit-transform: rotate(360deg) scale(0.9);
}

/* SOCIAL MEDIA 
----------------------------------------------------------------------------------------------------*/
#dnn_SocialPane {
  position: fixed;
  right: 0;
  top: 20%;
  z-index: 60;
}

#dnn_SocialPane #social .fa-facebook, #dnn_SocialPane #social .fab.fa-facebook-f {
  background: #3B5998;
}

#dnn_SocialPane #social .fa-twitter, #dnn_SocialPane #social .fab.fa-twitter {
  background: #5EA9DD;
}

#dnn_SocialPane #social .fa-google, #dnn_SocialPane #social .fab.fa-google {
  background: #D73D32;
}

#dnn_SocialPane #social .fa-linkedin, #dnn_SocialPane #social .fab.fa-linkedin-in {
  background: #0177B5;
}

#dnn_SocialPane #social .fa-yelp, #dnn_SocialPane #social .fab.fa-yelp {
  background: #C41200;
}

#dnn_SocialPane #social .fa-instagram, #dnn_SocialPane #social .fab.fa-instagram {
  background: #8a3ab9;
}

#dnn_SocialPane #social .fa-youtube, #dnn_SocialPane #social .fab.fa-youtube {
  background: #CC181E;
}

#dnn_SocialPane #social .fa-rss, #dnn_SocialPane #social .fas.fa-rss {
  background: #f26522;
}

#dnn_SocialPane #social a {
  font-size: 26px;
  width: 45px;
  text-align: center;
  text-decoration: none;
  float: right;
  clear: right;
  box-sizing: border-box;
  color: #FFF;
  padding: 8px;
  display: block;
  transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
}

@media only screen and (min-width: 1024px) {
  #dnn_SocialPane #social a:hover {
    padding-right: 20px;
    width: 65px;
    text-decoration: none;
  }
}
@media only screen and (max-width: 640px) and (orientation: landscape) {
  #dnn_SocialPane {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .phoneSocialBar {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 10%;
    width: 100%;
    z-index: 10000;
  }

  #dnn_SocialPane {
    bottom: 0;
    left: 0;
    width: 100%;
    top: auto;
  }

  #dnn_SocialPane #socialfont a {
    float: left;
  }

  #dnn_SocialPane #socialfont.one-set a {
    width: 100%;
  }

  #dnn_SocialPane #socialfont.two-set a {
    width: 50%;
  }

  #dnn_SocialPane #socialfont.three-set a {
    width: 33%;
  }

  #dnn_SocialPane #socialfont.three-set a:nth-of-type(2) {
    width: 34%;
  }

  #dnn_SocialPane #socialfont.four-set a {
    width: 25%;
  }

  #dnn_SocialPane #socialfont.five-set a {
    width: 20%;
  }

  #top-social {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
    margin: 4% 0;
  }

  #top-social a {
    flex: 0 1 auto;
    text-decoration: none;
    text-align: center;
    font-size: 2.2em;
    margin: 10px 20px;
  }
}
/*=============================================
=            Header Element Styles            =
=============================================*/
.mobile-menu-space {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader {
    height: auto;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
  }
}
@media only screen and (max-width: 1023px) {
  #dnn_HeaderContactPane {
    float: none !important;
    margin: 0 auto;
    display: block;
  }

  #dnn_dnnLogo_imgLogo {
    float: none !important;
    margin: 0 auto;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  #contentheader {
    padding-top: 75px !important;
  }

  #dnn_dnnLogo_imgLogo {
    max-width: 60%;
    padding-top: 90px;
  }

  #headercontact {
    display: none;
  }
}
#dnn_ActionBarPane .DNNModuleContent {
  overflow: visible;
}

#nd-actionbar {
  background: #004990;
  box-sizing: border-box;
  z-index: 15;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

#nd-actionbar .container {
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 10px 20px;
}

#dnn_ActionBarPane {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  align-items: center;
  box-sizing: border-box;
}

#nd-actionbar #dnn_ActionBarPane .DnnModule {
  flex: 0 1 auto;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #nd-actionbar {
    margin-top: 50px;
    padding: 0;
    border-top: solid #fff 2px;
  }

  #nd-actionbar .container {
    padding: 10px 30px !important;
  }
}
@media only screen and (max-width: 767px) {
  #nd-actionbar {
    display: none;
  }
}
#header {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

#contentnav {
  height: 50px;
  width: 980px;
  z-index: 10;
  position: relative;
}

#contentnav #dnnMenu ul.topLevel {
  display: flex;
  justify-content: space-around;
}

#contentnav #dnnMenu a {
  text-transform: uppercase;
  color: #fff;
  display: block;
  font-size: 1em;
  text-decoration: none;
  transition: all 0.25s ease;
  font-weight: 700;
}

#contentnav #dnnMenu .topLevel li {
  line-height: 50px;
  list-style-type: none;
  position: relative;
  display: block;
  text-align: center;
  flex: 1 1 auto;
}

#contentnav #dnnMenu .subLevel li {
  text-align: left !important;
}

#contentnav #dnnMenu .subLevel {
  background: #fff;
}

#contentnav #dnnMenu .single-column li a, #contentnav #dnnMenu .double-column li a {
  box-sizing: border-box;
  padding: 0 10px;
}

#contentnav #dnnMenu .subLevel, #contentnav #dnnMenu .subLevel .subLevelRight ul {
  display: none;
  position: absolute;
  width: auto;
  margin: 0;
  padding: 0;
  z-index: 1210;
  left: 0;
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
}

@media only screen and (min-width: 1024px) {
  #contentnav #dnnMenu .subLevel .subLevelRight ul li {
    text-align: center !important;
  }

  #contentnav {
    margin: 0 auto;
  }

  #contentnav #dnnMenu ul.topLevel {
    display: flex;
    justify-content: space-between;
  }

  #contentnav #dnnMenu ul.topLevel li {
    flex: 1 1 auto;
    text-align: center;
  }

  #contentnav #dnnMenu .subLevel, #contentnav #dnnMenu .subLevel .subLevelRight ul {
    display: none;
    opacity: 0;
    top: 35px;
    transition: all 0.25s ease;
    width: 280px;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight ul {
    top: 0;
  }

  #contentnav #dnnMenu .topLevel li.haschild:hover .subLevel, #contentnav #dnnMenu .topLevel li.haschild:active .subLevel, #contentnav #dnnMenu .topLevel li.haschild:focus .subLevel {
    opacity: 1;
    top: 50px;
    display: block;
  }

  /* Single Column Styles */
  #contentnav #dnnMenu .single-column {
    width: 260px;
  }

  #contentnav #dnnMenu .single-column li a {
    border-bottom: 1px solid #888;
  }

  /* Double Column Styles */
  #contentnav #dnnMenu .subLevel.double-column ul {
    display: flex;
    flex-flow: row wrap;
    width: 430px;
  }

  #contentnav #dnnMenu .subLevel.double-column li {
    flex: 0 1 50% !important;
  }

  #contentnav #dnnMenu .subLevel.double-column li a {
    border-bottom: 1px solid #888;
    border-right: 1px solid #888;
  }

  #contentnav #dnnMenu .double-column li a:nth-of-type(even) {
    border: 0;
  }

  /* Triple Column Styles */
  #contentnav #dnnMenu .triple-column {
    width: 610px;
  }

  #contentnav #dnnMenu .triple-column ul li {
    flex: 0 1 auto;
  }

  #contentnav #dnnMenu .triple-column li a {
    border-bottom: 1px solid #888;
    border-right: 1px solid #888;
  }

  #contentnav #dnnMenu .subLevel li.haschild:hover > .subLevelRight ul {
    display: flex;
    flex-flow: row wrap;
    visibility: visible;
    opacity: 1;
  }

  #contentnav #dnnMenu .subLevel li.haschild .subLevelRight {
    position: absolute;
    top: 0;
    left: 100%;
  }

  .nav-sizer {
    display: block !important;
    left: -9999px !important;
  }

  #nd-menubar.fixed {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
  }

  #contentnav #dnnMenu .subLevel ul {
    width: auto;
  }

  #contentnav #dnnMenu .subLevel li a {
    box-sizing: border-box;
  }

  #contentnav #dnnMenu .single-column li:last-of-type a {
    border: none;
  }

  #contentnav #dnnMenu .single-column li {
    width: 100%;
  }

  #contentnav #dnnMenu .double-column li {
    display: inline-block;
    clear: none;
    text-align: center;
  }

  #contentnav #dnnMenu .subLevel.triple-column li {
    display: table-cell;
    clear: none;
    text-align: center;
    box-sizing: border-box;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight.triple-column ul {
    width: 100%;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight.triple-column li {
    width: 33%;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight.triple-column li:nth-of-type(3n+2) {
    width: 34%;
  }

  .close-window {
    display: none;
  }

  #contentnav #dnnMenu .topLevel li.haschild:hover .subLevel {
    display: block;
  }

  #contentnav #dnnMenu > ul li:nth-last-of-type(-n+3) .subLevel {
    right: 0;
    left: auto;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentnav {
    display: block;
    clear: both;
    width: 100%;
    background: #272727;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
  }

  ul.topLevel {
    display: flex;
    justify-content: space-around;
  }

  #contentnav #dnnMenu .topLevel li:hover > a {
    text-decoration: underline;
  }

  #contentnav #dnnMenu .subLevel {
    white-space: nowrap;
  }

  #contentnav #dnnMenu .subLevel ul, .subLevelRight.double-column ul {
    display: flex;
    flex-direction: column;
    min-width: 100px;
  }

  #contentnav #dnnMenu .subLevel, #contentnav #dnnMenu .subLevel .subLevelRight ul {
    display: none;
    transition: all 0.2ms ease;
    width: 160px;
  }

  #contentnav #dnnMenu .topLevel li.haschild:hover .subLevel, #contentnav #dnnMenu .topLevel li.haschild:active .subLevel, #contentnav #dnnMenu .topLevel li.haschild:focus .subLevel {
    display: block;
  }

  #contentnav #dnnMenu .double-column li {
    width: auto;
  }

  #contentnav #dnnMenu .subLevel li.haschild > .subLevelRight ul {
    left: 130px;
    top: 0;
  }

  #contentnav #dnnMenu .subLevel li.haschild:hover > .subLevelRight ul {
    display: flex;
    flex-direction: column;
    background: #2a2a2a;
    left: 146px;
  }

  #bottomnav ul.topLevel, #menuBrands ul.topLevel {
    display: block;
  }

  #contentnav #dnnMenu > ul li:nth-last-of-type(-n+3) .subLevel {
    right: 0;
    left: auto;
  }
}
@media only screen and (max-width: 1023px) {
  .nav-spacer {
    display: none;
  }

  #contentnav #dnnMenu .single-column, #contentnav #dnnMenu .double-column, #contentnav #dnnMenu .triple-column {
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  #nd-background {
    padding-top: 0;
  }

  #contentnav {
    display: none;
  }

  #contentnav #dnnMenu ul.topLevel {
    display: block;
  }

  #contentnav #dnnMenu .topLevel li {
    text-align: left;
  }

  #contentnav #dnnMenu .double-column li a {
    border-right: none;
  }

  .nd-mobile-window #contentnav {
    display: block;
  }

  #contentnav #dnnMenu .topLevel {
    list-style: none;
    margin: 0 0 -1px;
  }

  #contentnav #dnnMenu .topLevel li {
    list-style: none;
    margin: 0;
    padding: 0;
    float: none;
  }

  #contentnav #dnnMenu .topLevel li.selected:first-child a {
    text-shadow: 0 0 2px #FFF;
  }

  #contentnav #dnnMenu .topLevel a:hover {
    text-decoration: none;
  }

  #contentnav #dnnMenu .subLevel, #contentnav #dnnMenu .subLevel .subLevelRight ul {
    display: none;
    line-height: 1.2em;
    border: none;
    padding: 10px;
    text-transform: uppercase;
    text-shadow: none;
    box-shadow: none;
    left: auto !important;
    top: inherit;
    width: inherit;
    position: relative;
    width: auto;
    padding: 0;
  }

  #contentnav #dnnMenu .subLevel::before {
    position: absolute;
    left: 0;
    top: 0;
    background: #FFF;
    opacity: 0.2;
    width: 100%;
    height: 100%;
    z-index: -1;
    content: "";
  }

  #contentnav #dnnMenu .subLevel li a {
    padding-left: 15px;
  }

  #contentnav #dnnMenu .subLevel ul, #contentnav #dnnMenu .subLevel .subLevelRight ul {
    list-style: none;
    margin: 0;
    padding: 0;
    width: inherit;
    display: block !important;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight li a {
    padding-left: 50px;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight .subLevelRight li a {
    padding-left: 70px;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight .subLevelRight .subLevelRight li a {
    padding-left: 90px;
  }

  #contentnav #dnnMenu .topLevel li a, #contentnav #dnnMenu .topLevel li.selected > a {
    text-shadow: none !important;
  }

  #contentnav #dnnMenu .topLevel li a:first-of-type {
    border-top: none;
  }

  #contentnav #dnnMenu a {
    font-size: 1.5em;
    color: #FFF;
  }

  #contentnav #dnnMenu .topLevel li a:not(.mobile-nav-expand) {
    border-bottom: 1px solid #FFF;
    padding: 15px 10px !important;
    text-transform: uppercase;
    display: block;
    line-height: normal;
  }

  #contentnav #dnnMenu .subLevelRight li a:not(.mobile-nav-expand) {
    border-bottom: 1px solid #FFF;
    padding: 15px 20px !important;
    text-transform: uppercase;
    display: block;
    line-height: normal;
  }

  #contentnav #dnnMenu .subLevel li a:not(.mobile-nav-expand)::before {
    content: "•";
    margin-right: 10px;
  }

  #contentnav #dnnMenu .mobile-nav-expand {
    font-size: 1.5em !important;
    position: absolute;
    right: 0;
    border: none !important;
    padding: 0 15px !important;
    z-index: 10;
    font-weight: 400 !important;
    cursor: pointer;
    top: 0;
    box-sizing: border-box;
    height: 64px;
  }

  #contentnav #dnnMenu .mobile-nav-expand .fa {
    line-height: 64px;
  }

  #contentnav #dnnMenu .mobile-nav-expand.fa-angle-down {
    opacity: 0.8;
  }

  #contentnav #dnnMenu .mobile-nav-expand.fa-angle-up {
    opacity: 1;
  }

  /*#contentnav::before{content:"Menu"; font-size:1.25em; border-bottom:2px solid #FFF; color:#FFF; font-weight:700; padding:2%; text-transform:uppercase; display:block; margin-top:2%; }*/
  #contentnav #dnnMenu .fa-angle-up {
    color: #FFF !important;
    border-radius: 6px 6px 0 0;
    -moz-border-radius: 6px 6px 0 0;
    -webkit-border-radius: 6px 6px 0 0;
  }

  #contentnav #dnnMenu .subLevel .subLevelRight {
    display: none;
  }

  .mobile-nav-expand {
    color: #FFF !important;
    line-height: 50px;
  }

  .mobile-nav-expand.icon-angle-up::after {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -20px;
    height: 30px;
    content: "";
  }

  #contentnav #dnnMenu .subLevel .subLevelRight ul {
    background: #373737 !important;
  }

  #contentnav #dnnMenu .subLevel li a {
    border-bottom: 1px solid #FFF;
    color: #FFF;
  }

  .mobile-menu-title {
    font-size: 24px;
    color: #FFF;
    font-weight: 700;
    padding: 5.5% 0 5.5% 20%;
    background: #666;
    text-transform: uppercase;
  }

  #tabletMenuBtn .fa {
    font-size: 20px;
    color: #AAA;
  }

  .mm-clicked#tabletMenuBtn {
    opacity: 1;
  }

  .mm-clicked#tabletMenuBtn .fa {
    color: #FFF;
  }

  #contentnav {
    height: 100%;
  }

  #contentnav a {
    color: #FFF;
  }
}
/*=============================================
=            Homepage Content Styles         =
=============================================*/
#hometext h1, #hometext h2 {
  color: #FFF;
  font-size: 2em;
  text-transform: uppercase;
}

#hometext, #hometext a:hover {
  color: #FFF;
}

#hometext p {
  margin: 0 0 10px;
  clear: both;
  line-height: 20px;
}

#hometext a {
  font-weight: 700;
}

#hometext ul {
  margin: 0 0 0 50px;
  clear: both;
}

#hometext ul li {
  margin-bottom: 10px;
}

#hometext ul.two-row li {
  width: 45%;
  float: left;
  margin-right: 2%;
}

#hometext ul.three-row li {
  width: 31%;
  float: left;
  margin-right: 2%;
}

#hometext ul.four-row li {
  width: 23%;
  float: left;
  margin-right: 2%;
}

#hometext ul.five-row li {
  width: 18%;
  float: left;
  margin-right: 2%;
}

/* Defualt Button Hover Mixin */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #hometext {
    padding: 2%;
    float: none;
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  #hometext {
    padding: 0;
    margin: 0;
    width: auto;
    float: none;
  }

  #hometext ul li, #hometext ul.two-row li, #hometext ul.three-row li, #hometext ul.four-row li, #hometext ul.five-row li {
    width: auto;
    float: none;
  }
}
/*=============================================
=            Footer Element Styles            =
=============================================*/
#BottomFooter {
  font-size: 0.75em;
  color: #FFF;
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  flex-wrap: wrap;
}

#FooterPane1Container, #FooterPane2Container, #FooterPane3Container, #FooterPane4Container {
  flex: 0 1 auto;
  padding: 10px 0;
  box-sizing: border-box;
  margin: 1% 1% 1% 0;
}

#BottomFooter #EntryForm .captcha input {
  margin-right: 10px;
}

#BottomFooter a, #BottomFooter a:hover {
  color: #FFF;
  text-decoration: none;
}

#BottomFooter h2 {
  color: #FFF;
  font-size: 1.125em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-weight: 700;
}

#LocationWidget h2 {
  display: none;
}

#BottomFooter p {
  margin-bottom: 5px !important;
}

#BottomFooter .footerseo p {
  line-height: 18px !important;
}

#BottomFooter ul {
  margin: 0 !important;
}

#BottomFooter ul li, .extra-links li {
  list-style: none !important;
  margin-bottom: 5px !important;
}

#BottomFooter #socialfont {
  float: left;
  clear: both;
}

#BottomFooter #socialfont .fa, #BottomFooter #socialfont .fab {
  display: inline-block;
  font-style: normal;
  font-weight: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 5px;
  font-size: 22px !important;
  vertical-align: text-top;
  line-height: 22px !important;
  width: 30px;
  text-align: center;
  padding: 5px 0;
}

#BottomFooter ul li, .extra-links li {
  list-style: none !important;
  margin-bottom: 5px !important;
}

#BottomFooter .locwidget-email {
  display: none;
}

#BottomFooter #EntryForm table {
  width: 100%;
}

input.mobile-c::-webkit-input-placeholder {
  color: #fff !important;
  opacity: 0.6;
}

textarea.mobile-c::-webkit-input-placeholder {
  color: #fff !important;
  opacity: 0.6;
}

input.mobile-c, td.mobile-c, textarea.mobile-c, select.mobile-c {
  width: 100% !important;
  padding: 1% 0;
  box-sizing: border-box;
}

td.mobile-c {
  display: block;
  margin: 0.5% 0;
}

input.mobile-c, textarea.mobile-c, #BottomFooter #EntryForm .captcha input {
  padding: 1%;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
}

.NormalRed a[href*="ctl/license"] {
  display: none;
}

#BottomFooter textarea {
  font-family: Arial, sans-serif;
  font-size: 13px;
}

#BottomFooter a[id*=lnkSave] {
  display: block;
  padding: 2%;
  outline: 1px solid #999;
  color: #666;
  outline-offset: 3px;
  width: 42%;
  text-align: center;
  position: relative;
  left: 3px;
  background: #FFF;
  transition: all 300ms ease-in-out;
}

#BottomFooter .DynamicForms_SaveFormDiv {
  width: 60%;
  white-space-collapse: discard;
  margin-top: 1%;
}

#BottomFooter a[id*=lnkSave]:hover {
  color: #FFF;
  outline: 1px solid #FFF;
  outline-offset: 0;
}

#BottomFooter .DynamicForms_Summary {
  background: #990000;
  color: #FFF;
  padding: 10px;
}

#BottomFooter .DynamicForms_Summary ul {
  list-style-position: inside;
}

#BottomFooter .NormalRed {
  color: #990000;
  font-weight: 700;
}

.tint div[id*=_ModuleContent] {
  position: relative;
  z-index: 5;
}

.tint:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 255, 255, 0.5);
  transition: all 0.3s linear;
}

.t2:before {
  background: rgba(0, 0, 95, 0.9);
}

#BottomFooter .captcha {
  color: #FFF;
}

/* BOTTOM CONTACT FORM
----------------------------------------------------------------------------------------------------*/
.locwidget-fax {
  display: none;
}

#BottomFooter #EntryForm .captcha input {
  top: 0 !important;
}

#BottomFooter #EntryForm .captcha img[src*="/ImageChallenge.captcha.aspx?"] + div {
  visibility: hidden !important;
  display: none !important;
}

#BottomFooter div[id*=lblAlreadyExists].NormalRed {
  display: none !important;
}

@media only screen and (min-width: 1024px) {
  #FooterPane1Container, #FooterPane2Container, #FooterPane3Container, #FooterPane4Container {
    min-height: 375px;
  }

  .mobileOverlay {
    display: none !important;
  }

  #netdriven {
    width: 980px;
    margin: 0 auto;
    overflow: hidden;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #FooterPane1Container {
    margin: 1% 0.5% 0 1%;
  }

  #FooterPane2Container, #FooterPane3Container, #FooterPane4Container {
    margin: 1% 1% 0 0.5%;
  }

  .socialh2 {
    display: none;
  }

  #poweredbynd {
    clear: both;
  }

  #BottomFooter .DynamicForms_SaveFormDiv {
    margin-top: 3%;
  }
}
@media only screen and (max-width: 1023px) {
  #BottomFooter h2 {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  #BottomFooter {
    display: flex;
    flex-wrap: wrap;
    padding-top: 80px;
  }

  #FooterPane1Container {
    flex-grow: 1;
    width: 100%;
  }
}
/*=============================================
=            Mobile Button Styles            =
=============================================*/
.mobileButtons {
  display: none;
}

#GeoContainer {
  font-family: "Roboto", sans-serif;
}

.GeoText {
  font-family: inherit;
}

@media only screen and (max-width: 767px) {
  .mobileBG {
    display: block;
    opacity: 0;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 75px;
    background: #004990;
    z-index: -1;
    -moz-transition: all 200ms ease-in-out;
    -webkit-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
  }

  .mobileBG.displayed {
    opacity: 1;
  }

  .nd-mobile-window {
    position: fixed;
    width: 100%;
    z-index: 100;
    overflow-y: scroll;
    box-sizing: border-box;
    background: #004990;
    display: none;
    height: 100%;
  }

  .nd-mobile-button {
    box-sizing: border-box;
    font-size: 12px;
    padding: 20px;
    font-weight: 700;
    color: #FFF;
    cursor: pointer;
    text-align: center;
    text-transform: uppercase;
    display: block;
    overflow: hidden;
    text-decoration: none !important;
    position: relative;
  }

  .nd-mobile-button.menu-phone, .nd-mobile-button.menu-location {
    display: none;
  }

  /* NEW FIND US AND CALL US BUTTONS */
  .FindUsPanel, .CallUsPanel {
    display: block;
    position: fixed;
    box-sizing: border-box;
    position: fixed;
    top: 0;
  }

  .FindUsPanel .fa, .CallUsPanel .fa, .menu-quoting span.fas {
    font-size: 35px;
    cursor: pointer;
    color: #FFF !important;
    margin: 0;
    padding: 20px;
    display: block;
    text-decoration: none;
  }

  .FindUsPanel .fa.clicked, .CallUsPanel .fa.clicked {
    background: #F5F5F5;
    border-radius: 6px 6px 0 0;
    color: #004990 !important;
  }

  #CallUsContainer a {
    color: #FFF;
    text-decoration: none;
  }

  .FindUsPanel {
    right: 60px !important;
  }

  .CallUsPanel {
    right: 0;
  }

  .menu-quoting.nd-mobile-button {
    padding: 0;
    height: auto !important;
    right: 128px !important;
  }

  #GeoPhoneMobile {
    display: block;
  }

  #GeoContainerMobile {
    width: 100vw;
    position: fixed;
    left: 0;
    top: 60px;
    background: #F5F5F5;
    padding: 20px;
    box-sizing: border-box;
    font-family: "Roboto", sans-serif;
    box-shadow: 0px 7px 8px rgba(68, 68, 68, 0.6);
  }

  .GeoText {
    font-family: inherit;
  }

  #GeoInfoBoxMobile, .GeoHours:last-of-type {
    border-bottom: solid #d1d1d1 1px;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }

  #mobile-buttons .fa.sub {
    position: absolute;
    bottom: 10px;
    right: 5px;
    font-size: 12px;
  }

  .nd-mobile-button .mobile-icon {
    font-size: 30px;
    height: 36px;
    width: auto;
    float: left;
  }

  .mobileButtons {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    box-shadow: 0 1% #000;
    z-index: 100000;
  }

  .social {
    background: #282828;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    z-index: 10;
  }

  .mobileButtons li a {
    margin-top: 0 !important;
  }

  .mobileOverlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    z-index: 500;
  }

  .mobileOverlay::before {
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    content: "";
    display: block;
  }

  /* Mobile Buttons in Header */
  .mobileButtons {
    /*box-shadow:0 2px 5px #000;*/
  }

  .mobileButtons {
    display: block;
  }

  /* Style to have the connect text be left of footer social icons*/
  /* #BottomFooter #socialfont {float:right; } */
  #mobile-social .fa, #mobile-buttons .fa {
    font-size: 35px;
  }

  #mobile-social .fa, #mobile-buttons .fa {
    display: inline-block;
    font-weight: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-decoration: none;
  }

  #mobile-buttons .menu-menu .fa {
    transform: rotate(0deg);
  }

  #mobile-buttons .menu-menu .fa.fa-times {
    transform: rotate(-90deg);
    transition: all 200ms ease-in-out;
  }

  #mobile-buttons label {
    font-family: "Open Sans Condensed", sans-serif;
    font-weight: 700;
    cursor: pointer;
    margin-top: 5px;
  }

  #mobile-buttons .nd-mobile-button.ndcustomcolorclass {
    box-shadow: 0 0 2px #000 inset;
    -moz-box-shadow: 0 0 2px #000 inset;
    -webkit-box-shadow: 0 0 2px #000 inset;
  }

  #mobile-buttons a:hover {
    color: #FFF;
    text-decoration: none;
  }

  .mobileonhover {
    position: absolute;
    bottom: -7px;
    left: 0;
    height: 0;
    border-radius: 10px 10px 0 0;
    -moz-border-radius: 10px 10px 0 0;
    -webkit-border-radius: 10px 10px 0 0;
  }

  .fa-phone {
    position: relative;
    z-index: 10000;
  }

  .left-button {
    float: left;
  }

  .right-button {
    float: right;
  }
}
/*=============================================
=            Geo Locator Element Styles      =
=============================================*/
/* GEO LOCATOR */
#dnn_ExpressPane {
  float: right;
}

.GeoPanel, .PostalPanel {
  position: relative;
  font-size: 16px;
}

#GeoContainerOutside {
  z-index: 100;
  float: none;
  top: 0;
}

#GeoContainer {
  position: absolute;
  top: 30px;
  float: none;
  width: 100%;
  z-index: 100 !important;
}

#GeoHours, #GeoInfoBox {
  background-position: center bottom;
}

.PostalPanel, .GeoPanel {
  margin: 10px;
  background: #272727;
  padding: 4px;
  border-radius: 20px;
}

.PostalPanel::after, .GeoPanel::after {
  display: block;
  height: 0;
  content: ".";
  visibility: hidden;
  clear: both;
}

.GeoBoxLabel {
  margin-left: 5px;
  font-size: inherit;
  position: relative;
}

#dnn_ctr3040_View_PostalCodeLookup::before {
  content: "Find Your Nearest Location";
  color: #FFF;
  font-size: 16px;
  margin: 6px 5px 0px 5px;
  float: left;
  display: block;
}

.PostalPanel {
  width: 370px;
}

.postalcode-validator {
  display: block;
  background: #FE0000;
  text-align: center;
  color: #fff;
  margin: 0 0 5%;
  font-weight: 700;
  padding: 2% 1%;
  width: 100%;
  box-sizing: border-box;
  font-size: 1em;
}

.postalcode-entrybox {
  text-align: center;
  border: none;
  background: #FFFFFF;
  color: #000;
  float: left;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.5em;
  border-radius: 20px 0 0 20px;
}

.postalcode-link {
  display: block;
  width: 50px;
  height: 26px;
  background: #0156B1;
  float: left;
  border-radius: 0 20px 20px 0;
  text-decoration: none !important;
  color: #FFF;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  color: #FFF !important;
  line-height: 26px;
}

.postalcode-link:hover {
  box-shadow: 0 0 1px #FFF inset;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .GeoPanel, .PostalPanel {
    position: relative !important;
    margin: 0 auto 2%;
    width: 280px;
    float: none;
  }
}
@media only screen and (max-width: 1023px) {
  #dnn_ExpressPane {
    float: none !important;
    position: relative;
  }
}
@media only screen and (max-width: 767px) {
  #dnn_HeaderContactPane {
    z-index: 100000;
    position: relative;
  }

  .GeoPanel {
    font-size: 18px;
    position: relative;
    width: 70%;
    margin: 0 auto;
    display: none !important;
  }

  .PostalPanel {
    width: 237px;
    position: relative;
    margin: 0 auto;
  }

  .GeoBoxLabel {
    float: none;
    text-align: center;
    display: block;
  }

  #GeoContainer {
    top: 100%;
  }

  .PostalPanel {
    display: none !important;
  }
}
/* LANDING PAGE BODY FIX */
#ndsc .LandingPageBody p {
  font-size: 1.2em !important;
}

/* Service Center */
#ndsc img[src*="/ndsc-link.png"] {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* DRIVECAST BANNER */
.drivecast-banner {
  position: relative;
  display: block;
}

.drivecast-banner img {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  width: 100%;
  max-width: 980px;
}

.drivecast-banner .ndcustomcolorclass {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.drivecast-banner .ndcustomcolorclass::after {
  background: #FFF;
  opacity: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  content: "";
  display: block;
}

.drivecast-banner:hover .ndcustomcolorclass::after {
  opacity: 0.2;
}

a.drivecast-banner {
  margin: 2% 0;
}

.video-button-container {
  position: relative;
  text-shadow: 0 2px 1px #000;
  text-align: center;
  z-index: 1;
  border-bottom: 2px solid #333;
}

#ndsc .video-button-container {
  min-width: 50%;
  font-size: 14px;
}

@media only screen and (max-width: 640px) {
  #fancybox-wrap {
    padding: 0 !important;
    left: 50% !important;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  #fancybox-inner {
    width: 100% !important;
  }

  #fancybox-img {
    width: auto !important;
  }
}
/* Service Quotes PUT IN THE MODULE.CSS FILE */
#ndsc .ymmo {
  width: auto !important;
}

#ndsc .ymmo .DropWrapper {
  width: 48%;
  margin: 1%;
  float: left;
}

#ndsc .ymmo .DropWrapper span {
  display: block;
}

#ndsc .ymmo .DropWrapper select {
  width: 100%;
}

#ndsc .checkBoxList {
  margin-bottom: 2%;
}

@media only screen and (max-width: 640px) {
  #ndsc .ymmo .DropWrapper {
    width: auto;
    margin: 1%;
    float: none;
  }

  #ndsc input[id*=View_advQuote_Submit] {
    width: 100%;
    padding: 2%;
    font-size: 14px;
  }
}
/* ATC */
#ndatc .atcbrandbox {
  margin: 1% !important;
  box-sizing: border-box;
  height: 340px;
}

#ndatc #atcbrandboxbody {
  padding: 2%;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px), (max-width: 980px) {
  #ndatc .atcbrandbox {
    width: 23% !important;
    margin: 1% !important;
    box-sizing: border-box;
    height: 320px;
    min-width: inherit !important;
  }
}
@media only screen and (max-width: 640px) {
  #ndatc .atcbrandbox {
    width: 48% !important;
    margin: 1% !important;
    box-sizing: border-box;
    height: 320px;
    min-width: inherit !important;
  }

  #atctirepointsbrandview li {
    margin: 2%;
    font-size: 14px;
  }

  /* Move to ATC */
}
#ndatc #atcbrandboxbody .atctireimage {
  display: block;
  margin: 0 auto;
}

#ndatc .atcAvgRating p {
  line-height: 18px;
}

#ndatc #tiresidewall_animation #bubble {
  width: 45%;
}

#ndatc .atcbrandbox {
  width: 23% !important;
}

@media only screen and (max-width: 640px) {
  #ndatc select {
    font-size: 18px;
  }
}
/* LocationWidget */
#LocationWidget * {
  line-height: 18px;
}

/* LOCATIONS PAGE
----------------------------------------------------------------------------------------------------*/
.ICG_Modules_LocalFocal_LocationsContent .CommandButton, .ModICGModulesLocalFocalLocationsC .CommandButton {
  font-size: 10px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  padding: 4px 8px;
  margin: 5px;
  text-decoration: none;
  background: #c3151c;
  color: #fff !important;
  border: none;
  cursor: pointer;
  font-family: inherit;
  font-weight: bold;
}

.ICG_Modules_LocalFocal_LocationsContent .CommandButton:hover, .ModICGModulesLocalFocalLocationsC .CommandButton:hover {
  background-color: #000;
  color: #fff !important;
}

.loclisting {
  margin: 5px 0 0;
}

.locfax {
  margin-top: 10px;
  overflow: hidden;
}

.locfax .faxLabel {
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  width: 32px;
}

.loc_img {
  _float: right !important;
}

.ICG_Modules_LocalFocal_LocationsContent #map, .ModICGModulesLocalFocalLocationsC #map {
  clear: both;
}

.lfLocMenu, .lfLocMenu li, .lfLocMenu a {
  list-style: none outside none !important;
  margin: 0 !important;
}

.lfLocMenu {
  background: #000;
  border: none;
  height: 46px;
  margin-bottom: 5px;
  overflow: hidden;
  padding: 0;
}

.lfLocMenu li {
  display: block;
  float: left;
  height: 36px;
  padding: 5px 10px;
}

.lfLocMenu a {
  background: #333;
  color: #FFF !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 36px;
  padding: 5px 10px;
}

.lfLocMenu a:hover {
  background: #CCC;
  color: #F00 !important;
}

.locRefineSearch {
  background: url(//a.ndrv.in/img/locations/Loc-Button.png) no-repeat center top;
  color: #FFF !important;
  display: block;
  font-size: 16px;
  font-weight: 700;
  float: left;
  height: 20px;
  line-height: 20px;
  margin: 0 0 10px;
  padding: 6px 5px 4px 15px;
  text-align: left;
  text-decoration: none !important;
  text-transform: uppercase;
  width: 162px;
}

.LocSubHead {
  clear: both;
  display: block;
  float: left;
  font-size: 14px;
  font-weight: 700;
  padding-bottom: 5px;
}

.txtZipSearch {
  width: 166px;
  margin-bottom: 5px;
}

#ddlStates {
  float: left;
  width: 45px;
  margin: 0 5px 0 0;
}

#ddlCities {
  float: left;
  width: 120px;
  margin: 0;
}

#map_canvas {
  border: #000 1px solid;
  float: right;
  height: 400px;
  overflow: hidden;
  width: 400px;
}

.MapLegend, #LocSearch, #LocTypes {
  background: #FFF;
  border: #000 1px solid;
  clear: left;
  float: left;
  margin: 0 0 10px;
  overflow: hidden;
  padding: 5px 5px 3px;
  width: 170px;
}

.MapLegend div {
  clear: left;
  overflow: hidden;
}

.MapLegend img, .MapLegend .noPinImg {
  display: inline-block;
  float: left;
  height: 28px;
  padding-right: 5px;
  width: 16px;
}

.MapLegend .chkLegend {
  float: left;
  padding: 2px 5px 0 0;
}

.MapLegend .legendtext {
  display: block;
  float: right;
  height: 30px;
  line-height: 14px;
  padding: 4px 5px 0 0;
  text-align: left;
  width: 118px;
}

#LocSearch a, #LocTypes a {
  clear: right;
  display: inline-block;
  float: right;
}

#map_bubble {
  height: 135px;
  overflow: hidden;
  position: relative;
  width: 100%;
}

#map_bubble #mapTtl {
  font-weight: 700;
  margin-bottom: 5px;
  text-align: center;
  width: 100%;
}

#map_bubble #mapAdr {
  overflow: hidden;
}

#map_bubble #mapAdr #street {
  display: block;
  float: left;
}

#map_bubble #mapAdr #citystatezip {
  display: block;
  clear: left;
  float: left;
  margin-bottom: 5px;
}

#map_bubble #mapPhn, #map_bubble #mapEml, #map_bubble #mapDesc {
  margin-bottom: 5px;
}

#map_bubble #mapDtl {
  bottom: 1px;
  left: 0;
  position: absolute;
}

#map_bubble #mapImg img {
  bottom: 0;
  height: 40px;
  position: absolute;
  right: 0;
  width: 60px;
}

/* LOCATIONS WIDGET
----------------------------------------------------------------------------------------------------*/
#LocationWidget {
  position: relative;
  overflow: hidden;
}

.locwidgetlisting {
  display: inline-block;
  margin: 10px;
  width: 275px;
  position: relative;
  overflow: hidden;
  float: left;
}

.locwidgetlisting > div {
  float: left;
  clear: both;
}

/*.locwidget-addr {margin-top:10px;}*/
.locwidget-csz {
  margin-bottom: 10px;
}

/* INSTANT QUOTE
----------------------------------------------------------------------------------------------------*/
#instantQuote2 {
  position: relative;
  overflow: hidden;
}

#emailMSG {
  color: #F00;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  background-color: white;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
  z-index: 20;
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 0px;
  left: 0px;
}

.style1 td, .style1 th {
  height: 23px;
  line-height: 23px;
}

.instantQuoteHdr #printMe {
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  margin: 10px auto;
}

.instantQuoteHdr .disclaimer {
  font-size: 9px;
  text-align: center;
  width: 400px;
  margin: 0 auto !important;
}

#instantQuoteTbl table {
  border: none;
  width: 100%;
  color: #000000;
  background: #DDF;
}

#instantQuoteTbl table .borderBottom {
  border-bottom: #666 1px solid;
}

#instantQuoteTbl table .subtitle {
  background: #F22;
  border-top: #666 1px solid;
  border-bottom: #666 1px solid;
  display: table-row !important;
}

#instantQuoteTbl table .subtotal {
  background: #DCC;
}

#instantQuoteTbl table .total {
  background: #9F9;
}

#print {
  float: left;
  background-color: #DDF;
}

#email, #txtEmail {
  float: right;
  background-color: #DDF;
}

.coupon-wrap {
  position: relative;
}

.coupon-wrap > img[src*=spacer] {
  width: 100%;
  height: auto;
}

.couponsliderview {
  top: 0;
  left: 0;
  z-index: 2;
}

.sliderImage img {
  width: 100%;
  height: auto;
  max-width: 630px;
}

div[id*=View_Scroller_slider1] {
  height: auto !important;
}

.sliderImage span {
  display: none !important;
}

.couponlistview #item img {
  width: 100%;
  height: auto;
  max-width: 590px;
}

.couponListHR {
  display: none;
}

#sliderContent {
  margin: 0 !important;
}

/* Desktop Only */
@media only screen and (min-width: 980px) {
  /* $('#contentnav').wrap PAGE */
  .couponListIMGs {
    width: 100%;
    height: auto;
  }

  div[id*=View_ListView_OuterListView] table tr {
    display: inline-block;
    width: 48%;
    margin: 1%;
    min-height: 235px;
  }
}
/* MAINTENANCE ADVISER BANNER */
.ma-banner {
  position: relative;
  display: block;
}

.ma-banner img {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  width: 100%;
  max-width: 980px;
}

.ma-banner .ndcustomcolorclass::after {
  background: #FFF;
  opacity: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  -moz-transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  content: "";
  display: block;
}

.ma-banner:hover .ndcustomcolorclass::after {
  opacity: 0.2;
}

.ma-banner .ndcustomcolorclass {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

#ndtestimonials .review-container.average-rating {
  clear: left;
}

#ndtestimonials div.overlay iframe {
  min-height: 600px;
}

#jsLocDropDownPlaceHolder {
  clear: both;
}

#jsLocDropDownPlaceHolder select {
  width: 50%;
}

/* #nddc div.large-overlay{margin-top:0 !important;} */
.btn-cxt {
  display: none !important;
}

@media only screen and (max-width: 640px) {
  #jsLocDropDownPlaceHolder select {
    width: 100%;
  }
}
.ssmap {
  border: #000 1px solid;
  padding: 3px;
  margin: 2px;
  float: right;
  height: 200px !important;
}

.locSearchBox .red-grad {
  background-color: #CF0000;
  color: #FFF;
  display: block;
  float: left;
  font-size: 16px;
  font-weight: 700;
  height: 30px;
  margin: 5px 0 0;
  padding: 1px 1%;
  text-decoration: none;
  width: 28%;
}

.autocomplete-suggestion {
  padding: 2px 5px;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

.autocomplete-suggestion:hover {
  background-color: #e2e2e2;
}

.autocomplete-suggestion strong {
  color: #111173;
}

.autocomplete-suggestions {
  background-color: #FFF;
  border: 1px solid #000;
  color: #000;
  /*margin-top:-30px*/
}

#autocomplete-wrapper > span {
  font-size: 14px;
  font-weight: 700;
}

.locSearchBox .searchTextField {
  font-size: 14px;
  font-weight: 700;
  min-height: 24px;
  margin: 5px 0 10px;
  padding: 2px 0;
  width: 68%;
  float: left;
  margin-right: 3px;
}

@media only screen and (max-width: 640px) {
  .locSearchBox .searchTextField {
    width: 100%;
    float: none;
    margin-bottom: 2px;
  }

  .locSearchBox .red-grad {
    width: 100%;
    float: none;
    margin: 5px 0;
  }

  .ModScheduleServiceC select {
    width: 100%;
  }

  .ModScheduleServiceC .map.map {
    float: none;
    width: auto;
  }

  .locSearchBox .searchTextField, .locSearchBox .red-grad {
    box-sizing: border-box;
  }
}
.location-info.locationSelectorAddress {
  margin-bottom: 10px;
}

.loc-select-info {
  width: 42%;
  float: left;
  clear: left;
}

.loc-select-info .location-info {
  line-height: 1.4;
}

.red-grad img {
  display: block;
  float: right;
  margin: 5px 0 0;
}

.red-grad span {
  margin: 5px 0 0;
  display: block;
  float: left;
}

#jsLocationInfoPlaceHolder {
  color: inherit;
  background: inherit;
}

.btn-site:visited, .btn-site:focus, .btn-site, .vlbCatalogBtn:visited, .vlbCatalogBtn:focus, .vlbCatalogBtn {
  display: block;
  background-color: #004990 !important;
  background-image: linear-gradient(to right, #256EC0, #004990, #083077);
  color: #fff !important;
  width: calc(160px + (200 - 160) * ((100vw - 320px) / (1920 - 320)));
  height: calc(36px + (50 - 36) * ((100vw - 320px) / (1920 - 320)));
  line-height: calc(36px + (50 - 36) * ((100vw - 320px) / (1920 - 320)));
  text-align: center;
  text-decoration: none !important;
  transition: 0.3s;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0.03em;
  font-size: calc(12px + (17 - 12) * ((100vw - 320px) / (1920 - 320)));
  padding: 0px;
  border-radius: 0px !important;
  transition: 0.3s;
  position: relative;
  z-index: 1;
}
.btn-site:visited i, .btn-site:focus i, .btn-site i, .vlbCatalogBtn:visited i, .vlbCatalogBtn:focus i, .vlbCatalogBtn i {
  color: #FFDD00;
  transition: 0.3s;
  font-size: calc(8px + (12 - 8) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .btn-site:visited i, .btn-site:focus i, .btn-site i, .vlbCatalogBtn:visited i, .vlbCatalogBtn:focus i, .vlbCatalogBtn i {
    font-size: calc(8px + (12 - 8) * ((100vw - 320px) / (767 - 320)));
  }
}
.btn-site::before, .vlbCatalogBtn::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: linear-gradient(to right, #083077, #004990, #256EC0);
  border-radius: 0px;
  transition: 0.3s;
  opacity: 1;
}
.btn-site:hover, .vlbCatalogBtn:hover {
  color: #fff !important;
}
.btn-site:hover::before, .vlbCatalogBtn:hover::before {
  opacity: 0;
}

.btn-site-secodary:visited, .btn-site-secodary:focus, .btn-site-secodary {
  display: block;
  background-color: #FFDD00 !important;
  color: #004990 !important;
  width: calc(100px + (200 - 100) * ((100vw - 320px) / (1920 - 320)));
  height: calc(36px + (50 - 36) * ((100vw - 320px) / (1920 - 320)));
  line-height: calc(36px + (50 - 36) * ((100vw - 320px) / (1920 - 320)));
  text-align: center;
  text-decoration: none !important;
  transition: 0.3s;
  font-weight: 600;
  text-transform: capitalize;
  letter-spacing: 0.03em;
  font-size: calc(12px + (17 - 12) * ((100vw - 320px) / (1920 - 320)));
  padding: 0px;
  border-radius: 0px !important;
  transition: 0.3s;
}
.btn-site-secodary:visited i, .btn-site-secodary:focus i, .btn-site-secodary i {
  color: #004990;
  transition: 0.3s;
  font-size: calc(8px + (12 - 8) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .btn-site-secodary:visited i, .btn-site-secodary:focus i, .btn-site-secodary i {
    font-size: calc(8px + (12 - 8) * ((100vw - 320px) / (767 - 320)));
  }
}
.btn-site-secodary:hover {
  background-color: #004990 !important;
  color: #fff !important;
}
.btn-site-secodary:hover i {
  color: #FFDD00;
}

/*=============================================     
=            Top Bar Styles            =  
=============================================*/
@media only screen and (min-width: 768px) {
  #nd-actionbar {
    display: none;
  }
}

#nd-actionbar .container {
  padding: 0;
}

#dnn_ActionBarPane #top-social {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
}

#dnn_ActionBarPane #top-social a {
  color: #fff;
  text-decoration: none;
  font-size: 1.4em;
  margin-right: 20px;
  padding: 1px 0;
}

#dnn_ActionBarPane #top-social a:last-of-type {
  margin: 0;
}

/*============================================================================================================================*/
/*=============================================
=            Navbar Styles                   =  
=============================================*/
@media only screen and (min-width: 1024px) {
  #contentnav {
    height: 45px;
    width: 100%;
  }
}
@media only screen and (min-width: 1024px) and (min-width: 1024px) {
  #contentnav #dnnMenu .topLevel li {
    line-height: 45px;
  }
}
@media only screen and (min-width: 1024px) and (min-width: 1024px) {
  #contentnav #dnnMenu .topLevel li.haschild:hover .subLevel, #contentnav #dnnMenu .topLevel li.haschild:active .subLevel, #contentnav #dnnMenu .topLevel li.haschild:focus .subLevel {
    top: 45px;
  }
}
@media only screen and (min-width: 1024px) {
  #contentnav #dnnMenu .single-column {
    width: 100%;
  }
}
@media only screen and (min-width: 1024px) {
  #nd-menubar {
    top: 0px !important;
  }
}
@media only screen and (min-width: 1024px) {
  #nd-background .nav-spacer {
    height: 40.4px !important;
  }
}
@media only screen and (min-width: 768px) {
  #nd-menubar {
    background: #fff;
    z-index: 15;
  }
  /* Current Tab */
}
@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1023px) {
  #nd-menubar #contentnav {
    background: #fff;
  }
}
@media only screen and (min-width: 768px) {
  #nd-menubar.desktop-displayed {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background-color: #fff;
  }
  #nd-menubar.desktop-displayed #contentnav {
    background-color: #fff;
    border-bottom: 1px solid #A9A9A9;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu a {
    text-transform: uppercase;
    color: #000;
    display: block;
    font-weight: 700;
    letter-spacing: 0.024em;
    font-size: calc(10px + (17 - 10) * ((100vw - 768px) / (1920 - 768)));
    text-decoration: none !important;
    transition: 0.3s;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .topLevel li.selected > a {
    text-decoration: underline;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .subLevel li a {
    margin: 0px;
    padding: 10px 20px;
    line-height: normal;
    color: #fff;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .subLevel ul,
#contentnav #dnnMenu .subLevel .subLevelRight ul {
    background-color: #333;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .topLevel li:hover > a {
    background: #fff;
    color: #004990;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .subLevel li a {
    background-color: #fff;
    color: #000;
    font-size: calc(10px + (14 - 10) * ((100vw - 768px) / (1920 - 768)));
    font-weight: 700;
    text-transform: uppercase;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .subLevel li a:hover {
    background-color: #fff;
    color: #004990;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .single-column li a {
    border-bottom: 1px solid #888;
    border: none;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav #dnnMenu .subLevel.double-column li a {
    border-bottom: 1px solid #888;
    border-right: 1px solid #888;
  }
}
@media only screen and (min-width: 768px) {
  #contentnav {
    position: static;
  }

  #contentnav #dnnMenu .subLevel li.haschild:hover > .subLevelRight ul {
    left: 200px !important;
  }

  #contentnav #dnnMenu .subLevel, #contentnav #dnnMenu .subLevel .subLevelRight ul {
    width: max-content;
  }

  #contentnav #dnnMenu .subLevel ul, .subLevelRight.double-column ul {
    min-width: max-content !important;
  }
}
@media only screen and (min-width: 1024px) {
  #contentnav #dnnMenu .single-column {
    width: 100% !important;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Mobile Menu Styles              =
=============================================*/
@media only screen and (max-width: 767px) {
  .mobileBG {
    background-image: linear-gradient(to right, #083077, #004990, #256EC0);
    opacity: 0;
    height: 45px !important;
  }
  .mobileBG.displayed {
    height: 45px !important;
  }

  .nd-mobile-window {
    background: #004990;
    left: 0;
  }

  #contentnav #dnnMenu .subLevel {
    background: white !important;
  }

  #contentnav #dnnMenu a {
    font-size: 1em;
  }

  #mobile-buttons {
    border-bottom: 1px solid #707070;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    justify-content: flex-end;
    -ms-flex-pack: flex-end;
    width: 100%;
  }
  #mobile-buttons .menu-menu {
    margin-right: auto;
  }
  #mobile-buttons .menu-phone,
#mobile-buttons .menu-location {
    display: block;
  }
  #mobile-buttons .fa-phone {
    transform: rotateY(-185deg);
  }
  #mobile-buttons .nd-mobile-button,
#mobile-buttons .fa-map-marker {
    color: #FFDD00;
    transition: 0.3s;
  }
  #mobile-buttons .nd-mobile-button {
    padding: 10px;
  }
  #mobile-buttons .fa {
    font-size: 25px;
  }
  #mobile-buttons a:hover span::before {
    color: #FFDD00;
  }

  .menu-quoting {
    display: none;
  }

  .mobileButtons {
    background-image: linear-gradient(to right, #083077, #004990, #256EC0);
  }

  #contentnav #dnnMenu .subLevel li {
    background-color: rgba(0, 73, 144, 0.3);
  }
  #contentnav #dnnMenu .subLevel li li {
    background-color: #e6e6e6;
  }
  #contentnav #dnnMenu .subLevel li a {
    color: #000;
  }
  #contentnav #dnnMenu .subLevel li a.mobile-nav-expand .fa-angle-down::before,
#contentnav #dnnMenu .subLevel li a.mobile-nav-expand .fa-angle-up::before {
    color: #000;
  }

  .ModPostalCodeLookupC a {
    text-decoration: none;
  }
  .ModPostalCodeLookupC .FindUsPanel .fa,
.ModPostalCodeLookupC .CallUsPanel .fa,
.ModPostalCodeLookupC .menu-quoting span.fas {
    font-size: 25px;
    color: #FFDD00 !important;
    padding: 10px;
  }
  .ModPostalCodeLookupC #GeoContainerMobile {
    top: 45px !important;
  }
  .ModPostalCodeLookupC .FindUsPanel .fa,
.ModPostalCodeLookupC .CallUsPanel .fa {
    width: 60px !important;
  }
  .ModPostalCodeLookupC .FindUsPanel .fa.clicked,
.ModPostalCodeLookupC .CallUsPanel .fa.clicked {
    color: #004990 !important;
  }
  .ModPostalCodeLookupC .CallUsPanel {
    transform: rotateY(180deg);
  }

  #contentnav #dnnMenu .mobile-nav-expand .fa {
    line-height: 40px;
  }

  #contentnav #dnnMenu .subLevel li a:not(.mobile-nav-expand)::before {
    color: transparent;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Header Styles                   =
=============================================*/
#contentheader {
  box-sizing: border-box;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  #contentheader {
    padding-top: 45px !important;
  }
}
#contentheader .header-container {
  width: 90%;
  margin: 0 auto;
}
#contentheader #top-header {
  background-image: linear-gradient(to right, #083077, #004990, #256EC0);
  padding: 15px 0px;
}
@media only screen and (max-width: 767px) {
  #contentheader #top-header {
    display: none;
  }
}
#contentheader #top-header .top-header-section {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
#contentheader #top-header .top-header-section .container-delaer-info {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
  -webkit-flex-basis: 40%;
  -moz-flex-basis: 40%;
  -ms-flex-basis: 40%;
  flex-basis: 40%;
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #top-header .top-header-section .container-delaer-info {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address {
  transition: 0.3s;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone i, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address i {
  width: calc(20px + (30 - 20) * ((100vw - 1024px) / (1920 - 1024)));
  border-radius: 5px;
  background-color: transparent;
  text-align: center;
  transition: 0.3s;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone i::before, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address i::before {
  color: #FFDD00;
  font-size: calc(15px + (20 - 15) * ((100vw - 768px) / (1920 - 768)));
  transition: 0.3s;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:hover i, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address:hover i {
  background-color: transparent;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:hover i::before, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address:hover i::before {
  color: #FFDD00;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:visited, #contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:focus, #contentheader #top-header .top-header-section .container-delaer-info .dealer-phone {
  font-size: calc(14px + (22 - 14) * ((100vw - 768px) / (1920 - 768)));
  font-weight: 700;
  text-decoration: none;
  color: #fff;
  letter-spacing: 0em;
  padding-right: 4%;
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:visited, #contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:focus, #contentheader #top-header .top-header-section .container-delaer-info .dealer-phone {
    padding-bottom: 10px;
  }
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone i::before {
  transform: rotateY(180deg);
  display: inline-block;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-phone:hover {
  color: #FFDD00;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-address:visited, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address:focus, #contentheader #top-header .top-header-section .container-delaer-info .dealer-address {
  font-size: calc(12px + (17 - 12) * ((100vw - 1024px) / (1920 - 1024)));
  font-weight: 400;
  text-decoration: none;
  color: #fff;
  letter-spacing: 0em;
}
#contentheader #top-header .top-header-section .container-delaer-info .dealer-address:hover {
  color: #FFDD00;
}
#contentheader #top-header .top-header-section .container-slogan {
  -webkit-flex-basis: 45%;
  -moz-flex-basis: 45%;
  -ms-flex-basis: 45%;
  flex-basis: 45%;
}
#contentheader #top-header .top-header-section .container-slogan h3 {
  color: #fff;
  margin: 0px;
  letter-spacing: 0em;
  line-height: 1.26;
  text-align: center;
  font-weight: 600;
  font-style: italic;
  font-size: calc(12px + (23 - 12) * ((100vw - 1024px) / (1920 - 1024)));
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #top-header .top-header-section .container-slogan h3 {
    font-size: calc(12px + (16 - 12) * ((100vw - 768px) / (1023 - 768)));
  }
}
#contentheader #top-header .top-header-section .container-slogan h3 span {
  display: block;
}
#contentheader #top-header .top-header-section .container-logos {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  flex-basis: 20%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end;
  -ms-flex-pack: flex-end;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
#contentheader #top-header .top-header-section .container-logos img {
  max-width: 100%;
  height: auto;
  max-height: 32px;
  margin: 0px 10px;
  width: calc(50px + (156 - 50) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (min-width: 768px) {
  #contentheader #bottom-header {
    padding: calc(15px + (30 - 15) * ((100vw - 768px) / (1920 - 768))) 0px;
  }
}
#contentheader #bottom-header > .header-container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#contentheader #bottom-header > .header-container .header-left-wrapper {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  flex-basis: 20%;
}
@media only screen and (max-width: 767px) {
  #contentheader #bottom-header > .header-container .header-left-wrapper {
    padding: 4% 0%;
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
  }
}
#contentheader #bottom-header > .header-container .header-middle-wrapper {
  -webkit-flex-basis: 60%;
  -moz-flex-basis: 60%;
  -ms-flex-basis: 60%;
  flex-basis: 60%;
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #bottom-header > .header-container .header-middle-wrapper {
    -webkit-flex-basis: 80%;
    -moz-flex-basis: 80%;
    -ms-flex-basis: 80%;
    flex-basis: 80%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #bottom-header > .header-container .header-middle-wrapper #nd-menubar #contentnav {
    position: static;
    height: 40px;
  }
  #contentheader #bottom-header > .header-container .header-middle-wrapper #nd-menubar #contentnav #dnnMenu .topLevel li {
    line-height: 40px;
  }
}
#contentheader #bottom-header > .header-container .header-right-wrapper {
  -webkit-flex-basis: 16%;
  -moz-flex-basis: 16%;
  -ms-flex-basis: 16%;
  flex-basis: 16%;
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper {
    display: none;
    -webkit-flex-basis: 0%;
    -moz-flex-basis: 0%;
    -ms-flex-basis: 0%;
    flex-basis: 0%;
  }
}
#contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1;
}
@media only screen and (min-width: 768px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane .DnnModule-PostalCodeLookup {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane {
    -webkit-flex-basis: 74%;
    -moz-flex-basis: 74%;
    -ms-flex-basis: 74%;
    flex-basis: 74%;
    max-width: 74%;
  }
}
#contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div {
  width: 100%;
}
#contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div .btn-site {
  font-weight: 400;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div .btn-site {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div .btn-site {
    font-size: calc(10px + (16 - 10) * ((100vw - 1024px) / (1920 - 1024)));
  }
}
#contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div .btn-site i {
  font-size: calc(8px + (18 - 8) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  #contentheader #bottom-header > .header-container .header-right-wrapper #dnn_HeaderContactPane > div .btn-site i {
    font-size: calc(8px + (18 - 8) * ((100vw - 320px) / (767 - 320)));
  }
}

@media only screen and (max-width: 1023px) {
  #dnn_dnnLogo_imgLogo {
    padding: 1% 0;
  }
}
/*============================================================================================================================*/
/*=============================================
=            Row Background Styles            =
=============================================*/
#nd-background {
  background-color: gray;
}

.homepage #nd-middlebar::after {
  float: left;
  clear: both;
  content: "";
}

.homepage #nd-middlebar.first-row {
  background-image: url(img/home/bg-heroshot.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
@media only screen and (min-width: 768px) {
  .homepage #nd-middlebar.first-row {
    padding: calc(25px + (50 - 25) * ((100vw - 768px) / (1920 - 768))) 0px;
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row {
    background-image: url(img/home/bg-heroshot-xs.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: initial;
    padding: 15px;
  }
}
.homepage #nd-middlebar.first-row .container {
  padding: 0px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: stretch;
  -moz-align-items: stretch;
  -ms-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft {
  -webkit-flex-basis: 32%;
  -moz-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  background-image: linear-gradient(to right, #083077, #004990, #256EC0);
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft {
    display: none;
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    margin: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320))) 0px;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50px + (14 - -50) * ((100vw - 768px) / (1920 - 768)));
  right: 0;
  background-image: url(http://assets.netdrivenwebs.com/img/tcs-shared/tsn/template-1/home/bg-look-for-tire-service.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft::before {
    left: auto;
    right: 0;
    background-position: top right;
    width: 40%;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service {
  padding: 20% 15%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service {
    padding: 10% 7%;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service h3 {
  color: #fff;
  line-height: 1.18;
  font-weight: 700;
  margin: 0px;
  font-size: calc(14px + (22 - 14) * ((100vw - 768px) / (1920 - 768)));
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service h3 {
    font-size: calc(14px + (22 - 14) * ((100vw - 320px) / (767 - 320)));
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service h3 {
    padding-bottom: calc(10px + (20 - 10) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service h3::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFDD00;
  width: calc(31px + (62 - 31) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service h3::before {
    width: calc(31px + (62 - 31) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:visited, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:focus, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a {
  color: #fff;
  display: block;
  text-decoration: none;
  line-height: 1.17;
  font-weight: 600;
  transition: 0.3s;
  font-size: calc(12px + (17 - 12) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:visited, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:focus, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a {
    font-size: calc(12px + (17 - 12) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a i {
  color: #FFDD00;
  font-size: calc(8px + (10 - 8) * ((100vw - 768px) / (1920 - 768)));
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a i {
    font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:hover {
  color: #FFDD00;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneLeft .looking-tire-service a:hover i {
  padding-left: 10px;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle {
  background-color: rgba(31, 35, 39, 0.66);
  -webkit-flex-basis: 32%;
  -moz-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    margin: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320))) 0px;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle h3 {
  color: #fff;
  line-height: 1.18;
  font-weight: 700;
  margin: 0px;
  font-size: calc(16px + (22 - 16) * ((100vw - 768px) / (1920 - 768)));
  margin-left: 6%;
  padding: 6% 0%;
  padding-bottom: 10px;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle h3 i {
  transform: rotate(90deg);
  color: #FFDD00;
  font-size: calc(12px + (18 - 12) * ((100vw - 768px) / (1920 - 768)));
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle h3 i {
    font-size: calc(12px + (18 - 12) * ((100vw - 320px) / (767 - 320)));
  }
}
@media only screen and (min-width: 1024px) and (max-width: 1199px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle h3 {
    margin-left: 7%;
  }
}
@media only screen and (min-width: 320px) and (max-width: 1023px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle h3 {
    margin-left: 8%;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder {
  box-sizing: border-box;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #links .vlbBtn {
  display: none !important;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs {
  -webkit-flex-basis: 90%;
  -moz-flex-basis: 90%;
  -ms-flex-basis: 90%;
  flex-basis: 90%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
  -ms-flex-pack: space-around;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs::after {
  display: none;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect {
  margin: 0px;
  font-size: calc(10px + (14 - 10) * ((100vw - 320px) / (1920 - 320))) !important;
  width: 330px;
  margin-bottom: 10px;
  height: calc(28px + (36 - 28) * ((100vw - 320px) / (1920 - 320)));
  border-radius: calc(3px + (5 - 3) * ((100vw - 320px) / (1920 - 320)));
  border: none;
  font-family: "Open Sans";
  color: gray;
}
@media only screen and (min-width: 1024px) and (max-width: 1199px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect {
    width: 260px;
    margin-bottom: 5px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1023px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect {
    width: 260px;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect {
    width: 200px;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect {
    width: calc(240px + (620 - 240) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .DnnModule-NetDrivenModulesVehicleLookupBar #TireSizeFinder #sizefinder-inputs > div .vlbselect option {
  color: gray;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneMiddle .vlbCatalogBtn {
  width: 100%;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight {
  background-color: rgba(31, 35, 39, 0.66);
  -webkit-flex-basis: 32%;
  -moz-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    margin: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320))) 0px;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight h3 {
  color: #fff;
  line-height: 1.18;
  font-weight: 700;
  margin: 0px;
  text-align: center;
  font-size: calc(16px + (22 - 16) * ((100vw - 768px) / (1920 - 768)));
  padding: 6% 0%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight h3 {
    font-size: calc(16px + (22 - 16) * ((100vw - 320px) / (768 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service {
  margin: 5% 0%;
  -webkit-flex-basis: 32%;
  -moz-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service {
    -webkit-flex-basis: 48%;
    -moz-flex-basis: 48%;
    -ms-flex-basis: 48%;
    flex-basis: 48%;
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a:visited, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a:focus, .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a {
  text-decoration: none;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  transition: 0.3s;
  max-height: calc(40px + (55 - 40) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a img {
    max-height: calc(40px + (55 - 40) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a span {
  display: block;
  padding-top: 4%;
  text-align: center;
  color: #fff;
  font-size: calc(10px + (13 - 10) * ((100vw - 768px) / (1920 - 768)));
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a span {
    font-size: calc(10px + (13 - 10) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a:hover span {
  color: #FFDD00;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service a:hover img {
  transform: scale(0.9);
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service.all-services-link a span {
  margin: 0px;
  font-size: calc(13px + (16 - 13) * ((100vw - 768px) / (1920 - 768)));
  font-weight: 700;
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service.all-services-link a i {
  margin-top: 4%;
  display: block;
  text-align: center;
  color: #FFDD00;
  font-size: calc(10px + (14 - 10) * ((100vw - 768px) / (1920 - 768)));
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .services-list .container-service.all-services-link a i {
    font-size: calc(10px + (14 - 10) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.first-row .container #dnn_TopContentPaneRight .btn-site {
  width: 100%;
}

.homepage #nd-middlebar.second-row {
  background-color: #E2E2E2;
}
@media only screen and (min-width: 768px) {
  .homepage #nd-middlebar.second-row {
    position: relative;
    z-index: 1;
    padding: calc(25px + (50 - 25) * ((100vw - 768px) / (1920 - 768))) 0px;
  }
  .homepage #nd-middlebar.second-row::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    background-color: #EFEFEF;
    height: 100%;
    width: 48.5%;
    z-index: -1;
  }
}
.homepage #nd-middlebar.second-row .container {
  padding: 0px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft {
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  flex-basis: 50%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    padding: calc(30px + (60 - 30) * ((100vw - 320px) / (768 - 320))) 0px;
    background-color: #EFEFEF;
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .title-text {
  -webkit-flex-basis: 100%;
  -moz-flex-basis: 100%;
  -ms-flex-basis: 100%;
  flex-basis: 100%;
  color: #000;
  font-weight: 800;
  margin: 0px;
  font-size: calc(20px + (26 - 20) * ((100vw - 768px) / (1920 - 768)));
  text-align: left;
  position: relative;
  padding-bottom: 5px;
  margin-bottom: calc(5px + (25 - 5) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .title-text {
    text-align: left;
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (767 - 320)));
    padding-bottom: calc(7px + (15 - 7) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
    margin-left: 10%;
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .title-text::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFDD00;
  width: calc(118px + (136 - 118) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .title-text::before {
    margin: auto;
    width: calc(118px + (136 - 118) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section {
  width: 90%;
  margin-right: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  justify-content: flex-start;
  -ms-flex-pack: flex-start;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section {
    margin: 0 auto;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-left, .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right {
  height: calc(170px + (222 - 170) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-left, .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right {
    height: calc(160px + (260 - 160) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-left.ca {
  background-image: url(http://assets.netdrivenwebs.com/img/tcs-shared/tsn/template-1/home/AIR-MILES-Card.png);
  background-color: white;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-left {
  -webkit-flex-basis: 40%;
  -moz-flex-basis: 40%;
  -ms-flex-basis: 40%;
  flex-basis: 40%;
  background-image: url(http://assets.netdrivenwebs.com/img/tcs-shared/tsn/template-1/home/bg-goodyear-get-credit.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-left::before {
  display: none;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  height: 100%;
  width: calc(2px + (10 - 2) * ((100vw - 320px) / (1920 - 320)));
  background-color: #FFDD00;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right.ca {
  background-color: white;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right.ca h3 {
  color: black;
  font-size: calc(16px + (20 - 16) * ((100vw - 768px) / (1920 - 768)));
  font-weight: 800;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right.ca span {
  color: #004990;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right.ca .btn-site-secodary {
  font-size: calc(12px + (14 - 12) * ((100vw - 768px) / (1920 - 768)));
  font-weight: 800;
  text-transform: uppercase;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  background-color: #083077;
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  flex-basis: 50%;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right h3 {
  text-align: center;
  margin: 0px;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: calc(18px + (28 - 18) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right h3 {
    font-size: calc(12px + (28 - 12) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right h3 span {
  display: block;
  color: #FFDD00;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneLeft .explorer-financing-section .column-right .btn-site-secodary {
  font-weight: 800;
  text-transform: uppercase;
  font-size: calc(11px + (14 - 11) * ((100vw - 320px) / (1920 - 320)));
  margin: 10px auto;
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneRight {
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  flex-basis: 50%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneRight {
    padding: calc(30px + (60 - 30) * ((100vw - 320px) / (768 - 320))) 0px;
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneRight {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
  }
}
.homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneRight .btn-site {
  margin-top: 4%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.second-row .container #dnn_MiddleContentPaneRight .btn-site {
    margin: 0 auto;
  }
}

.homepage #nd-middlebar.third-row {
  padding: calc(25px + (50 - 25) * ((100vw - 320px) / (1920 - 320))) 0px;
  background-color: #fff;
}
.homepage #nd-middlebar.third-row .certifications-section h3 {
  color: #1F2327;
  font-weight: 800;
  margin: 0px;
  font-size: calc(20px + (26 - 20) * ((100vw - 768px) / (1920 - 768)));
  text-align: center;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.third-row .certifications-section h3 {
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (767 - 320)));
    padding-bottom: calc(7px + (15 - 7) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.third-row .certifications-section h3::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #FFDD00;
  width: calc(118px + (136 - 118) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.third-row .certifications-section h3::before {
    width: calc(118px + (136 - 118) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.third-row .certifications-section .certifications-logos {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
  -ms-flex-pack: space-around;
}
@media only screen and (min-width: 1024px) {
  .homepage #nd-middlebar.third-row .certifications-section .certifications-logos {
    width: 70%;
  }
}
.homepage #nd-middlebar.third-row .certifications-section .certifications-logos .container-logo {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  flex-basis: 20%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.third-row .certifications-section .certifications-logos .container-logo {
    -webkit-flex-basis: 40%;
    -moz-flex-basis: 40%;
    -ms-flex-basis: 40%;
    flex-basis: 40%;
  }
}
.homepage #nd-middlebar.third-row .certifications-section .certifications-logos .container-logo img {
  max-width: 100%;
  height: auto;
}
.homepage #nd-middlebar.third-row .certifications-section .certifications-logos .container-logo:nth-of-type(3) img {
  max-width: 70%;
}

.homepage #nd-middlebar.fourth-row {
  padding: calc(25px + (50 - 25) * ((100vw - 320px) / (1920 - 320))) 0px;
  background-color: #fff;
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo, .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section {
  height: calc(215px + (340 - 215) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo, .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section {
    height: auto;
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo {
  background-image: linear-gradient(to right, #083077, #004990, #256EC0);
  -webkit-flex-basis: 30%;
  -moz-flex-basis: 30%;
  -ms-flex-basis: 30%;
  flex-basis: 30%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    height: calc(115px + (240 - 115) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 1023px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-logo img {
    max-width: 70%;
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section {
  -webkit-flex-basis: 70%;
  -moz-flex-basis: 70%;
  -ms-flex-basis: 70%;
  flex-basis: 70%;
  background-image: url(http://assets.netdrivenwebs.com/img/tcs-shared/tsn/template-1/home/TSN-Service-Network-bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  justify-content: space-around;
  -ms-flex-pack: space-around;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    background-image: url(http://assets.netdrivenwebs.com/img/tcs-shared/tsn/template-1/home/TSN-Service-Network-bg-xs.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: 12% 0%;
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section h3 {
  color: #fff;
  font-weight: 600;
  margin-bottom: 4%;
  font-size: calc(18px + (26 - 18) * ((100vw - 768px) / (1920 - 768)));
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section h3 span {
  font-weight: 800;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section h3 {
    text-align: center;
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul {
  list-style: none;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul {
    margin: 8% 0%;
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul li {
  margin: 0px;
  color: #fff;
  font-weight: 600;
  line-height: 1.64;
  font-size: calc(12px + (14 - 12) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul li {
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (767 - 320)));
    text-align: center;
  }
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul li i {
  vertical-align: middle;
  font-size: 6px;
}
.homepage #nd-middlebar.fourth-row .tire-service-network-section .column-section ul li i.fa {
  margin-right: 8px;
}

.homepage #nd-middlebar.fifth-row .container {
  padding: 0px;
}

.homepage #nd-middlebar.sixth-row {
  background-color: #fff;
  padding: 45px 0;
}
@media (min-width: 1200px) {
  .homepage #nd-middlebar.sixth-row {
    padding: 50px 0px;
  }
}
.homepage #nd-middlebar.sixth-row .reviews-title-section {
  color: #000;
  font-weight: 800;
  margin: 0px;
  font-size: calc(20px + (26 - 20) * ((100vw - 1024px) / (1920 - 1024)));
  text-align: center;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1023px) {
  .homepage #nd-middlebar.sixth-row .reviews-title-section {
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (1023 - 320)));
    padding-bottom: calc(7px + (15 - 7) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.sixth-row .reviews-title-section::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #FFDD00;
  width: calc(118px + (136 - 118) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 1023px) {
  .homepage #nd-middlebar.sixth-row .reviews-title-section::before {
    width: calc(118px + (136 - 118) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.sixth-row .main-reviews .reviews-wrapper {
  text-align: center;
}
.homepage #nd-middlebar.sixth-row .main-reviews .reviews-text {
  color: #1F2327;
  font-weight: 400;
  font-style: italic;
  font-style: italic;
  font-size: calc(18px + (25 - 18) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.sixth-row .main-reviews .reviews-text {
    font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.sixth-row .main-reviews .reviews-name {
  color: #1F2327;
  font-size: 25px;
  font-size: 600;
  font-style: italic;
  font-size: calc(18px + (25 - 18) * ((100vw - 768px) / (1920 - 768)));
  margin: calc(20px + (40 - 20) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.sixth-row .main-reviews .reviews-name {
    font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (767 - 320)));
    margin: calc(20px + (40 - 20) * ((100vw - 768px) / (1920 - 768)));
  }
}
.homepage #nd-middlebar.sixth-row .main-reviews .reviews-rating .fa-star {
  color: #FFD26D;
  font-size: calc(20px + (30 - 20) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 1023px) {
  .homepage #nd-middlebar.sixth-row .main-reviews .reviews-rating .fa-star {
    font-size: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.sixth-row .main-reviews .btn-site {
  margin: 0 auto;
  margin-top: 4%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.sixth-row .main-reviews .btn-site {
    margin-top: 10%;
  }
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow {
  display: flex !important;
  justify-content: center;
  align-items: center;
  text-shadow: none;
  width: auto;
  height: 20px;
  width: 20px;
  z-index: 2;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:before {
  position: relative;
  font-family: "Font Awesome 5 Free";
  font-size: 20px;
  opacity: 1;
}
@media (min-width: 992px) {
  .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow {
    display: flex !important;
    justify-content: center;
    align-items: center;
    text-shadow: none;
    width: auto;
    height: 30px;
    width: 30px;
    z-index: 2;
  }
  .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:before {
    position: relative;
    font-family: "Font Awesome 5 Free";
    font-size: 30px;
    opacity: 1;
  }
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow {
  opacity: 1;
  background: transparent;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:before {
  color: #000;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:hover, .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:active, .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:focus {
  background: transparent;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:hover:before, .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:active:before, .homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:focus:before {
  color: #004990;
  transition: 0.3s;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow.slick-prev {
  left: 15px !important;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow.slick-next {
  right: 15px !important;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow:before {
  position: relative;
  top: 0;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow.slick-prev:before {
  left: -2px;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-arrow.slick-next:before {
  right: -1px;
}
.homepage #nd-middlebar.sixth-row .reviews-slider .slick-list {
  margin: 0 calc(20px + (60 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.homepage #nd-middlebar.seventh-row {
  display: none;
  padding: calc(50px + (105 - 50) * ((100vw - 768px) / (1920 - 768))) 0;
  background-color: #EFEFEF;
}
.homepage #nd-middlebar.seventh-row .rate-container {
  width: 100%;
  height: calc(250px + (446 - 250) * ((100vw - 768px) / (1920 - 768)));
  display: flex;
  box-shadow: -4px 0px 6px rgba(0, 0, 0, 0.13);
  margin: 10px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.seventh-row .rate-container {
    -webkit-flex-direction: column-reverse;
    -moz-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 92vw;
  }
}
.homepage #nd-middlebar.seventh-row .rate-container > div {
  width: 50%;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.seventh-row .rate-container > div {
    width: 90%;
  }
}
.homepage #nd-middlebar.seventh-row .rate-container .left-info {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.seventh-row .rate-container .left-info {
    padding: 0;
    align-items: center;
    text-align: center;
  }
}
.homepage #nd-middlebar.seventh-row .rate-container .left-info h3 {
  font-size: calc(20px + (45 - 20) * ((100vw - 768px) / (1920 - 768)));
  font-weight: 800;
  line-height: 1;
  margin-bottom: 5%;
  margin-left: calc(65px + (134 - 65) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.seventh-row .rate-container .left-info h3 {
    margin-left: 0;
    font-size: 5.5vw;
  }
}
.homepage #nd-middlebar.seventh-row .rate-container .left-info .btn-site {
  margin-left: calc(65px + (134 - 65) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.seventh-row .rate-container .left-info .btn-site {
    margin: 0;
  }
}
.homepage #nd-middlebar.seventh-row .rate-container .right-bg {
  background: url(img/home/bg-cta.jpg) no-repeat center/cover;
}

.homepage #nd-middlebar.eighth-row {
  background-image: url(img/home/bg-welcome.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: calc(25px + (80 - 25) * ((100vw - 320px) / (1920 - 320))) 0px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row {
    background-image: url(img/home/bg-welcome-xs.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}
.homepage #nd-middlebar.eighth-row .welcome-section {
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section {
    text-align: center;
  }
}
.homepage #nd-middlebar.eighth-row .welcome-section .welcome-text-title {
  color: #fff;
  font-weight: 700;
  margin: 0px;
  font-size: calc(20px + (26 - 20) * ((100vw - 768px) / (1920 - 768)));
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .welcome-text-title {
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (767 - 320)));
    padding-bottom: calc(7px + (15 - 7) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.homepage #nd-middlebar.eighth-row .welcome-section .welcome-text-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFDD00;
  width: calc(118px + (136 - 118) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .welcome-text-title::before {
    right: 0;
    margin: auto;
    width: calc(118px + (136 - 118) * ((100vw - 320px) / (767 - 320)));
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .desktop-text {
    display: none;
  }
}
.homepage #nd-middlebar.eighth-row .welcome-section p {
  color: #fff;
  padding: 15px 0px;
  padding-right: 45%;
  line-height: 1.47;
  letter-spacing: 0em;
  font-weight: 400;
  font-size: calc(14px + (17 - 14) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section p {
    font-size: calc(12px + (17 - 12) * ((100vw - 320px) / (767 - 320)));
    padding-left: 4%;
    padding-right: 4%;
  }
}
.homepage #nd-middlebar.eighth-row .welcome-section p a {
  font-weight: 700;
  text-decoration: none;
}
.homepage #nd-middlebar.eighth-row .welcome-section .btn-site {
  margin-right: auto;
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .btn-site {
    margin: 0 auto;
    margin-top: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
@media only screen and (max-width: 767px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .hidden-xs {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .homepage #nd-middlebar.eighth-row .welcome-section .display-xs {
    display: none;
  }
}

.homepage #nd-middlebar.ninth-row {
  background-color: #fff;
  border-top: 1px solid #5B5B5B;
}
@media only screen and (min-width: 1024px) {
  .homepage #nd-middlebar.ninth-row {
    padding: 20px 0px;
  }
}
.homepage #nd-middlebar.ninth-row .logobar-slider .slick-slide img {
  margin: 0 auto;
}

#main-content {
  background: #FFF;
}

#sub-content {
  background: #FFF;
  padding: 0px;
}
#sub-content .container {
  padding: 0px;
}

#bgbottom {
  background: #000000;
}

@media only screen and (max-width: 767px) {
  #sub-content {
    display: none;
  }
}
/*=======================================================================================================================================*/
/*=============================================
=               DNN Pane Styles              =
=============================================*/
#dnn_LeftPane {
  float: left;
  width: 30%;
}

#dnn_RightPane {
  float: right;
  width: 65%;
}

@media only screen and (max-width: 767px) {
  #dnn_ContentPane,
#dnn_HomeSidePane,
#dnn_LeftPane,
#dnn_RightPane,
#dnn_HomeContentPane,
#contentnav {
    width: auto;
    float: none;
  }
}
/*=======================================================================================================================================*/
/*=============================================
=                Footer Styles                  = 
=============================================*/
#bgbottom {
  background-color: #1F2327;
}
#bgbottom #netdriven {
  padding: 0%;
  width: 100%;
  margin: auto;
}
@media (max-width: 767px) {
  #bgbottom #netdriven {
    padding: 0;
  }
}
#bgbottom h2 {
  color: #fff;
  text-transform: capitalize;
  font-weight: 700;
  position: relative;
  margin: 0px;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
#bgbottom h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFDD00;
  width: calc(31px + (62 - 31) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  #bgbottom h2::before {
    right: 0;
    margin: auto;
    width: calc(31px + (62 - 31) * ((100vw - 320px) / (767 - 320)));
  }
}
#bgbottom ul {
  display: flex !important;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
#bgbottom ul li {
  margin: 0px !important;
}
#bgbottom ul li a {
  color: #fff;
  transition: 0.3s;
}
#bgbottom ul li a:hover, #bgbottom ul li a:focus, #bgbottom ul li a:active {
  color: #FFDD00;
  padding-left: 3%;
}
#bgbottom ul li.view-more-link {
  margin-top: 30px !important;
}
#bgbottom ul li.view-more-link a {
  font-weight: 600;
}
#bgbottom ul li.view-more-link a i {
  color: #FFDD00;
  font-size: calc(8px + (10 - 8) * ((100vw - 768px) / (1920 - 768)));
}
@media only screen and (max-width: 767px) {
  #bgbottom ul li.view-more-link a i {
    font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (767 - 320)));
  }
}

#BottomFooter {
  width: 100%;
  padding: 0 15px;
  box-sizing: border-box;
  padding: 35px 0px 0px 0px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  color: #fff !important;
}
#BottomFooter .DnnModule-5127 {
  display: none !important;
}
#BottomFooter .DnnModule-5128 {
  display: none !important;
}
#BottomFooter .DnnModule-5148 {
  display: none !important;
}
#BottomFooter .DnnModule-5147 {
  display: none !important;
}
@media (min-width: 768px) {
  #BottomFooter {
    width: 750px;
    margin: 0 auto;
    padding: 0px;
  }
}
@media (min-width: 992px) {
  #BottomFooter {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  #BottomFooter {
    width: 1170px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #BottomFooter {
    padding: 35px;
  }
}
@media only screen and (min-width: 1024px) {
  #BottomFooter {
    padding: 75px 0px;
  }
}
@media only screen and (max-width: 767px) {
  #BottomFooter {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    padding-top: 0;
  }
}
#BottomFooter > div {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  flex-basis: 20%;
  width: 20%;
  margin: 0;
  padding: 0;
  line-height: 1.7;
  font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 300;
  min-height: auto;
}
@media only screen and (max-width: 767px) {
  #BottomFooter > div {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
    width: 100%;
    text-align: center;
    padding: 25px 0;
    border-bottom: 1px solid #D4D2D2;
  }
}
#BottomFooter > div h2 {
  line-height: 1;
  font-size: calc(15px + (23 - 15) * ((100vw - 320px) / (1920 - 320)));
}
#BottomFooter > div ul li a {
  font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
}
#BottomFooter #socialfont {
  margin-top: 15px;
  float: none;
}
#BottomFooter #socialfont .fa {
  color: #fff;
  transition: 0.3s;
}
#BottomFooter #socialfont .fa:hover {
  transform: scale(1.2);
  color: #FFDD00;
}
#BottomFooter #poweredbynd,
#BottomFooter .poweredByBadge {
  color: #fff;
  background-color: #1F2327;
  padding: 0px;
  width: 170px;
}
#BottomFooter #poweredbynd span,
#BottomFooter .poweredByBadge span {
  font-size: 0.667em;
  text-align: left;
}
#BottomFooter #poweredbynd .badgeContent .badgeLogo,
#BottomFooter .poweredByBadge .badgeContent .badgeLogo {
  transition: 0.3s;
}
#BottomFooter #poweredbynd #dnn_BADGE_dnnLOGIN_loginLink,
#BottomFooter #poweredbynd #dnn_BADGE_dnnLOGIN_loginLink,
#BottomFooter .poweredByBadge #dnn_BADGE_dnnLOGIN_loginLink,
#BottomFooter .poweredByBadge #dnn_BADGE_dnnLOGIN_loginLink {
  color: #fff;
  text-decoration: none;
  transition: 0.3s;
}
#BottomFooter #poweredbynd #dnn_BADGE_dnnLOGIN_loginLink:hover,
#BottomFooter #poweredbynd #dnn_BADGE_dnnLOGIN_loginLink:hover,
#BottomFooter .poweredByBadge #dnn_BADGE_dnnLOGIN_loginLink:hover,
#BottomFooter .poweredByBadge #dnn_BADGE_dnnLOGIN_loginLink:hover {
  padding-left: 4%;
}

#LocationWidget * {
  line-height: 1.4;
}
#LocationWidget .locwidget-cs a {
  transition: 0.3s;
}
#LocationWidget .locwidget-cs a:hover {
  padding-left: 3%;
}

#hometext {
  padding: 25px 15px;
  color: #fff;
  font-size: 13px;
}
@media only screen and (min-width: 1024px) {
  #hometext {
    padding: 45px 25px;
  }
}
@media only screen and (min-width: 768px) {
  #hometext {
    border-top: 1px solid #A9A9A9;
  }
}
#hometext p {
  margin: 0 auto;
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 0px;
}
@media only screen and (max-width: 767px) {
  #hometext p {
    width: 80%;
  }
}
@media (min-width: 992px) {
  #hometext p {
    font-size: 16px;
  }
}
#hometext p a {
  color: #fff;
  transition: 0.3s;
  font-weight: 700;
}

#footer-legal {
  border-top: 1px solid #fff;
  background-color: #1F2327;
  color: #fff;
  font-family: "Open Sans" !important;
  font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
}
#footer-legal #legal-nav a {
  color: #fff !important;
  text-decoration: none !important;
  transition: 0.3s;
}
#footer-legal #legal-nav a:hover {
  color: #FFDD00 !important;
}

/*=======================================================================================================================================*/
/*=============================================
=                Content Styles                  = 
=============================================*/
.tns-page .page-section {
  padding: 4% 0%;
}
.tns-page hr {
  color: #ACB0BB;
}
.tns-page h3 {
  margin: 0% 0% 5% 0%;
  color: #000;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0em;
  font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (1920 - 320)));
}
@media only screen and (min-width: 768px) {
  .tns-page h3 span {
    display: block;
  }
}
.tns-page h3.section-title-left {
  text-align: left;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.tns-page h3.section-title-left::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #FFDD00;
  width: calc(31px + (136 - 31) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .tns-page h3.section-title-left::before {
    width: calc(31px + (62 - 31) * ((100vw - 320px) / (767 - 320)));
  }
}
.tns-page h3.section-title-center {
  text-align: center;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.tns-page h3.section-title-center::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #FFDD00;
  width: calc(31px + (136 - 31) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .tns-page h3.section-title-center::before {
    width: calc(31px + (62 - 31) * ((100vw - 320px) / (767 - 320)));
  }
}
.tns-page h3.section-title-right {
  text-align: right;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.tns-page h3.section-title-right::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #FFDD00;
  width: calc(31px + (136 - 31) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 767px) {
  .tns-page h3.section-title-right::before {
    width: calc(31px + (62 - 31) * ((100vw - 320px) / (767 - 320)));
  }
}
.tns-page h4 {
  margin: 0% 0% 5% 0%;
  color: #000;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0em;
  font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
}
.tns-page p {
  margin: 0% 0% 4% 0% !important;
  color: #000;
  font-size: calc(14px + (17 - 14) * ((100vw - 320px) / (1920 - 320)));
}
.tns-page ul li {
  color: #000;
  font-size: calc(14px + (17 - 14) * ((100vw - 320px) / (1920 - 320)));
}
.tns-page .text-primary-color {
  color: #004990;
}
.tns-page .text-secondary-color {
  color: #FFDD00;
}
.tns-page .text-right {
  text-align: right;
}
.tns-page .text-left {
  text-align: left;
}
.tns-page .text-center {
  text-align: center;
}
.tns-page .text-bold {
  font-weight: 700;
}
.tns-page .text-normal {
  font-weight: 400;
}
.tns-page .text-black {
  font-style: 900;
}
.tns-page .text-italic {
  font-style: italic;
}
.tns-page .text-color-white {
  color: #fff;
}
.tns-page .text-color-black {
  color: #000;
}
.tns-page .text-capitalize {
  text-transform: capitalize;
}
.tns-page .text-uppercase {
  text-transform: uppercase;
}
.tns-page .image-container {
  margin: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.tns-page .image-container img {
  max-width: 100%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .tns-page .float-right {
    float: right;
  }
}
@media only screen and (min-width: 768px) {
  .tns-page .float-left {
    float: left;
  }
}
.tns-page .align-center {
  margin: 0 auto;
}
.tns-page .align-left {
  margin: 0 auto 0 0;
}
.tns-page .align-right {
  margin: 0 0 0 auto;
}
.tns-page .video-responsive {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  padding-top: 30px;
  position: relative;
}
.tns-page .video-responsive iframe,
.tns-page .video-responsive object,
.tns-page .video-responsive embed {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.tns-page .collapsible {
  background-color: #fff;
  color: #000;
  cursor: pointer;
  padding: 2%;
  width: 100%;
  border: none;
  outline: none;
  font-size: calc(12px + (18 - 12) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 700;
  text-align: left;
  transition: 0.3s;
  font-family: "Open Sans";
}
.tns-page .active:hover, .tns-page .collapsible:hover {
  background-color: #fff;
  color: #004990;
}
.tns-page .active:hover::after, .tns-page .collapsible:hover::after {
  color: #004990;
}
.tns-page .collapsible::after {
  content: "\f067";
  color: #004990;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  font-family: "Font Awesome 5 Free";
  transition: 0.3s;
}
.tns-page .active {
  color: #004990;
}
.tns-page .active::after {
  content: "\f068";
  color: #004990;
}
.tns-page .content {
  padding: 0 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  background-color: #fff;
}
.tns-page .content p {
  margin: 1% 0% !important;
  font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
}
.tns-page .content ul li {
  font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
}

.page-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.page-banner.Goodyear-Tire-and-Service-Network {
  background-image: linear-gradient(to right, #083077, #004990, #256EC0);
}
.page-banner.Goodyear-Tire-and-Service-Network .container-custom {
  padding: 4% 0%;
  width: 85%;
  margin: 0 auto;
}
.page-banner.Goodyear-Tire-and-Service-Network .container-custom p {
  margin: 3% 60% 0% 0% !important;
}
@media only screen and (max-width: 767px) {
  .page-banner.Goodyear-Tire-and-Service-Network .container-custom p {
    text-align: center;
    margin: 3% 0% 0% 0% !important;
  }
}
@media only screen and (min-width: 768px) {
  .page-banner.Goodyear-Tire-and-Service-Network {
    position: relative;
  }
  .page-banner.Goodyear-Tire-and-Service-Network::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -1px;
    background-image: url(img/internal-pages/goodyear-tsn/bg-banner.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 50%;
    height: 100%;
  }
}
.page-banner.TSN-Nationwide-Limited-Warranty {
  background-image: url(img/internal-pages/tsn-warranty/bg-banner.jpg);
}
.page-banner .container {
  padding: 5% 0%;
}
.page-banner .page-title {
  margin: 0px;
  color: #fff;
  font-weight: 900;
  font-size: calc(20px + (45 - 20) * ((100vw - 320px) / (1920 - 320)));
  line-height: 1;
  letter-spacing: 0.038em;
}
@media only screen and (max-width: 767px) {
  .page-banner .page-title {
    text-align: center;
  }
}
.page-banner .page-title sup {
  font-size: calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
}
.page-banner .page-title i::before {
  padding: 0% 1%;
  vertical-align: middle;
}
.page-banner .page-title span {
  display: block;
}

.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(1) ul li,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(1) ul li {
  list-style: none !important;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(1) ul li i,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(1) ul li i {
  vertical-align: middle;
  font-size: 6px;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(1) ul li i.fa,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(1) ul li i.fa {
  margin-right: 8px;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(1) .btn-site,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(1) .btn-site {
  margin-top: 4%;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column {
  -webkit-flex-basis: 32%;
  -moz-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  padding: 5px 0px;
}
@media only screen and (max-width: 767px) {
  .Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column {
    -webkit-flex-basis: 49%;
    -moz-flex-basis: 49%;
    -ms-flex-basis: 49%;
    flex-basis: 49%;
  }
}
@media only screen and (min-width: 320px) and (max-width: 460px) {
  .Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    flex-basis: 100%;
  }
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column a:visited, .Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column a:focus, .Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column a,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column a:visited,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column a:focus,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column a {
  text-decoration: none;
  color: #000;
  transition: 0.3s;
  font-size: calc(12px + (17 - 12) * ((100vw - 320px) / (1920 - 320)));
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .flex-row .flex-column a:hover,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .flex-row .flex-column a:hover {
  padding-left: 3%;
}
.Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .btn-site.align-center,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .btn-site.align-center {
  margin: 2% auto;
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .Goodyear-Tire-and-Service-Network-US .page-section:nth-of-type(2) .btn-site.align-center,
.Goodyear-Tire-and-Service-Network-CA .page-section:nth-of-type(2) .btn-site.align-center {
    width: calc(200px + (280 - 200) * ((100vw - 320px) / (767 - 320)));
  }
}

#dnn_BottomContentPane .DnnModule-NetDrivenModulesCouponClient .ModNetDrivenModulesCouponClientC {
  max-width: 570px;
  margin: 0 auto;
}

.subpage #sub-content {
  background-color: #f0f0f2;
}
@media only screen and (max-width: 767px) {
  .subpage #sub-content {
    display: block;
  }
}
.subpage #sub-content .container {
  padding: 0px;
}
.subpage #sub-content .container #dnn_BottomContentPane > div:nth-of-type(1) {
  padding-top: 4%;
}
.subpage #sub-content .container #dnn_BottomContentPane > div:nth-of-type(3) {
  padding-bottom: 4%;
}
.subpage .coupons-section h3 {
  color: #000;
  font-weight: 800;
  margin: 0px;
  font-size: calc(20px + (26 - 20) * ((100vw - 1024px) / (1920 - 1024)));
  text-align: center;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1023px) {
  .subpage .coupons-section h3 {
    font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (1023 - 320)));
    padding-bottom: calc(7px + (15 - 7) * ((100vw - 320px) / (767 - 320)));
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (767 - 320)));
  }
}
.subpage .coupons-section h3::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #FFDD00;
  width: calc(118px + (136 - 118) * ((100vw - 768px) / (1920 - 768)));
  height: 2px;
}
@media only screen and (max-width: 1023px) {
  .subpage .coupons-section h3::before {
    width: calc(118px + (136 - 118) * ((100vw - 320px) / (767 - 320)));
  }
}
.subpage .coupons-section .btn-site {
  margin: 0 auto;
  margin-top: 30px;
}
.subpage .DnnModule-NetDrivenModulesCouponClient .coupon-wrap {
  max-width: 570px;
}
.subpage .DnnModule-NetDrivenModulesCouponClient .coupon-wrap > img[src*=spacer] {
  width: auto;
  height: auto;
}
.subpage .DnnModule-NetDrivenModulesCouponClient .coupon-overlay {
  bottom: 1%;
  top: 0px;
  margin: auto 0;
}
@media only screen and (min-width: 768px) {
  .subpage .DnnModule-NetDrivenModulesCouponClient .couponsliderview {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
  }
}

.pc-header::before {
  background-color: #1F2327 !important;
  width: 900% !important;
  left: -365% !important;
}

.ndcustom1, .ndcustombutton1:hover, .ndcustombutton2:hover, #btnLocDirections:hover, #btnLocPhone:hover {
  background-color: #FFDD00 !important;
  color: black !important;
}

.about-info-tsn {
  padding: 3% 0;
}
.about-info-tsn .flex-container {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .about-info-tsn .flex-container {
    flex-direction: column;
    justify-content: center;
  }
}
.about-info-tsn .flex-container > div {
  width: 45%;
}
@media only screen and (max-width: 767px) {
  .about-info-tsn .flex-container > div {
    width: 90%;
  }
}
.about-info-tsn .flex-container .img-info {
  text-align: center;
}
.about-info-tsn .flex-container .img-info img {
  display: block;
  margin-bottom: 3%;
}
.about-info-tsn .btn-site {
  margin: 0 auto;
}

.Employment-info, .employment-info-second {
  padding: 2% 0;
}
.Employment-info .general-container, .employment-info-second .general-container {
  padding: 10px 20px;
  background-color: #eee;
  border: 1px solid #ccc;
  color: black;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZob3N0cy9nYXMxNS9Qb3J0YWxzLzMzL1NraW5zL21hc3Rlci9za2luLnNjc3MiLCJjb21wb25lbnRzL19tYXN0ZXIuc2NzcyIsImNvbXBvbmVudHMvX21lZGlhLXF1ZXJpZXMuc2NzcyIsImNvbXBvbmVudHMvX2FuaW1hdGlvbi1lZmZlY3RzLnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwtaWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fdG9wYmFyLnNjc3MiLCJjb21wb25lbnRzL19uYXZiYXIuc2NzcyIsImNvbXBvbmVudHMvX2hvbWV0ZXh0LnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX21vYmlsZS1idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19sb2NhdGlvbi1maW5kZXIuc2NzcyIsImNvbXBvbmVudHMvX25kc2Muc2NzcyIsImNvbXBvbmVudHMvX2F0Yy5zY3NzIiwiY29tcG9uZW50cy9fbG9jYXRpb24td2lkZ2V0LnNjc3MiLCJjb21wb25lbnRzL19pbnN0YW50LXF1b3RlLnNjc3MiLCJjb21wb25lbnRzL19jb3Vwb25zLnNjc3MiLCJjb21wb25lbnRzL19tYS1hZHZpc29yLnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXdzLnNjc3MiLCJjb21wb25lbnRzL19hcW1vZHVsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBbVNBO0FBQUE7QUFBQTtFQUdDOzs7QUFHRDtBQUFBO0VBRUM7OztBQUdEO0VBOUNDO0VBQ0E7RUFDQTs7QUFDQTtFQTJDRDtJQTFDRTtJQUNBO0lBQ0E7OztBQUdEO0VBcUNEO0lBcENFOzs7QUFHRDtFQWlDRDtJQWhDRTs7OztBQW9DRjtFQUNDO0VBQ0E7RUFDQTs7O0FDblREO0FBQUE7QUFBQTtBQUlBO0VBQTRlO0VBQVc7RUFBWTtFQUFXO0VBQWlCO0VBQWU7OztBQUM5aUI7RUFBRzs7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RDtJQUVFOzs7QUFHRDtFQUNDOztBQUdFO0VBQ0M7O0FBRUQ7RUFDQzs7QUFPSjtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FFcmtGRDtFRjZqRkE7SUFVRTtJQUNBO0lBQ0E7OztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsa0JBMTBFYztFQTIwRWQ7RUFDQTs7QUVybEZGO0VGMmtGQztJQVlFOzs7QUFJSDtFQUNDO0VBQ0E7O0FBT0Q7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7O0FFeG1GRDtFRjJtRkM7SUFDQztJQUNBO0lBQ0E7SUFDQTs7OztBQU9KO0VBQW9CO0VBQXNDO0VBQXdCOzs7QUFFbEY7RUFFQztFQUNBOzs7QUFLRDtFQUNDOztBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7O0FFeHBGQTtFRm9wRkQ7SUFNRTtJQUNBOzs7QUFFRDtFQUNDOztBRTlwRkQ7RUY2cEZBO0lBR0U7OztBQUdGO0VBQ1U7O0FBQ1Q7RUFDQztFQUNBOztBQUlIO0VBQ0M7OztBQUlGO0VBQ0M7O0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQSIsImZpbGUiOiJ2aG9zdHMvZ2FzMTUvUG9ydGFscy8zMy9Ta2lucy9tYXN0ZXIvc2tpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcclxuREVWIFZFUlNJT04gNC4wIExBU1QgVVBEQVRFRCAyLzIxLzIwMTlcclxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXHJcbiovXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8tLS0tLS0tLS0tLS0tLS0tIFNsaWRlciBNaXhpbnMgLS0tLS0tLS0tLS0tLS0tLVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEFycm93cyBPZmZlciBSb3RhdG9yIC8gTG9nb2JhclxyXG4vLyBhc3NpZ25zIGxlZnQgYW5kIHJpZ2h0IGljb25zIGFzIHdlbGwgYXMgdGhlaXIgZm9udC1zaXplICYgZGltZW5zaW9uXHJcbkBtaXhpbiBzbGljay1hcnJvdy1zdHlsZXIoJGZvbnQtc2l6ZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XHJcblx0LnNsaWNrLWFycm93IHtcclxuXHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHRleHQtc2hhZG93OiBub25lO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6ICRoZWlnaHQ7XHJcblx0XHR3aWR0aDogJHdpZHRoO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XHJcblx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuXHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLy8gc2V0cyBzaGFwZSwgY29sb3IgYW5kIGJhY2tncm91bmQgY29sb3IgdG8gLmNhcm91c2VsLWNvbnRyb2xcclxuLy8gJHNoYXBlIGNhbiBiZTogc3F1YXJlIHwgY2lyY2xlIHwgbm9uZVxyXG5AbWl4aW4gc2xpY2stYXJyb3ctYnV0dG9uLXN0eWxlcigkc2hhcGUsICRjb2xvciwgJGJnLWNvbG9yKXtcclxuXHQuc2xpY2stYXJyb3cge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvcjtcclxuXHRcdH1cclxuXHRcdEBpZiAkc2hhcGUgPT0gY2lyY2xle1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHR9IEBlbHNlIGlmICRzaGFwZSA9PSBzcXVhcmUge1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4vLyBzZXRzIGhvdmVyIHN0YXRlIGZvciAuY2Fyb3VzZWwtY29udHJvbFxyXG5AbWl4aW4gc2xpY2stYXJyb3ctYnV0dG9uLWhvdmVyLXN0eWxlcigkY29sb3IsICRiZy1jb2xvcil7XHJcblx0LnNsaWNrLWFycm93IHtcclxuXHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJGJnLWNvbG9yO1xyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvcjtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLy8gc2V0cyBwb3NpdGlvbiB0byBhcnJvd3MsIGxlZnQgLSByaWdodFxyXG5AbWl4aW4gc2xpY2stYXJyb3ctcG9zaXRpb24oJHBvcy1sZWZ0LCAkcG9zLXJpZ2h0KXtcclxuXHQuc2xpY2stYXJyb3cge1xyXG5cdFx0Ji5zbGljay1wcmV2IHtcclxuXHRcdFx0bGVmdDogJHBvcy1sZWZ0ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQmLnNsaWNrLW5leHQge1xyXG5cdFx0XHRyaWdodDogJHBvcy1yaWdodCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4vLyBhZGp1c3QgdGhlIGFycm93c1xyXG5AbWl4aW4gc2xpY2staWNvbi1udWRnZSgkdG9wLCAkbGVmdC1sZWZ0LCAkcmlnaHQtcmlnaHQpIHtcclxuXHQuc2xpY2stYXJyb3cge1xyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRvcDogJHRvcDtcclxuXHRcdH1cclxuXHRcdCYuc2xpY2stcHJldiB7XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRsZWZ0OiAkbGVmdC1sZWZ0O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLnNsaWNrLW5leHQge1xyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0cmlnaHQ6ICRyaWdodC1yaWdodDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4vLyBzbGljayBkb3RzLCBzaGFwZSwgYmFja2dyb3VuZCwgYWN0aXZlLCBkaW1lbnNpb25zXHJcbi8vICRzaGFwZSBjYW4gYmU6IHNxdWFyZSB8IGNpcmNsZSB8IG5vbmVcclxuQG1peGluIHNsaWRlc2hvdy1pbmRpY2F0b3JzLXN0eWxlcigkc2hhcGUsICRkZWZhdWx0LWJnLCAkYWN0aXZlLWJnLCAkd2lkdGgsICRoZWlnaHQpIHtcclxuXHR1bC5zbGljay1kb3RzIHtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0XHQ+IGxpIHtcclxuXHRcdFx0d2lkdGg6ICR3aWR0aDtcclxuXHRcdFx0aGVpZ2h0OiAkaGVpZ2h0O1xyXG5cdFx0XHRidXR0b24ge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWJnO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0XHQmOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHRcdFx0XHRAaWYgJHNoYXBlID09IGNpcmNsZXtcclxuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdFx0XHR9IEBlbHNlIGlmICRzaGFwZSA9PSBzcXVhcmUge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5zbGljay1hY3RpdmUgYnV0dG9ue1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLy8gc2V0cyBhbGlnbm1lbnQgZm9yIHNsaWNrIGRvdHNcclxuLy8gcG9zaXRpb246IGNlbnRlciwgbGVmdCwgcmlnaHRcclxuQG1peGluIHNsaWRlc2hvdy1pbmRpY2F0b3JzLXBvc2l0aW9uKCRwb3NpdGlvbiwgJHNwYWNpbmcsICRib3R0b20pIHtcclxuXHQmLnNsaWNrLWRvdHRlZHsgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cclxuXHR1bC5zbGljay1kb3RzIHtcclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0bGVmdDogYXV0bztcclxuXHRcdGJvdHRvbTogJGJvdHRvbTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblxyXG5cdFx0QGlmICRwb3NpdGlvbiA9PSBjZW50ZXJ7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9IEBlbHNlIGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcclxuXHRcdFx0bGVmdDogMTVweDtcclxuXHRcdH0gQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcclxuXHRcdFx0cmlnaHQ6IDE1cHg7XHJcblx0XHR9XHJcblx0XHRsaSB7XHJcblx0XHRcdG1hcmdpbjogMCAkc3BhY2luZztcclxuXHRcdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4Ym94KCkge1xyXG5cdGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG5cdGRpc3BsYXk6IC1tb3otYm94O1xyXG5cdGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG5cdGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG5AbWl4aW4gZmxleCgkdmFsdWVzKSB7XHJcblx0LXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcclxuXHQtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xyXG5cdC13ZWJraXQtZmxleDogJHZhbHVlcztcclxuXHQtbXMtZmxleDogJHZhbHVlcztcclxuXHRmbGV4OiAkdmFsdWVzO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xyXG5cdC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcblx0LW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcclxuXHQtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcblx0ZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcclxuXHQtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XHJcblx0LW1vei1mbGV4LXdyYXA6ICR3cmFwO1xyXG5cdC1tcy1mbGV4LXdyYXA6ICR3cmFwO1xyXG5cdGZsZXgtd3JhcDogJHdyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcclxuXHQtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XHJcblx0LW1vei1mbGV4LWZsb3c6ICRmbG93O1xyXG5cdC1tcy1mbGV4LWZsb3c6ICRmbG93O1xyXG5cdGZsZXgtZmxvdzogJGZsb3c7XHJcbn1cclxuXHJcbkBtaXhpbiBvcmRlcigkdmFsKSB7XHJcblx0LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbDtcclxuXHQtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xyXG5cdC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xyXG5cdC13ZWJraXQtb3JkZXI6ICR2YWw7XHJcblx0b3JkZXI6ICR2YWw7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWdyb3coJGdyb3cpIHtcclxuXHQtd2Via2l0LWZsZXgtZ3JvdzogJGdyb3c7XHJcblx0LW1vei1mbGV4LWdyb3c6ICRncm93O1xyXG5cdC1tcy1mbGV4LWdyb3c6ICRncm93O1xyXG5cdGZsZXgtZ3JvdzogJGdyb3c7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LXNocmluaygkc2hyaW5rKSB7XHJcblx0LXdlYmtpdC1mbGV4LXNocmluazogJHNocmluaztcclxuXHQtbW96LWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xyXG5cdC1tcy1mbGV4LXNocmluazogJHNocmluaztcclxuXHRmbGV4LXNocmluazogJHNocmluaztcclxufVxyXG5cclxuQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XHJcblx0LXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XHJcblx0LW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XHJcblx0LW1zLWZsZXgtYmFzaXM6ICR3aWR0aDtcclxuXHRmbGV4LWJhc2lzOiAkd2lkdGg7XHJcbn1cclxuXHJcbkBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcclxuXHQtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XHJcblx0LW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xyXG5cdC1tcy1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xyXG5cdGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XHJcblx0LW1zLWZsZXgtcGFjazogJGp1c3RpZnk7XHJcbn1cclxuIFxyXG5AbWl4aW4gYWxpZ24tY29udGVudCgkYWxpZ24pIHtcclxuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6ICRhbGlnbjtcclxuXHQtbW96LWFsaWduLWNvbnRlbnQ6ICRhbGlnbjtcclxuXHQtbXMtYWxpZ24tY29udGVudDogJGFsaWduO1xyXG5cdGFsaWduLWNvbnRlbnQ6ICRhbGlnbjtcclxufVxyXG5cclxuQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xyXG5cdC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcclxuXHQtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XHJcblx0LW1zLWFsaWduLWl0ZW1zOiAkYWxpZ247XHJcblx0LW1zLWZsZXgtYWxpZ246ICRhbGlnbjtcclxuXHRhbGlnbi1pdGVtczogJGFsaWduO1xyXG59XHJcblxyXG5AbWl4aW4gYWxpZ24tc2VsZigkYWxpZ24pIHtcclxuXHQtd2Via2l0LWFsaWduLXNlbGY6ICRhbGlnbjtcclxuXHQtbW96LWFsaWduLXNlbGY6ICRhbGlnbjtcclxuXHQtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xyXG5cdGFsaWduLXNlbGY6ICRhbGlnbjtcclxufVxyXG5cclxuQG1peGluIGlubGluZS1mbGV4KCkge1xyXG5cdGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcclxuXHRkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbn1cclxuXHJcblxyXG5AZnVuY3Rpb24gcmVzcG9uc2l2ZS1weCgkbWluLXB4LCAkbWF4LXB4LCAkbWluLXZ3LCAkbWF4LXZ3KSB7XHJcblx0QHJldHVybiBjYWxjKCN7JG1pbi1weH1weCArICgjeyRtYXgtcHh9IC0gI3skbWluLXB4fSkgKiAoKDEwMHZ3IC0gI3skbWluLXZ3fXB4KSAvICgjeyRtYXgtdnd9IC0gI3skbWluLXZ3fSkpKTtcclxufVxyXG4gXHJcblxyXG5AbWl4aW4gY3VzdG9tLW1xKCRtaW4td2lkdGgsICRtYXgtd2lkdGgpIHtcclxuXHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH1weCkgYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH1weCkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwIDE1cHg7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHRcdHdpZHRoOiA3NTBweDtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0cGFkZGluZzogMHB4O1xyXG5cdH1cclxuXHJcblx0QG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcblx0XHR3aWR0aDogOTcwcHhcclxuXHR9XHJcblxyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuXHRcdHdpZHRoOiAxMTcwcHhcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBjb250YWluZXIteGwge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAxNTMwcHgpIHtcclxuXHRcdC8vIFhMXHJcblx0XHR3aWR0aDogMTUwMHB4O1xyXG5cdH1cclxufVxyXG5cclxuJHByaW1hcnktY29sb3I6ICMwMDQ5OTA7XHJcbiRzZWNvbmRhcnktY29sb3I6ICNGRkREMDA7XHJcbiR0ZXJ0aWFyeS1jb2xvcjogIzA4MzA3NztcclxuJGZvdXJ0aC1jb2xvcjogIzI1NkVDMDtcclxuXHJcblxyXG4kd2ViZm9udDogXCJPcGVuIFNhbnNcIjtcclxuJHdlYmZvbnQyOiBcIk9wZW4gU2Fuc1wiO1xyXG5cclxuXHJcbmJvZHksIC53ZWJmb250LFxyXG4ucGMtaGVhZGVyIC5IZWFkLFxyXG4jQm90dG9tRm9vdGVyIGgyIHtcclxuXHRmb250LWZhbWlseTogJHdlYmZvbnQsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLndlYmZvbnQyLFxyXG4udmxiQ2F0YWxvZ0J0biB7XHJcblx0Zm9udC1mYW1pbHk6ICR3ZWJmb250Miwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuLmhvbWVwYWdlIC5jb250YWluZXIge1xyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcigpO1xyXG59XHJcblxyXG4uc3VicGFnZSAuY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTsgXHJcblx0bWF4LXdpZHRoOiA5ODBweDsgXHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi8vIEltcG9ydHMgIFxyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLXF1ZXJpZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21hc3Rlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYW5pbWF0aW9uLWVmZmVjdHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NvY2lhbC1pY29ucyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVhZGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy90b3BiYXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL25hdmJhcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaG9tZXRleHQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvb3Rlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9iaWxlLWJ1dHRvbnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xvY2F0aW9uLWZpbmRlcic7XHJcbi8vIEBpbXBvcnQgJ2NvbXBvbmVudHMvbmRzYy13aWRnZXQnOyAgICAgXHJcbi8vIEBpbXBvcnQgJ2NvbXBvbmVudHMvcGhvdG8tZ2FsbGVyeSc7ICAgIFxyXG4vLyBAaW1wb3J0ICdjb21wb25lbnRzL2hwLXJldmlldy13aWRnZXQnOyAgIFxyXG4vLyBAaW1wb3J0ICdjb21wb25lbnRzL3doZWVsLWNvbmZpZyc7IFxyXG5AaW1wb3J0ICdjb21wb25lbnRzL25kc2MnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2F0Yyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbG9jYXRpb24td2lkZ2V0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9pbnN0YW50LXF1b3RlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb3Vwb25zJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tYS1hZHZpc29yJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9yZXZpZXdzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9hcW1vZHVsZSc7XHJcblxyXG5AbWl4aW4gYnRuLXNpdGV7XHJcbiAgICAmOnZpc2l0ZWQsJjpmb2N1cywgJntcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkZm91cnRoLWNvbG9yLCAkcHJpbWFyeS1jb2xvciwgJHRlcnRpYXJ5LWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiByZXNwb25zaXZlLXB4KDE2MCwgMjAwLCAzMjAsIDE5MjApO1xyXG4gICAgICAgIGhlaWdodDogcmVzcG9uc2l2ZS1weCgzNiwgNTAsIDMyMCwgMTkyMCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlc3BvbnNpdmUtcHgoMzYsIDUwLCAzMjAsIDE5MjApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMzBlbTtcclxuICAgICAgICBmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE3LCAzMjAsIDE5MjApO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMTsgXHJcblx0XHRpe1xyXG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0dHJhbnNpdGlvbjogLjNzO1xyXG5cdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoOCwgMTIsIDc2OCwgMTkyMCk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCg4LCAxMiwgMzIwLCA3NjcpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICR0ZXJ0aWFyeS1jb2xvciwgJHByaW1hcnktY29sb3IsICRmb3VydGgtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlcntcclxuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tc2l0ZSwgLnZsYkNhdGFsb2dCdG4ge1xyXG5cdEBpbmNsdWRlIGJ0bi1zaXRlKCk7XHJcbn1cclxuXHJcbkBtaXhpbiBidG4tc2l0ZS1zZWNvZGFyeXtcclxuICAgICY6dmlzaXRlZCwmOmZvY3VzLCAme1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiByZXNwb25zaXZlLXB4KDEwMCwgMjAwLCAzMjAsIDE5MjApO1xyXG4gICAgICAgIGhlaWdodDogcmVzcG9uc2l2ZS1weCgzNiwgNTAsIDMyMCwgMTkyMCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlc3BvbnNpdmUtcHgoMzYsIDUwLCAzMjAsIDE5MjApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMzBlbTtcclxuICAgICAgICBmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE3LCAzMjAsIDE5MjApO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRpe1xyXG5cdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XHJcblx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDgsIDEyLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoOCwgMTIsIDMyMCwgNzY3KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgfVxyXG4gICAgJjpob3ZlcntcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XHJcblx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG5cdFx0aXtcclxuXHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3JcclxuXHRcdH1cclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1zaXRlLXNlY29kYXJ5e1xyXG5cdEBpbmNsdWRlIGJ0bi1zaXRlLXNlY29kYXJ5KCk7XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICAgICBcclxuPSAgICAgICAgICAgIFRvcCBCYXIgU3R5bGVzICAgICAgICAgICAgPSAgXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4kdG9wYmFyLWNvbG9yOiAjZmZmO1xyXG4kdG9wYmFyLWZvbnRzaXplOiAxLjRlbTtcclxuJGFjdGlvbmJhci13aWR0aDogOTgwcHg7XHJcblxyXG4jbmQtYWN0aW9uYmFye1xyXG5cdEBpbmNsdWRlIHRhYmxldC1kZXNrdG9we1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbiNuZC1hY3Rpb25iYXIgLmNvbnRhaW5lciB7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuI2Rubl9BY3Rpb25CYXJQYW5lICN0b3Atc29jaWFsIHtcclxuXHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xyXG59XHJcblxyXG4jZG5uX0FjdGlvbkJhclBhbmUgI3RvcC1zb2NpYWwgYSB7XHJcblx0Y29sb3I6ICR0b3BiYXItY29sb3I7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdGZvbnQtc2l6ZTogJHRvcGJhci1mb250c2l6ZTtcclxuXHRtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0cGFkZGluZzogMXB4IDA7XHJcbn1cclxuXHJcbiNkbm5fQWN0aW9uQmFyUGFuZSAjdG9wLXNvY2lhbCBhOmxhc3Qtb2YtdHlwZSB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgTmF2YmFyIFN0eWxlcyAgICAgICAgICAgICAgICAgICA9ICBcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5AaW5jbHVkZSBkZXNrdG9wIHtcclxuXHQjY29udGVudG5hdiB7XHJcblx0XHRoZWlnaHQ6IDQ1cHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpe1xyXG5cdFx0QGluY2x1ZGUgZGVza3RvcHtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDQ1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuaGFzY2hpbGQ6aG92ZXIgLnN1YkxldmVsLCAjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuaGFzY2hpbGQ6YWN0aXZlIC5zdWJMZXZlbCwgI2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpLmhhc2NoaWxkOmZvY3VzIC5zdWJMZXZlbHtcclxuXHRcdEBpbmNsdWRlIGRlc2t0b3B7XHJcblx0XHRcdHRvcDogNDVweDtcclxuXHRcdH1cclxuXHR9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnNpbmdsZS1jb2x1bW57XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblx0I25kLW1lbnViYXJ7XHJcblx0XHR0b3A6IDBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQjbmQtYmFja2dyb3VuZHtcclxuXHRcdC5uYXYtc3BhY2Vye1xyXG5cdFx0XHRoZWlnaHQ6IDQwLjRweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQGluY2x1ZGUgdGFibGV0LWRlc2t0b3Age1xyXG5cdCNuZC1tZW51YmFyIHtcclxuXHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHR6LWluZGV4OiAxNTtcclxuXHRcdCNjb250ZW50bmF2e1xyXG5cdFx0XHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRlc2t0b3AtZGlzcGxheWVke1xyXG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHRcdCNjb250ZW50bmF2e1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQTlBOUE5O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSBhIHtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRjb2xvcjogIzAwMDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAyNGVtO1xyXG5cdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEwLCAxNywgNzY4LCAxOTIwKTtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0dHJhbnNpdGlvbjogLjNzO1xyXG5cdH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuc2VsZWN0ZWQ+YSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHR9XHJcblxyXG5cdC8qIEN1cnJlbnQgVGFiICovXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIGxpIGEge1xyXG5cdFx0bWFyZ2luOiAwcHg7XHJcblx0XHRwYWRkaW5nOiAxMHB4IDIwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdFx0Y29sb3I6ICNmZmY7XHJcblx0fVxyXG5cclxuXHQvLyBTdWIgTGV2ZWwgTWVudSBCYWNrZ3JvdW5kIENvbG9yXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIHVsLFxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodCB1bCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xyXG5cdH1cclxuXHJcblx0Ly8gRGVmYXVsdCBIb3ZlciBFZmZlY3RzXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpOmhvdmVyPmEge1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcblxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaSBhe1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEwLCAxNCwgNzY4LCAxOTIwKTtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHRcdCAgXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIGxpIGE6aG92ZXIge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcblxyXG5cdC8vIFN1YiBMZXZlbCBCb3JkZXJzXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnNpbmdsZS1jb2x1bW4gbGkgYSB7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODtcclxuICAgIFx0Ym9yZGVyOiBub25lO1xyXG5cdH1cclxuXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLmRvdWJsZS1jb2x1bW4gbGkgYSB7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODtcclxuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4ODg7XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSB0YWJsZXQtZGVza3RvcHtcclxuXHQjY29udGVudG5hdntcclxuXHRcdHBvc2l0aW9uOiBzdGF0aWM7XHJcblx0fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaS5oYXNjaGlsZDpob3ZlciA+IC5zdWJMZXZlbFJpZ2h0IHVse1xyXG5cdFx0bGVmdDogMjAwcHggIWltcG9ydGFudDtcclxuXHR9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLCAjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgdWx7XHJcblx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XHJcblx0fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCB1bCwgLnN1YkxldmVsUmlnaHQuZG91YmxlLWNvbHVtbiB1bHtcclxuXHRcdG1pbi13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGRlc2t0b3B7XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnNpbmdsZS1jb2x1bW57XHJcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBNb2JpbGUgTWVudSBTdHlsZXMgICAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuJG1vYmlsZS1uYXYtYmc6IDA7XHJcblxyXG5AaW5jbHVkZSBwaG9uZSB7XHJcblxyXG5cdC8vIE1vYmlsZSBUb3AgQmFyIEJhY2tncm91bmQgXHJcblx0Lm1vYmlsZUJHIHtcclxuXHRcdC8vIGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICR0ZXJ0aWFyeS1jb2xvciwgJHByaW1hcnktY29sb3IsICRmb3VydGgtY29sb3IpO1xyXG5cdFx0b3BhY2l0eTogJG1vYmlsZS1uYXYtYmc7XHJcblx0XHRoZWlnaHQ6IDQ1cHggIWltcG9ydGFudDtcclxuXHJcblx0XHQmLmRpc3BsYXllZCB7XHJcblx0XHRcdGhlaWdodDogNDVweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ly9Nb2JpbGUgTWVudSBCYWNrZ3JvdW5kXHJcblx0Lm5kLW1vYmlsZS13aW5kb3cge1xyXG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdH1cclxuXHJcblx0Ly9Nb2JpbGUgU3ViIExldmVsIENvbG9yXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIHtcclxuXHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oI2ZmZiwgMTUlKSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgYSB7XHJcblx0XHRmb250LXNpemU6IDFlbTtcclxuXHR9XHJcblxyXG5cdCNtb2JpbGUtYnV0dG9ucyB7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzcwNzA3MDtcclxuXHRcdEBpbmNsdWRlIGlubGluZS1mbGV4KCk7XHJcblx0XHRAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoZmxleC1lbmQpO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0Lm1lbnUtbWVudSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHRcdH1cclxuXHJcblx0XHQubWVudS1waG9uZSxcclxuXHRcdC5tZW51LWxvY2F0aW9uIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0LmZhLXBob25lIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKC0xODVkZWcpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uZC1tb2JpbGUtYnV0dG9uLFxyXG5cdFx0LmZhLW1hcC1tYXJrZXIge1xyXG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0dHJhbnNpdGlvbjogLjNzO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uZC1tb2JpbGUtYnV0dG9uIHtcclxuXHRcdFx0cGFkZGluZzogMTBweDtcclxuXHRcdH1cclxuXHJcblx0XHQuZmEge1xyXG5cdFx0XHRmb250LXNpemU6IDI1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdFx0Jjo6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubWVudS1xdW90aW5nIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQubW9iaWxlQnV0dG9ucyB7XHJcblx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkdGVydGlhcnktY29sb3IsICRwcmltYXJ5LWNvbG9yLCAkZm91cnRoLWNvbG9yKTtcclxuXHR9XHJcblxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjMpO1xyXG5cclxuXHRcdGxpIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcclxuXHRcdH1cclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6ICMwMDA7XHJcblxyXG5cdFx0XHQmLm1vYmlsZS1uYXYtZXhwYW5kIHtcclxuXHJcblx0XHRcdFx0LmZhLWFuZ2xlLWRvd24sXHJcblx0XHRcdFx0LmZhLWFuZ2xlLXVwIHtcclxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lk1vZFBvc3RhbENvZGVMb29rdXBDIHtcclxuXHRcdGEge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0LkZpbmRVc1BhbmVsIC5mYSxcclxuXHRcdC5DYWxsVXNQYW5lbCAuZmEsXHJcblx0XHQubWVudS1xdW90aW5nIHNwYW4uZmFzIHtcclxuXHRcdFx0Zm9udC1zaXplOiAyNXB4O1xyXG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG5cdFx0XHRwYWRkaW5nOiAxMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdCNHZW9Db250YWluZXJNb2JpbGUge1xyXG5cdFx0XHR0b3A6IDQ1cHggIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHJcblx0XHQuRmluZFVzUGFuZWwgLmZhLFxyXG5cdFx0LkNhbGxVc1BhbmVsIC5mYSB7XHJcblx0XHRcdHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdCYuY2xpY2tlZHtcclxuXHRcdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LkNhbGxVc1BhbmVse1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5tb2JpbGUtbmF2LWV4cGFuZCAuZmEge1xyXG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7XHJcblx0fVxyXG5cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGkgYTpub3QoLm1vYmlsZS1uYXYtZXhwYW5kKTo6YmVmb3JlIHtcclxuXHRcdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR9XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBIZWFkZXIgU3R5bGVzICAgICAgICAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbiNjb250ZW50aGVhZGVye1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdHBhZGRpbmctdG9wOiA0NXB4ICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cdC5oZWFkZXItY29udGFpbmVye1xyXG5cdFx0d2lkdGg6IDkwJTtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdH1cclxuXHJcblx0I3RvcC1oZWFkZXJ7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICR0ZXJ0aWFyeS1jb2xvciwgJHByaW1hcnktY29sb3IsICRmb3VydGgtY29sb3IpO1xyXG5cdFx0cGFkZGluZzogMTVweCAwcHg7XHJcblx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHRcdC50b3AtaGVhZGVyLXNlY3Rpb257XHJcblx0XHRcdEBpbmNsdWRlIGZsZXhib3goKTtcclxuXHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xyXG5cdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cdFx0XHQuY29udGFpbmVyLWRlbGFlci1pbmZve1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXhib3goKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGZsZXgtc3RhcnQpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoNDAlKTtcclxuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZGVhbGVyLXBob25lLCAuZGVhbGVyLWFkZHJlc3N7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0XHQvLyBoZWlnaHQ6IHJlc3BvbnNpdmUtcHgoMjAsIDMwLCAxMDI0LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMjAsIDMwLCAxMDI0LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdFx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTUsIDIwLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0XHQmOjpiZWZvcmV7XHJcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmRlYWxlci1waG9uZXtcclxuXHRcdFx0XHRcdCY6dmlzaXRlZCwmOmZvY3VzLCAme1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTQsIDIyLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wZW07XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDQlO1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGl7XHJcblx0XHRcdFx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZGVhbGVyLWFkZHJlc3N7XHJcblx0XHRcdFx0XHQmOnZpc2l0ZWQsJjpmb2N1cywgJntcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxNywgMTAyNCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjBlbTtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmNvbnRhaW5lci1zbG9nYW57XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcyg0NSUpO1xyXG5cdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHRtYXJnaW46IDBweDtcclxuXHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwZW07XHJcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS4yNjtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDIzLCAxMDI0LCAxOTIwKTtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHRhYmxldHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxNiwgNzY4LCAxMDIzKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuY29udGFpbmVyLWxvZ29ze1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMjAlKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KGZsZXgtZW5kKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRcdFx0XHRtYXgtaGVpZ2h0OiAzMnB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwcHggMTBweDtcclxuXHRcdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDUwLCAxNTYsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0XHQvLyBAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0XHQvLyBcdG1heC13aWR0aDogMzAlO1xyXG5cdFx0XHRcdFx0Ly8gfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQjYm90dG9tLWhlYWRlcntcclxuXHRcdEBpbmNsdWRlIHRhYmxldC1kZXNrdG9we1xyXG5cdFx0XHRwYWRkaW5nOiByZXNwb25zaXZlLXB4KDE1LCAzMCwgNzY4LCAxOTIwKSAwcHg7XHJcblx0XHR9XHJcblx0XHQ+LmhlYWRlci1jb250YWluZXJ7XHJcblx0XHRcdEBpbmNsdWRlIGZsZXhib3goKTtcclxuXHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xyXG5cdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcblx0XHRcdC5oZWFkZXItbGVmdC13cmFwcGVye1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMjAlKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDQlIDAlO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygxMDAlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmhlYWRlci1taWRkbGUtd3JhcHBlcntcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDYwJSk7XHJcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0e1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcyg4MCUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQjbmQtbWVudWJhcntcclxuXHRcdFx0XHRcdCNjb250ZW50bmF2e1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHN0YXRpYztcclxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0XHRcdFx0I2Rubk1lbnUgLnRvcExldmVsIGxpe1xyXG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5oZWFkZXItcmlnaHQtd3JhcHBlcntcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDE2JSk7XHJcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0e1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMCUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQjZG5uX0hlYWRlckNvbnRhY3RQYW5le1xyXG5cdFx0XHRcdFx0LkRubk1vZHVsZS1Qb3N0YWxDb2RlTG9va3Vwe1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtZGVza3RvcHtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBkZXNrdG9we1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDEwMCUpO1xyXG5cdFx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoNzQlKTtcclxuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA3NCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1ncm93KDEpO1xyXG5cdFx0XHRcdFx0PmRpdntcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdC5idG4tc2l0ZXtcclxuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZGVza3RvcHtcclxuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxMCwgMTYsIDEwMjQsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDgsIDE4LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCg4LCAxOCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSB0YWJsZXQtcGhvbmUge1xyXG5cdCNkbm5fZG5uTG9nb19pbWdMb2dvIHtcclxuXHRcdHBhZGRpbmc6IDElIDA7XHJcblx0fVxyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgUm93IEJhY2tncm91bmQgU3R5bGVzICAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuI25kLWJhY2tncm91bmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IGdyYXk7XHJcbn1cclxuXHJcbi5ob21lcGFnZSAjbmQtbWlkZGxlYmFyOjphZnRlciB7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0Y2xlYXI6IGJvdGg7XHJcblx0Y29udGVudDogXCJcIjtcclxufVxyXG5cclxuLmhvbWVwYWdlICNuZC1taWRkbGViYXIuZmlyc3Qtcm93IHtcclxuXHRAaW5jbHVkZSB0YWJsZXQtZGVza3RvcHtcclxuXHRcdHBhZGRpbmc6IHJlc3BvbnNpdmUtcHgoMjUsIDUwLCA3NjgsIDE5MjApIDBweDtcclxuXHR9XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9ob21lL2JnLWhlcm9zaG90LmpwZyk7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG5cdEBpbmNsdWRlIHBob25le1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9ob21lL2JnLWhlcm9zaG90LXhzLmpwZyk7XHJcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdGJhY2tncm91bmQtYXR0YWNobWVudDogaW5pdGlhbDtcclxuXHRcdHBhZGRpbmc6IDE1cHg7XHJcblx0fVxyXG5cdC5jb250YWluZXJ7XHJcblx0XHRwYWRkaW5nOiAwcHg7XHJcblx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2Vlbik7XHJcblx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhzdHJldGNoKTtcclxuXHRcdEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHRcdCNkbm5fVG9wQ29udGVudFBhbmVMZWZ0e1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDMyJSk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygxMDAlKTtcclxuXHRcdFx0XHRtYXJnaW46IHJlc3BvbnNpdmUtcHgoMTUsIDMwLCAzMjAsIDc2NykgMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHRlcnRpYXJ5LWNvbG9yLCAkcHJpbWFyeS1jb2xvciwgJGZvdXJ0aC1jb2xvcik7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdGxlZnQ6IHJlc3BvbnNpdmUtcHgoLTUwLCAxNCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2Fzc2V0cy5uZXRkcml2ZW53ZWJzLmNvbS9pbWcvdGNzLXNoYXJlZC90c24vdGVtcGxhdGUtMS9ob21lL2JnLWxvb2stZm9yLXRpcmUtc2VydmljZS5wbmcpO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0XHRcdFx0ei1pbmRleDogLTE7XHJcblx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XHJcblx0XHRcdFx0XHR3aWR0aDogNDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQubG9va2luZy10aXJlLXNlcnZpY2V7XHJcblx0XHRcdFx0cGFkZGluZzogMjAlIDE1JTtcclxuXHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDEwJSA3JTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjE4O1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE0LCAyMiwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTQsIDIyLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlc3BvbnNpdmUtcHgoMTAsIDIwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlc3BvbnNpdmUtcHgoMTUsIDMwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOjpiZWZvcmV7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMzEsIDYyLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDJweDtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMzEsIDYyLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdCY6dmlzaXRlZCwmOmZvY3VzLCAme1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMTc7XHJcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxNywgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxNywgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDgsIDEwLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCg4LCAxMCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblx0XHQjZG5uX1RvcENvbnRlbnRQYW5lTWlkZGxle1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMxRjIzMjcsIDAuNjYpO1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDMyJSk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSk7XHJcblx0XHRcdFx0bWFyZ2luOiByZXNwb25zaXZlLXB4KDE1LCAzMCwgMzIwLCA3NjcpIDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG5cdFx0XHRAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2Vlbik7XHJcblxyXG5cdFx0XHRoM3tcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4xODtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNiwgMjIsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuXHRcdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxOCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE4LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiA2JTtcclxuXHRcdFx0XHRAaW5jbHVkZSBjdXN0b20tbXEoMTAyNCwgMTE5OSl7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNyU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpbmNsdWRlIGN1c3RvbS1tcSgzMjAsIDEwMjMpe1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDglO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRwYWRkaW5nOiA2JSAwJTtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQuRG5uTW9kdWxlLU5ldERyaXZlbk1vZHVsZXNWZWhpY2xlTG9va3VwQmFye1xyXG5cdFx0XHRcdCNUaXJlU2l6ZUZpbmRlcntcclxuXHRcdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG5cdFx0XHRcdFx0I2xpbmtze1xyXG5cdFx0XHRcdFx0XHQudmxiQnRue2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQjc2l6ZWZpbmRlci1pbnB1dHN7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoOTAlKTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYXJvdW5kKTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYWxpZ24taXRlbXMoY2VudGVyKTtcclxuXHRcdFx0XHRcdFx0Jjo6YWZ0ZXJ7XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQ+ZGl2e1xyXG5cdFx0XHRcdFx0XHRcdC52bGJzZWxlY3Qge1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTAsIDE0LCAzMjAsIDE5MjApICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMzMwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgY3VzdG9tLW1xKDEwMjQsIDExOTkpe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMjYwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDVweDtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGN1c3RvbS1tcSg5OTIsIDEwMjMpe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMjYwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBjdXN0b20tbXEoNzY4LCA5OTEpe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMjAwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMjQwLCA2MjAsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogcmVzcG9uc2l2ZS1weCgyOCwgMzYsIDMyMCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiByZXNwb25zaXZlLXB4KDMsIDUsIDMyMCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJHdlYmZvbnQ7XHJcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogZ3JheTtcclxuXHRcdFx0XHRcdFx0XHRcdG9wdGlvbntcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6IGdyYXk7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LnZsYkNhdGFsb2dCdG57XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCNkbm5fVG9wQ29udGVudFBhbmVSaWdodHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMUYyMzI3LCAwLjY2KTtcclxuXHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygzMiUpO1xyXG5cdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDEwMCUpO1xyXG5cdFx0XHRcdG1hcmdpbjogcmVzcG9uc2l2ZS1weCgxNSwgMzAsIDMyMCwgNzY3KSAwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblxyXG5cdFx0XHRoM3tcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4xODtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsIDIyLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE2LCAyMiwgMzIwLCA3NjgpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRwYWRkaW5nOiA2JSAwJTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LnNlcnZpY2VzLWxpc3R7XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHRcdFx0XHQuY29udGFpbmVyLXNlcnZpY2V7XHJcblx0XHRcdFx0XHRtYXJnaW46IDUlIDAlO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygzMiUpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgdGFibGV0e1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDQ4JSk7XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0Jjp2aXNpdGVkLCY6Zm9jdXMsICZ7XHJcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdFx0XHRtYXgtaGVpZ2h0OiByZXNwb25zaXZlLXB4KDQwLCA1NSwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0XHRcdG1heC1oZWlnaHQ6IHJlc3BvbnNpdmUtcHgoNDAsIDU1LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDQlO1xyXG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTAsIDEzLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEwLCAxMywgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMC45MCk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmLmFsbC1zZXJ2aWNlcy1saW5re1xyXG5cdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDBweDtcclxuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxMywgMTYsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogNCU7XHJcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEwLCAxNCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTAsIDE0LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuYnRuLXNpdGV7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5ob21lcGFnZSAjbmQtbWlkZGxlYmFyLnNlY29uZC1yb3cge1xyXG5cdEBpbmNsdWRlIHRhYmxldC1kZXNrdG9we1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0d2lkdGg6IDQ4LjUlO1xyXG5cdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdH1cdFxyXG5cdFx0cGFkZGluZzogcmVzcG9uc2l2ZS1weCgyNSwgNTAsIDc2OCwgMTkyMCkgMHB4O1xyXG5cclxuXHR9XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI0UyRTJFMjtcclxuXHQuY29udGFpbmVye1xyXG5cdFx0cGFkZGluZzogMHB4O1xyXG5cdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xyXG5cdFx0QGluY2x1ZGUgYWxpZ24taXRlbXMoY2VudGVyKTtcclxuXHRcdEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHRcdCNkbm5fTWlkZGxlQ29udGVudFBhbmVMZWZ0e1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDUwJSk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSk7XHJcblx0XHRcdFx0cGFkZGluZzogcmVzcG9uc2l2ZS1weCgzMCwgNjAsIDMyMCwgNzY4KSAwcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0VGRUZFRjtcclxuXHRcdFx0fVxyXG5cdFx0XHQudGl0bGUtdGV4dHtcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDEwMCUpO1xyXG5cdFx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdFx0bWFyZ2luOiAwcHg7XHJcblx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDIwLDI2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVzcG9uc2l2ZS1weCg1LCAyNSwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsMjYsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZXNwb25zaXZlLXB4KDcsIDE1LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZXNwb25zaXZlLXB4KDE1LCAzMCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDExOCwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAycHg7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgxMTgsIDEzNiwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuZXhwbG9yZXItZmluYW5jaW5nLXNlY3Rpb257XHJcblx0XHRcdFx0d2lkdGg6IDkwJTtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGp1c3RpZnktY29udGVudChjZW50ZXIpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KGZsZXgtc3RhcnQpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcbiAgICAgICAgICAgICAgICBcclxuXHRcdFx0XHQuY29sdW1uLWxlZnQsIC5jb2x1bW4tcmlnaHR7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IHJlc3BvbnNpdmUtcHgoMTcwLCAyMjIsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiByZXNwb25zaXZlLXB4KDE2MCwgMjYwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5jb2x1bW4tbGVmdC5jYSB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2Fzc2V0cy5uZXRkcml2ZW53ZWJzLmNvbS9pbWcvdGNzLXNoYXJlZC90c24vdGVtcGxhdGUtMS9ob21lL0FJUi1NSUxFUy1DYXJkLnBuZyk7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuY29sdW1uLWxlZnR7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDQwJSk7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2Fzc2V0cy5uZXRkcml2ZW53ZWJzLmNvbS9pbWcvdGNzLXNoYXJlZC90c24vdGVtcGxhdGUtMS9ob21lL2JnLWdvb2R5ZWFyLWdldC1jcmVkaXQuanBnKTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMiwgMTAsIDMyMCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3JcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmNvbHVtbi1yaWdodC5jYSB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuXHRcdFx0XHRcdGgzIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6YmxhY2s7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNiwgMjAsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LmJ0bi1zaXRlLXNlY29kYXJ5e1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE0LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogODAwO1xyXG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuY29sdW1uLXJpZ2h0e1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoNTAlKTtcclxuXHRcdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE4LCAyOCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAyOCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5idG4tc2l0ZS1zZWNvZGFyeXtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDgwMDtcclxuXHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDExLCAxNCwgMzIwLCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAxMHB4IGF1dG87XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0I2Rubl9NaWRkbGVDb250ZW50UGFuZVJpZ2h0e1xyXG5cdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRwYWRkaW5nOiByZXNwb25zaXZlLXB4KDMwLCA2MCwgMzIwLCA3NjgpIDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDUwJSk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSk7XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bi1zaXRle1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDQlO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZXBhZ2UgI25kLW1pZGRsZWJhci50aGlyZC1yb3cge1xyXG5cdHBhZGRpbmc6IHJlc3BvbnNpdmUtcHgoMjUsIDUwLCAzMjAsIDE5MjApIDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdC5jZXJ0aWZpY2F0aW9ucy1zZWN0aW9ue1xyXG5cdFx0aDN7XHJcblx0XHRcdGNvbG9yOiAjMUYyMzI3O1xyXG5cdFx0XHRmb250LXdlaWdodDogODAwO1xyXG5cdFx0XHRtYXJnaW46IDBweDtcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDIwLDI2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNiwyNiwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZXNwb25zaXZlLXB4KDcsIDE1LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVzcG9uc2l2ZS1weCgxNSwgMzAsIDMyMCwgNzY3KTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOjpiZWZvcmV7XHJcblx0XHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDExOCwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdGhlaWdodDogMnB4O1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMTE4LCAxMzYsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5jZXJ0aWZpY2F0aW9ucy1sb2dvc3tcclxuXHRcdFx0QGluY2x1ZGUgZGVza3RvcHtcclxuXHRcdFx0XHR3aWR0aDogNzAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4Ym94KCk7XHJcblx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcblx0XHRcdEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1hcm91bmQpO1xyXG5cdFx0XHQuY29udGFpbmVyLWxvZ297XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGp1c3RpZnktY29udGVudChjZW50ZXIpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygyMCUpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcyg0MCUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6bnRoLW9mLXR5cGUoMyl7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdG1heC13aWR0aDogNzAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5ob21lcGFnZSAjbmQtbWlkZGxlYmFyLmZvdXJ0aC1yb3cge1xyXG5cdHBhZGRpbmc6IHJlc3BvbnNpdmUtcHgoMjUsIDUwLCAzMjAsIDE5MjApIDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdC50aXJlLXNlcnZpY2UtbmV0d29yay1zZWN0aW9ue1xyXG5cdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xyXG5cdFx0QGluY2x1ZGUgYWxpZ24taXRlbXMoY2VudGVyKTtcclxuXHRcdEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcclxuXHRcdC5jb2x1bW4tbG9nbywgLmNvbHVtbi1zZWN0aW9ue1xyXG5cdFx0XHRoZWlnaHQ6IHJlc3BvbnNpdmUtcHgoMjE1LCAzNDAsIDc2OCwgMTkyMCk7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmNvbHVtbi1sb2dve1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICR0ZXJ0aWFyeS1jb2xvciwgJHByaW1hcnktY29sb3IsICRmb3VydGgtY29sb3IpO1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDMwJSk7XHJcblx0XHRcdEBpbmNsdWRlIGZsZXhib3goKTtcclxuXHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XHJcblx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSk7XHJcblx0XHRcdFx0aGVpZ2h0OiByZXNwb25zaXZlLXB4KDExNSwgMjQwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdH1cclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtcGhvbmV7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDcwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuY29sdW1uLXNlY3Rpb257XHJcblx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoNzAlKTtcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHA6Ly9hc3NldHMubmV0ZHJpdmVud2Vicy5jb20vaW1nL3Rjcy1zaGFyZWQvdHNuL3RlbXBsYXRlLTEvaG9tZS9UU04tU2VydmljZS1OZXR3b3JrLWJnLmpwZyk7XHJcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygxMDAlKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2Fzc2V0cy5uZXRkcml2ZW53ZWJzLmNvbS9pbWcvdGNzLXNoYXJlZC90c24vdGVtcGxhdGUtMS9ob21lL1RTTi1TZXJ2aWNlLU5ldHdvcmstYmcteHMuanBnKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDEyJSAwJVxyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIGZsZXhib3goKTtcclxuXHRcdFx0QGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWFyb3VuZCk7XHJcblx0XHRcdEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbik7XHJcblx0XHRcdH1cclxuXHRcdFx0aDN7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA0JTtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTgsMjYsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE2LDI2LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdHVse1xyXG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRtYXJnaW46IDglIDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRsaXtcclxuXHRcdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNjQ7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsMTQsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLDE0LCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGl7XHJcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogNnB4O1xyXG5cdFx0XHRcdFx0XHQmLmZhe1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZXBhZ2UgI25kLW1pZGRsZWJhci5maWZ0aC1yb3cge1xyXG5cdC5jb250YWluZXJ7XHJcblx0XHRwYWRkaW5nOiAwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZXBhZ2UgI25kLW1pZGRsZWJhci5zaXh0aC1yb3cge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0cGFkZGluZzogNDVweCAwO1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuXHRcdHBhZGRpbmc6IDUwcHggMHB4O1xyXG5cdH1cclxuXHQucmV2aWV3cy10aXRsZS1zZWN0aW9ue1xyXG5cdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRmb250LXdlaWdodDogODAwO1xyXG5cdFx0bWFyZ2luOiAwcHg7XHJcblx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMjAsMjYsIDEwMjQsIDE5MjApO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0QGluY2x1ZGUgdGFibGV0LXBob25le1xyXG5cdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsMjYsIDMyMCwgMTAyMyk7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZXNwb25zaXZlLXB4KDcsIDE1LCAzMjAsIDc2Nyk7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlc3BvbnNpdmUtcHgoMTUsIDMwLCAzMjAsIDc2Nyk7XHJcblx0XHR9XHJcblx0XHQmOjpiZWZvcmV7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDExOCwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRoZWlnaHQ6IDJweDtcclxuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBob25le1xyXG5cdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDExOCwgMTM2LCAzMjAsIDc2Nyk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Lm1haW4tcmV2aWV3cyB7XHJcblx0XHQucmV2aWV3cy13cmFwcGVyIHtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0LnJldmlld3MtdGV4dCB7XHJcblx0XHRcdGNvbG9yOiAjMUYyMzI3O1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE4LCAyNSwgNzY4LCAxOTIwKTtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE0LCAyMCwgMzIwLCA3NjcpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQucmV2aWV3cy1uYW1lIHtcclxuXHRcdFx0Y29sb3I6ICMxRjIzMjc7XHJcblx0XHRcdGZvbnQtc2l6ZTogMjVweDtcclxuXHRcdFx0Zm9udC1zaXplOiA2MDA7XHJcblx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE4LCAyNSwgNzY4LCAxOTIwKTtcclxuXHRcdFx0bWFyZ2luOiByZXNwb25zaXZlLXB4KDIwLCA0MCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE0LCAyMCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdG1hcmdpbjogcmVzcG9uc2l2ZS1weCgyMCwgNDAsIDc2OCwgMTkyMCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5yZXZpZXdzLXJhdGluZyB7XHJcblx0XHRcdC5mYS1zdGFyIHtcclxuXHRcdFx0XHRjb2xvcjogI0ZGRDI2RDtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMjAsIDMwLCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1waG9uZXtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNSwgMzAsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5idG4tc2l0ZSB7XHJcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA0JTtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMTAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5yZXZpZXdzLXNsaWRlciB7XHJcblx0XHQvLyBhc3NpZ25zIGZvbnQtc2l6ZSAmIGRpbWVuc2lvblxyXG5cdFx0QGluY2x1ZGUgc2xpY2stYXJyb3ctc3R5bGVyKDIwcHgsIDIwcHgsIDIwcHgpO1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcblx0XHRcdEBpbmNsdWRlIHNsaWNrLWFycm93LXN0eWxlcigzMHB4LCAzMHB4LCAzMHB4KTtcclxuXHRcdH1cclxuXHRcdC8vIHNldHMgc2hhcGUsIGNvbG9yIGFuZCBiYWNrZ3JvdW5kIGNvbG9yIHRvIC5jYXJvdXNlbC1jb250cm9sXHJcblx0XHQvLyAkc2hhcGU6IHNxdWFyZSB8IGNpcmNsZSB8IG5vbmVcclxuXHRcdEBpbmNsdWRlIHNsaWNrLWFycm93LWJ1dHRvbi1zdHlsZXIobm9uZSwjMDAwLCB0cmFuc3BhcmVudCk7XHJcblx0XHQvLyBzZXRzIGhvdmVyIHN0YXRlIGZvciAuY2Fyb3VzZWwtY29udHJvbFxyXG5cdFx0QGluY2x1ZGUgc2xpY2stYXJyb3ctYnV0dG9uLWhvdmVyLXN0eWxlcigkcHJpbWFyeS1jb2xvciwgdHJhbnNwYXJlbnQpO1xyXG5cdFx0Ly8gc2V0cyBwb3NpdGlvbiB0byBhcnJvd3MsIGxlZnQgLSByaWdodFxyXG5cdFx0QGluY2x1ZGUgc2xpY2stYXJyb3ctcG9zaXRpb24oMTVweCwgMTVweCk7XHJcblx0XHQvLyBhZGp1c3QgdGhlIGFycm93czogdG9wLCBzbGljay1wcmV2LCBzbGljay1uZXh0XHJcblx0XHRAaW5jbHVkZSBzbGljay1pY29uLW51ZGdlKDAsIC0ycHgsIC0xcHgpO1xyXG5cdFx0Ly8gc2xpY2sgZG90cywgc2hhcGUsIGJhY2tncm91bmQsIGFjdGl2ZSwgZGltZW5zaW9uc1xyXG5cdFx0Ly8gJHNoYXBlOiBzcXVhcmUgfCBjaXJjbGUgfCBub25lXHJcblx0XHQvLyBAaW5jbHVkZSBzbGlkZXNob3ctaW5kaWNhdG9ycy1zdHlsZXIoY2lyY2xlLCAjZmZmLCAkcHJpbWFyeS1jb2xvciwgMjBweCwgMjBweCk7XHJcblx0XHQvLyBzZXRzIGFsaWdubWVudCBmb3Igc2xpY2sgZG90czogcG9zaXRpb24sIHNwYWNpbmcgYmV0d2VlbiBpdGVtcywgYm90dG9tXHJcblx0XHQvLyBwb3NpdGlvbjogY2VudGVyLCBsZWZ0LCByaWdodFxyXG5cdFx0Ly8gQGluY2x1ZGUgc2xpZGVzaG93LWluZGljYXRvcnMtcG9zaXRpb24oY2VudGVyLCA1cHgsIDMwcHgpO1xyXG5cdFx0LnNsaWNrLWxpc3Qge1xyXG5cdFx0XHRtYXJnaW46IDAgcmVzcG9uc2l2ZS1weCgyMCwgNjAsIDMyMCwgMTkyMCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZXBhZ2UgI25kLW1pZGRsZWJhci5zZXZlbnRoLXJvdyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRwYWRkaW5nOiByZXNwb25zaXZlLXB4KDUwLCAxMDUsIDc2OCwgMTkyMCkgMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRUZFRkVGO1xyXG5cdC5yYXRlLWNvbnRhaW5lcntcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiByZXNwb25zaXZlLXB4KDI1MCwgNDQ2LCA3NjgsIDE5MjApO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGJveC1zaGFkb3c6IC00cHggMHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTMpO1xyXG5cdFx0bWFyZ2luOiAxMHB4O1xyXG5cdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbi1yZXZlcnNlKTtcclxuXHRcdFx0QGluY2x1ZGUgYWxpZ24taXRlbXMoY2VudGVyKTtcclxuXHRcdFx0aGVpZ2h0OiA5MnZ3O1xyXG5cdFx0fVxyXG5cdFx0PmRpdntcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHR3aWR0aDogOTAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQubGVmdC1pbmZve1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cdFx0XHRoM3tcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMjAsIDQ1LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNSU7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IHJlc3BvbnNpdmUtcHgoNjUsIDEzNCwgNzY4LCAxOTIwKTtcclxuXHRcdCAgICAgICAgQGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogNS41dnc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5idG4tc2l0ZXtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogcmVzcG9uc2l2ZS1weCg2NSwgMTM0LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnJpZ2h0LWJne1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoaW1nL2hvbWUvYmctY3RhLmpwZykgbm8tcmVwZWF0IGNlbnRlci9jb3ZlcjtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5ob21lcGFnZSAjbmQtbWlkZGxlYmFyLmVpZ2h0aC1yb3cge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvaG9tZS9iZy13ZWxjb21lLmpwZyk7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvaG9tZS9iZy13ZWxjb21lLXhzLmpwZyk7XHJcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHR9XHJcblx0cGFkZGluZzogcmVzcG9uc2l2ZS1weCgyNSwgODAsIDMyMCwgMTkyMCkgMHB4O1xyXG5cdC53ZWxjb21lLXNlY3Rpb257XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHRcdC53ZWxjb21lLXRleHQtdGl0bGV7XHJcblx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRtYXJnaW46IDBweDtcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDIwLDI2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsMjYsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVzcG9uc2l2ZS1weCg3LCAxNSwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlc3BvbnNpdmUtcHgoMTUsIDMwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdH1cclxuXHRcdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDExOCwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdGhlaWdodDogMnB4O1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgxMTgsIDEzNiwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmRlc2t0b3AtdGV4dHtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7ZGlzcGxheTogbm9uZTt9XHJcblx0XHR9XHJcblx0XHRwe1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0cGFkZGluZzogMTVweCAwcHg7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDQ1JTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDc7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjBlbTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE0LCAxNywgNzY4LCAxOTIwKTtcclxuXHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAxNywgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNCU7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogNCU7XHJcblx0XHRcdH1cclxuXHRcdFx0YXtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmJ0bi1zaXRle1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IHJlc3BvbnNpdmUtcHgoMTUsIDMwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5oaWRkZW4teHN7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5kaXNwbGF5LXhze1xyXG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtZGVza3RvcHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZXBhZ2UgI25kLW1pZGRsZWJhci5uaW50aC1yb3cge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICM1QjVCNUI7XHJcblx0XHRcdCAgQGluY2x1ZGUgZGVza3RvcHtcclxuXHRcdHBhZGRpbmc6IDIwcHggMHB4O1xyXG5cdH1cclxuXHQubG9nb2Jhci1zbGlkZXJ7XHJcblx0XHQuc2xpY2stc2xpZGUgaW1ne1xyXG5cdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbiNtYWluLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQ6ICNGRkY7XHJcbn1cclxuXHJcbiNzdWItY29udGVudCB7XHJcblx0YmFja2dyb3VuZDogI0ZGRjtcclxuXHRwYWRkaW5nOiAwcHg7XHJcblx0LmNvbnRhaW5lcntcclxuXHRcdHBhZGRpbmc6IDBweDtcclxuXHR9XHJcbn1cclxuXHJcbiNiZ2JvdHRvbSB7XHJcblx0YmFja2dyb3VuZDogIzAwMDAwMDtcclxufVxyXG5cclxuQGluY2x1ZGUgcGhvbmUge1xyXG5cdCNzdWItY29udGVudCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgICAgRE5OIFBhbmUgU3R5bGVzICAgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4jZG5uX0xlZnRQYW5lIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHR3aWR0aDogMzAlO1xyXG59XHJcblxyXG4jZG5uX1JpZ2h0UGFuZSB7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdHdpZHRoOiA2NSU7XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBwaG9uZSB7XHJcblxyXG5cdCNkbm5fQ29udGVudFBhbmUsXHJcblx0I2Rubl9Ib21lU2lkZVBhbmUsXHJcblx0I2Rubl9MZWZ0UGFuZSxcclxuXHQjZG5uX1JpZ2h0UGFuZSxcclxuXHQjZG5uX0hvbWVDb250ZW50UGFuZSxcclxuXHQjY29udGVudG5hdiB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdGZsb2F0OiBub25lO1xyXG5cdH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgICAgIEZvb3RlciBTdHlsZXMgICAgICAgICAgICAgICAgICA9IFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4kZm9vdGVyLWJnLWNvbG9yOiAjMUYyMzI3O1xyXG4kZm9vdGVyLXRleHQtY29sb3I6ICNmZmY7XHJcbiRmb290ZXItaG92ZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiRmb290ZXItdGl0bGUtY29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcclxuJGZvb3Rlci10aXRsZS1saW5lLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4kZm9vdGVyLXNvY2lhbC1tZWRpYS1pY29ucy1jb2xvcjogJGZvb3Rlci10ZXh0LWNvbG9yO1xyXG4kZm9vdGVyLXZpZXctbW9yZS1pY29uLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cclxuI2JnYm90dG9tIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItYmctY29sb3I7XHJcbiAgICAjbmV0ZHJpdmVuIHtcclxuXHRcdHBhZGRpbmc6IDAlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IGF1dG87XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcblx0XHRjb2xvcjogJGZvb3Rlci10aXRsZS1jb2xvcjtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDMxLCA2MiwgNzY4LCAxOTIwKTtcclxuXHRcdFx0aGVpZ2h0OiAycHg7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgzMSwgNjIsIDMyMCwgNzY3KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuXHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbik7XHJcbiAgICAgICAgbGkge1xyXG5cdFx0XHRtYXJnaW46IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLXRleHQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvb3Rlci1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMlO1xyXG4gICAgICAgICAgICAgICAgICAgIDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblx0XHRcdCYudmlldy1tb3JlLWxpbmt7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRmb290ZXItdmlldy1tb3JlLWljb24tY29sb3I7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCg4LCAxMCwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDgsIDEwLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4jQm90dG9tRm9vdGVyIHtcclxuXHQuRG5uTW9kdWxlLTUxMjd7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50fVxyXG5cdC5Ebm5Nb2R1bGUtNTEyOHtkaXNwbGF5OiBub25lICFpbXBvcnRhbnR9XHJcblx0LkRubk1vZHVsZS01MTQ4e2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XHJcblx0LkRubk1vZHVsZS01MTQ3e2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XHJcbiAgICBAaW5jbHVkZSBjb250YWluZXIoKTtcclxuXHRwYWRkaW5nOiAzNXB4IDBweCAwcHggMHB4OyBcclxuXHRAaW5jbHVkZSB0YWJsZXR7XHJcblx0XHRwYWRkaW5nOiAzNXB4OyBcdFxyXG5cdH1cclxuXHRAaW5jbHVkZSBkZXNrdG9we1xyXG5cdFx0cGFkZGluZzogNzVweCAwcHg7IFxyXG5cdH1cclxuXHJcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XHJcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhmbGV4LXN0YXJ0KTtcclxuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKTtcclxuICAgIGNvbG9yOiAkZm9vdGVyLXRleHQtY29sb3IgIWltcG9ydGFudDtcclxuXHJcblx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xyXG4gICAgICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XHJcbiAgICAgICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcblx0fVxyXG5cclxuICAgID5kaXYge1xyXG5cdFx0QGluY2x1ZGUgZmxleC1iYXNpcygyMCUpO1xyXG5cdFx0d2lkdGg6IDIwJTtcclxuXHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRAaW5jbHVkZSBmbGV4LWJhc2lzKDEwMCUpO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDREMkQyO1xyXG5cdFx0fVxyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XHJcblx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE2LCAzMjAsIDE5MjApO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZXNwb25zaXZlLXB4KDE1LCAyMywgMzIwLCAxOTIwKTtcclxuXHRcdH1cclxuXHRcdFxyXG4gICAgICAgIHVsIGxpIGF7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNCwgMTgsIDMyMCwgMTkyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNzb2NpYWxmb250IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIC5mYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLXNvY2lhbC1tZWRpYS1pY29ucy1jb2xvcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuXHRcdFx0XHRjb2xvcjogJGZvb3Rlci1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcG93ZXJlZGJ5bmQsXHJcbiAgICAucG93ZXJlZEJ5QmFkZ2Uge1xyXG4gICAgICAgIGNvbG9yOiAkZm9vdGVyLXRleHQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZy1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICAgICAgd2lkdGg6IDE3MHB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjY2N2VtO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuXHJcblx0XHQuYmFkZ2VDb250ZW50e1xyXG5cdFx0XHQuYmFkZ2VMb2dve1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgICAgICNkbm5fQkFER0VfZG5uTE9HSU5fbG9naW5MaW5rLFxyXG4gICAgICAgICNkbm5fQkFER0VfZG5uTE9HSU5fbG9naW5MaW5rIHtcclxuXHRcdFx0Y29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA0JTtcclxuXHRcdFx0fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuI0xvY2F0aW9uV2lkZ2V0IHtcclxuICAgICoge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0fVxyXG5cdC5sb2N3aWRnZXQtY3N7XHJcblx0XHRhe1xyXG5cdFx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuI2hvbWV0ZXh0IHtcclxuXHRwYWRkaW5nOiAyNXB4IDE1cHg7XHJcblx0QGluY2x1ZGUgZGVza3RvcHtcclxuXHRcdHBhZGRpbmc6IDQ1cHggMjVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgdGFibGV0LWRlc2t0b3B7XHJcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI0E5QTlBOTtcclxuXHR9XHJcblx0Y29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0XHJcblx0cHtcclxuXHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHR3aWR0aDogODAlO1xyXG5cdFx0fVxyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRmb250LXNpemU6IDEycHg7XHJcblx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0cGFkZGluZzogMTBweCAwcHg7XHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG5cdFx0fVxyXG5cdFx0YXtcclxuXHRcdFx0Y29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcclxuXHRcdFx0dHJhbnNpdGlvbjogLjNzO1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuI2Zvb3Rlci1sZWdhbCB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZy1jb2xvcjtcclxuXHRjb2xvcjogJGZvb3Rlci10ZXh0LWNvbG9yO1xyXG5cdGZvbnQtZmFtaWx5OiAkd2ViZm9udDIgIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxMiwgMTQsIDMyMCwgMTkyMCk7XHJcblx0I2xlZ2FsLW5hdiB7XHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6ICRmb290ZXItdGV4dC1jb2xvciAhaW1wb3J0YW50O1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0dHJhbnNpdGlvbjogLjNzO1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgICAgIENvbnRlbnQgU3R5bGVzICAgICAgICAgICAgICAgICAgPSBcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbmZvcm1bYWN0aW9uXj1cIi9UaXJlc1wiXXtcclxuXHQjZG5uX1NpZGVQYW5lLCAjZG5uX0NUQ0ZpbHRlclBhbmV7XHJcblx0XHQvLyB6LWluZGV4OiA1ICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vL1N1YnBhZ2UgR2VuZXJhbCBTdHlsZXNcclxuLnRucy1wYWdlIHtcclxuXHJcblx0LnBhZ2Utc2VjdGlvbntcclxuXHRcdHBhZGRpbmc6IDQlIDAlO1xyXG5cdH1cclxuXHJcblx0aHJ7XHJcblx0XHRjb2xvcjogI0FDQjBCQjtcclxuXHR9XHJcblxyXG5cdGgze1xyXG5cdFx0bWFyZ2luOiAwJSAwJSA1JSAwJTtcclxuXHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDBlbTtcclxuXHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNiwgMjYsIDMyMCwgMTkyMCk7XHJcblx0XHRzcGFue1xyXG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtZGVza3RvcHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5zZWN0aW9uLXRpdGxlLWxlZnR7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgzMSwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdGhlaWdodDogMnB4O1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMzEsIDYyLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLnNlY3Rpb24tdGl0bGUtY2VudGVye1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMzEsIDEzNiwgNzY4LCAxOTIwKTtcclxuXHRcdFx0XHRoZWlnaHQ6IDJweDtcclxuXHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdHdpZHRoOiByZXNwb25zaXZlLXB4KDMxLCA2MiwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5zZWN0aW9uLXRpdGxlLXJpZ2h0e1xyXG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgzMSwgMTM2LCA3NjgsIDE5MjApO1xyXG5cdFx0XHRcdGhlaWdodDogMnB4O1xyXG5cdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMzEsIDYyLCAzMjAsIDc2Nyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoNHtcclxuXHRcdG1hcmdpbjogMCUgMCUgNSUgMCU7XHJcblx0XHRjb2xvcjogIzAwMDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA5MDA7XHJcblx0XHRsaW5lLWhlaWdodDogMTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwZW07XHJcblx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsIDIwLCAzMjAsIDE5MjApO1xyXG5cdH1cclxuXHRcclxuXHRwe1xyXG5cdFx0bWFyZ2luOiAwJSAwJSA0JSAwJSAhaW1wb3J0YW50O1xyXG5cdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTQsIDE3LCAzMjAsIDE5MjApO1xyXG5cdH1cclxuXHJcblx0dWx7XHJcblx0XHRsaXtcclxuXHRcdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxNCwgMTcsIDMyMCwgMTkyMCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudGV4dC1wcmltYXJ5LWNvbG9ye1xyXG5cdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdH0gIFxyXG5cdC50ZXh0LXNlY29uZGFyeS1jb2xvcntcclxuXHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdH1cclxuXHJcblx0LnRleHQtcmlnaHQge1xyXG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0fVxyXG5cclxuXHQudGV4dC1sZWZ0IHtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG5cclxuXHQudGV4dC1jZW50ZXIge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LnRleHQtYm9sZCB7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxuXHJcblx0LnRleHQtbm9ybWFsIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0fVxyXG5cclxuXHQudGV4dC1ibGFjayB7XHJcblx0XHRmb250LXN0eWxlOiA5MDA7XHJcblx0fVxyXG5cclxuXHQudGV4dC1pdGFsaWMge1xyXG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdH1cclxuXHJcblx0LnRleHQtY29sb3Itd2hpdGV7XHJcblx0XHRjb2xvcjogI2ZmZlxyXG5cdH1cclxuXHJcblx0LnRleHQtY29sb3ItYmxhY2t7XHJcblx0XHRjb2xvcjogIzAwMFxyXG5cdH1cclxuXHRcclxuXHQudGV4dC1jYXBpdGFsaXple1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcblx0fVxyXG5cclxuXHQudGV4dC11cHBlcmNhc2V7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHJcblx0LmltYWdlLWNvbnRhaW5lciB7XHJcblx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHRkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuXHRcdGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcclxuXHRcdC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcclxuXHRcdCAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHQtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xyXG5cdFx0LW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcclxuXHRcdCAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGltZyB7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmZsb2F0LXJpZ2h0IHtcclxuXHRcdEBpbmNsdWRlIHRhYmxldC1kZXNrdG9wIHtcclxuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmZsb2F0LWxlZnQge1xyXG5cdFx0QGluY2x1ZGUgdGFibGV0LWRlc2t0b3Age1xyXG5cdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5hbGlnbi1jZW50ZXIge1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG5cclxuXHQuYWxpZ24tbGVmdCB7XHJcblx0XHRtYXJnaW46IDAgYXV0byAwIDA7XHJcblxyXG5cdH1cclxuXHJcblx0LmFsaWduLXJpZ2h0IHtcclxuXHRcdG1hcmdpbjogMCAwIDAgYXV0bztcclxuXHJcblx0fVxyXG5cclxuXHQudmlkZW8tcmVzcG9uc2l2ZSB7XHJcblx0XHRoZWlnaHQ6IDA7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDU2LjI1JTtcclxuXHRcdHBhZGRpbmctdG9wOiAzMHB4O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuXHJcblx0LnZpZGVvLXJlc3BvbnNpdmUgaWZyYW1lLFxyXG5cdC52aWRlby1yZXNwb25zaXZlIG9iamVjdCxcclxuXHQudmlkZW8tcmVzcG9uc2l2ZSBlbWJlZCB7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHQuY29sbGFwc2libGUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0cGFkZGluZzogMiU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE4LCAzMjAsIDE5MjApO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHR0cmFuc2l0aW9uOiAuM3M7XHJcblx0XHRmb250LWZhbWlseTogJHdlYmZvbnQ7XHJcblx0ICB9XHJcblx0ICBcclxuXHQgIC5hY3RpdmUsIC5jb2xsYXBzaWJsZSB7XHJcblx0XHQgICY6aG92ZXJ7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0Jjo6YWZ0ZXJ7XHJcblx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHR9XHJcblx0XHQgIH1cclxuXHQgIH1cclxuXHQgIFxyXG5cdCAgLmNvbGxhcHNpYmxlIHtcclxuXHRcdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICdcXGYwNjcnO1xyXG5cdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHRcdFx0XHRmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0fVxyXG5cdCAgfVxyXG5cclxuXHQgIC5hY3RpdmUge1xyXG5cdFx0ICBcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDY4XCI7XHJcblx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHR9XHJcblx0ICB9XHJcblx0ICBcclxuXHQgIC5jb250ZW50IHtcclxuXHRcdFx0cGFkZGluZzogMCAxOHB4O1xyXG5cdFx0XHRtYXgtaGVpZ2h0OiAwO1xyXG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0bWFyZ2luOiAxJSAwJSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgxMiwgMTQsIDMyMCwgMTkyMCk7XHJcblx0XHRcdH1cclxuXHRcdFx0dWx7XHJcblx0XHRcdFx0bGl7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE0LCAzMjAsIDE5MjApO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdCAgfVxyXG59XHJcblxyXG4vL1N1YnBhZ2UgQmFubmVyLXN0eWxlXHJcbi5wYWdlLWJhbm5lcntcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdCYuR29vZHllYXItVGlyZS1hbmQtU2VydmljZS1OZXR3b3Jre1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkdGVydGlhcnktY29sb3IsICRwcmltYXJ5LWNvbG9yLCAkZm91cnRoLWNvbG9yKTtcclxuXHRcdC5jb250YWluZXItY3VzdG9te1xyXG5cdFx0XHRwYWRkaW5nOiA0JSAwJTtcclxuXHRcdFx0d2lkdGg6IDg1JTtcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0bWFyZ2luOiAzJSA2MCUgMCUgMCUgIWltcG9ydGFudDtcclxuXHRcdFx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdG1hcmdpbjogMyUgMCUgMCUgMCUgIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIHRhYmxldC1kZXNrdG9we1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRyaWdodDogLTFweDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2ludGVybmFsLXBhZ2VzL2dvb2R5ZWFyLXRzbi9iZy1iYW5uZXIuanBnKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxuXHQmLlRTTi1OYXRpb253aWRlLUxpbWl0ZWQtV2FycmFudHl7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2ludGVybmFsLXBhZ2VzL3Rzbi13YXJyYW50eS9iZy1iYW5uZXIuanBnKTtcclxuXHR9XHJcblxyXG5cdC5jb250YWluZXJ7XHJcblx0XHRwYWRkaW5nOiA1JSAwJTtcclxuXHR9XHJcblx0XHJcblx0LnBhZ2UtdGl0bGV7XHJcblx0XHRtYXJnaW46IDBweDtcclxuXHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRcdGZvbnQtc2l6ZTogcmVzcG9uc2l2ZS1weCgyMCwgNDUsIDMyMCwgMTkyMCk7XHJcblx0XHRsaW5lLWhlaWdodDogMTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAzOGVtO1xyXG5cdFx0Ly8gQGluY2x1ZGUgdGFibGV0e1xyXG5cdFx0Ly8gXHRwYWRkaW5nLWxlZnQ6IDQlO1xyXG5cdFx0Ly8gfVxyXG5cdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHRcdHN1cHtcclxuXHRcdFx0Zm9udC1zaXplOiByZXNwb25zaXZlLXB4KDEyLCAyMCwgMzIwLCAxOTIwKTtcclxuXHRcdH1cclxuXHRcdGl7XHJcblx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRwYWRkaW5nOiAwJSAxJTtcclxuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRzcGFue1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5Hb29keWVhci1UaXJlLWFuZC1TZXJ2aWNlLU5ldHdvcmstVVMsXHJcbi5Hb29keWVhci1UaXJlLWFuZC1TZXJ2aWNlLU5ldHdvcmstQ0F7XHJcblx0LnBhZ2Utc2VjdGlvbntcclxuXHRcdCY6bnRoLW9mLXR5cGUoMSl7XHJcblx0XHRcdHVse1xyXG5cdFx0XHRcdGxpe1xyXG5cdFx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiA2cHg7XHJcblx0XHRcdFx0XHRcdCYuZmF7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bi1zaXRle1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDQlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmOm50aC1vZi10eXBlKDIpe1xyXG5cdFx0XHQuZmxleC1yb3d7XHJcblx0XHRcdFx0QGluY2x1ZGUgZmxleGJveCgpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbGlnbi1pdGVtcyhmbGV4LXN0YXJ0KTtcclxuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XHJcblx0XHRcdFx0LmZsZXgtY29sdW1ue1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZmxleC1iYXNpcygzMiUpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgcGhvbmV7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoNDklKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBpbmNsdWRlIGN1c3RvbS1tcSgzMjAsIDQ2MCl7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMHB4O1xyXG5cdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0Jjp2aXNpdGVkLCY6Zm9jdXMsICZ7XHJcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IC4zcztcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTIsIDE3LCAzMjAsIDE5MjApO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzJTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bi1zaXRle1xyXG5cdFx0XHRcdCYuYWxpZ24tY2VudGVye1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAyJSBhdXRvO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDMwJTtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogcmVzcG9uc2l2ZS1weCgyMDAsIDI4MCwgMzIwLCA3NjcpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHR9XHJcbn1cclxuXHJcbiNkbm5fQm90dG9tQ29udGVudFBhbmUgLkRubk1vZHVsZS1OZXREcml2ZW5Nb2R1bGVzQ291cG9uQ2xpZW50IC5Nb2ROZXREcml2ZW5Nb2R1bGVzQ291cG9uQ2xpZW50Q3tcclxuXHRtYXgtd2lkdGg6IDU3MHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4vL0NvdXBvbnMgU2VjdGlvblxyXG4uc3VicGFnZXtcclxuXHQjc3ViLWNvbnRlbnR7XHJcblx0XHRAaW5jbHVkZSBwaG9uZXtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYyO1xyXG5cdFx0LmNvbnRhaW5lcntcclxuXHRcdFx0cGFkZGluZzogMHB4O1xyXG5cdFx0XHQjZG5uX0JvdHRvbUNvbnRlbnRQYW5le1xyXG5cdFx0XHRcdD5kaXZ7XHJcblx0XHRcdFx0XHQmOm50aC1vZi10eXBlKDEpe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOm50aC1vZi10eXBlKDMpe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5jb3Vwb25zLXNlY3Rpb257XHJcblx0XHRoM3tcclxuXHRcdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMjAsMjYsIDEwMjQsIDE5MjApO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1waG9uZXtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlc3BvbnNpdmUtcHgoMTYsMjYsIDMyMCwgMTAyMyk7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlc3BvbnNpdmUtcHgoNywgMTUsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZXNwb25zaXZlLXB4KDE1LCAzMCwgMzIwLCA3NjcpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFxyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMTE4LCAxMzYsIDc2OCwgMTkyMCk7XHJcblx0XHRcdFx0aGVpZ2h0OiAycHg7XHJcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LXBob25le1xyXG5cdFx0XHRcdFx0d2lkdGg6IHJlc3BvbnNpdmUtcHgoMTE4LCAxMzYsIDMyMCwgNzY3KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5idG4tc2l0ZXtcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuRG5uTW9kdWxlLU5ldERyaXZlbk1vZHVsZXNDb3Vwb25DbGllbnR7XHJcblx0XHQvLyBkaXNwbGF5OiBmbGV4O1xyXG5cdFx0Ly8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHQuY291cG9uLXdyYXB7XHJcblx0XHRcdG1heC13aWR0aDogNTcwcHg7XHJcblx0XHR9XHJcblx0XHQuY291cG9uLXdyYXAgPiBpbWdbc3JjKj1cInNwYWNlclwiXXtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdH1cclxuXHRcdC5jb3Vwb24tb3ZlcmxheXtcclxuXHRcdFx0Ym90dG9tOiAxJTtcclxuXHRcdFx0dG9wOiAwcHg7XHJcblx0XHRcdG1hcmdpbjogYXV0byAwO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgdGFibGV0LWRlc2t0b3B7XHJcblx0XHRcdC5jb3Vwb25zbGlkZXJ2aWV3e1xyXG5cdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQgIFxyXG5cdH1cclxuXHJcbn1cclxuLnBjLWhlYWRlcjo6YmVmb3JlIHtiYWNrZ3JvdW5kLWNvbG9yOiAjMUYyMzI3ICFpbXBvcnRhbnQ7IHdpZHRoOiA5MDAlICFpbXBvcnRhbnQ7IGxlZnQ6IC0zNjUlICFpbXBvcnRhbnQ7fVxyXG5cclxuLm5kY3VzdG9tMSwgLm5kY3VzdG9tYnV0dG9uMTpob3ZlciwgLm5kY3VzdG9tYnV0dG9uMjpob3ZlciwgI2J0bkxvY0RpcmVjdGlvbnM6aG92ZXIsICNidG5Mb2NQaG9uZTpob3ZlciB7IFxyXG5cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XHJcblx0Y29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vaW50ZXJuYWwgcGFnZXNcclxuXHJcbi5hYm91dC1pbmZvLXRzbntcclxuXHRwYWRkaW5nOiAzJSAwO1xyXG5cdC5mbGV4LWNvbnRhaW5lcntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdH1cclxuXHRcdD5kaXZ7XHJcblx0XHRcdHdpZHRoOiA0NSU7XHJcblx0XHRcdEBpbmNsdWRlIHBob25le1xyXG5cdFx0XHRcdHdpZHRoOiA5MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5pbWctaW5mb3tcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMyU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmJ0bi1zaXRle1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG59XHJcblxyXG4uRW1wbG95bWVudC1pbmZvLCAuZW1wbG95bWVudC1pbmZvLXNlY29uZHtcclxuXHRwYWRkaW5nOiAyJSAwO1xyXG5cdC5nZW5lcmFsLWNvbnRhaW5lcntcclxuXHRcdHBhZGRpbmc6IDEwcHggMjBweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG5cdFx0Y29sb3I6IGJsYWNrO1xyXG5cdH1cclxufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICAgICAgICBSZXNldHMgICAgICAgICAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLCBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsIGRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCwgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhciwgYiwgdSwgaSwgY2VudGVyLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLCBmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge21hcmdpbjogMDsgcGFkZGluZzogMDsgYm9yZGVyOiAwOyBmb250LXNpemU6IDEwMCU7IGZvbnQ6IGluaGVyaXQ7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTt9XHJcbmIge2ZvbnQtd2VpZ2h0OjcwMDt9XHJcbmVte2ZvbnQtc3R5bGU6aXRhbGljO30gLyogUGxlYXNlIGRvbid0IHJlbW92ZSB0aGlzICovXHJcbi5ETk5FbXB0eVBhbmUge2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7fVxyXG4uRE5OTW9kdWxlQ29udGVudCB7b3ZlcmZsb3c6aGlkZGVuO31cclxuI2Rubl9Db250ZW50UGFuZSAuRE5OTW9kdWxlQ29udGVudCB7b3ZlcmZsb3c6dmlzaWJsZTt9XHJcbi5kbm5Mb2dpbkFjdGlvbnMge2Rpc3BsYXk6bm9uZTt9XHJcbi5kbm5BY3Rpb25NZW51Qm9keTpob3ZlciB7cG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbi10b3A6IC0zMHB4O31cclxuLk1vZFBvc3RhbENvZGVMb29rdXBDLCAuTW9kRHluYW1pY0Zvcm1zQywgLk1vZElDR0xvY2FsRm9jYWxNb2R1bGVzV2hlZWxDb25maWd1cmF0b3JDLCAuTW9kTmV0RHJpdmVuTW9kdWxlc1ZlaGljbGVMb29rdXBCYXJDLCAuTW9kTGFuZ3VhZ2VzQyB7b3ZlcmZsb3c6dmlzaWJsZSAhaW1wb3J0YW50O31cclxuI1Rlc3RpbmdXYXJuaW5nIHtwb3NpdGlvbjpmaXhlZDsgYm90dG9tOjA7IGxlZnQ6MDsgYmFja2dyb3VuZDojMDAwOyBjb2xvcjojRjAwOyBwYWRkaW5nOjVweDsgZm9udC1zaXplOjE2cHg7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcblxyXG5oMSwgaDIsIGgzLCBzdHJvbmcge2ZvbnQtd2VpZ2h0OjcwMDt9XHJcbmgyIHtmb250LXNpemU6IDEuNWVtOyBtYXJnaW4tYm90dG9tOiAxMHB4O31cclxuaDMge2ZvbnQtc2l6ZTogMS4yNWVtOyBtYXJnaW4tYm90dG9tOjElOyBsaW5lLWhlaWdodDpub3JtYWw7fVxyXG5cclxuaW1ne2JveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcbmltZ3ttYXgtd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87fVx0XHJcbmlmcmFtZXttYXgtd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7fVx0XHJcbmltZ1tzdHlsZSo9XCJmbG9hdFwiXTpub3QoI3RpcmVicmFuZHMgaW1nKXtmbG9hdDpub25lICFpbXBvcnRhbnQ7fVxyXG5cclxuLmFxU2VjdGlvbkJvZHkgLmJ0blN1Ym1pdFF1b3Rle3Bvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogNTt9XHJcblxyXG4vKiBIVE1MNSBESVNQTEFZLVJPTEUgUkVTRVQgRk9SIE9MREVSIEJST1dTRVJTXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge2Rpc3BsYXk6IGJsb2NrO31cclxuYm9keSB7bGluZS1oZWlnaHQ6IDE7IG92ZXJmbG93LXg6IGhpZGRlbjt9XHJcbmJsb2NrcXVvdGUsIHEge3F1b3Rlczogbm9uZTt9XHJcbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLCBxOmJlZm9yZSwgcTphZnRlciB7Y29udGVudDogJyc7IGNvbnRlbnQ6IG5vbmU7fVxyXG50YWJsZSB7Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgYm9yZGVyLXNwYWNpbmc6IDA7fVxyXG4uZG5uY2xlYXIge2NsZWFyOmJvdGg7IG92ZXJmbG93OmhpZGRlbjt9XHJcblxyXG5cclxuLmNsZWFyIHtjbGVhcjogYm90aDtkaXNwbGF5OiBibG9jaztvdmVyZmxvdzogaGlkZGVuO3Zpc2liaWxpdHk6IGhpZGRlbjt3aWR0aDogMDtoZWlnaHQ6IDA7fVxyXG4uY2xlYXJmaXg6YWZ0ZXIge2NsZWFyOiBib3RoO2NvbnRlbnQ6ICcgJztkaXNwbGF5OiBibG9jaztmb250LXNpemU6IDA7bGluZS1oZWlnaHQ6IDA7dmlzaWJpbGl0eTogaGlkZGVuO3dpZHRoOiAwO2hlaWdodDogMDt9XHJcbi5jbGVhcmZpeCB7ZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuKiBodG1sIC5jbGVhcmZpeCB7aGVpZ2h0OiAxJTt9XHJcbi5jbGVhcmZpeCB7ZGlzcGxheTogYmxvY2s7fVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcclxuXHQubmRjdXN0b21idXR0b24xLCAubmRjdXN0b21idXR0b24ye2Rpc3BsYXk6YmxvY2s7IG1hcmdpbi1ib3R0b206NXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgcGFkZGluZy10b3A6MSU7IGZvbnQtc2l6ZTouODc1ZW0gIWltcG9ydGFudDt9XHJcblx0Lm5kY3VzdG9tYnV0dG9uZm9ybWF0e3BhZGRpbmc6MSUgIWltcG9ydGFudDsgd2hpdGUtc3BhY2U6bm9ybWFsICFpbXBvcnRhbnQ7fVxyXG4gICAgc2VsZWN0e2ZvbnQtc2l6ZToxZW0gIWltcG9ydGFudDt9XHJcbiAgICBcclxuICAgIGRpdltzdHlsZSo9XCJmbG9hdDpsZWZ0XCJdLCBwW3N0eWxlKj1cImZsb2F0OmxlZnRcIl0sIGRpdltzdHlsZSo9XCJmbG9hdDpyaWdodFwiXSwgcFtzdHlsZSo9XCJmbG9hdDpyaWdodFwiXXtmbG9hdDpub25lICFpbXBvcnRhbnQ7IG1hcmdpbjoyJSAhaW1wb3J0YW50O31cclxufVxyXG5cclxuXHJcblxyXG4vKiBXUkFQUEVSIENMQVNTIEZPUiBGTE9BVCBDTEVBUklOR1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLndyYXBwZXIge2Rpc3BsYXk6IGlubGluZS1ibG9jazt9XHJcbi53cmFwcGVyOmFmdGVyIHtjb250ZW50OiBcIi5cIjsgZGlzcGxheTpibG9jaztoZWlnaHQ6MDtjbGVhcjpib3RoO3Zpc2liaWxpdHk6aGlkZGVuO31cclxuLndyYXBwZXIge2Rpc3BsYXk6IGJsb2NrO31cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5cclxuLyogQ1VTVE9NIFNUWUxFIEdVSURFXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4ucGMtaGVhZGVyLCAucGMtdGl0bGUsIC5wYy1mb290ZXJ7bWFyZ2luLWJvdHRvbToxJTt9XHJcbi5wYy1oZWFkZXIgLkhlYWQsIC5wYy10aXRsZSAuSGVhZHt9XHJcbi5wYy1oZWFkZXIsIC5wYy10aXRsZXtwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo1OyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzo4cHggMDt9XHJcbi5wYy1oZWFkZXIgaDEsIC5wYy10aXRsZSBoMXtjb2xvcjojRkZGOyBmb250LXdlaWdodDo4MDA7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgfVxyXG4udGl0bGUtYmFye3Bvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGNvbnRlbnQ6XCJDXCI7IHRleHQtaW5kZW50Oi05OTk5cHg7fVxyXG4ucGMtaGVhZGVyIGgxLCAucGMtdGl0bGUgaDEsIC5wYy1oZWFkZXI6OmJlZm9yZSwgLnBjLXRpdGxlOjpiZWZvcmV7Zm9udC1zaXplOjIzcHg7fVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoIDogNzY4cHgpIGFuZCAobWF4LWRldmljZS13aWR0aCA6IDEwMjRweCksIChtYXgtd2lkdGg6IDk4MHB4KSBhbmQgKG1pbi13aWR0aDo2NDBweCl7XHJcblx0LnBjLWJvZHl7cGFkZGluZzoxJTt9IC5wYy10aXRsZSwgLnBjLWhlYWRlcntwYWRkaW5nOjhweCAxJTt9XHRcclxufVxyXG5cclxuLm5kZm9ydXNhIHtkaXNwbGF5OmJsb2NrO31cclxuLm5kZm9yY2FuYWRhIHtkaXNwbGF5Om5vbmU7fVxyXG4ubmRjdXN0b21jb2xvcmNsYXNzLCAubmRjdXN0b21jb2xvcmNvbnRhaW5lciBpbWcge2JhY2tncm91bmQtY29sb3I6IzAwMDAwMDt9IC8qICFpbXBvcnRhbnQgKi9cclxuLm5kY3VzdG9tdGV4dGNvbG9yMSB7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tdGV4dGNvbG9yMiB7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tbGlua2NvbG9yMSB7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tbGlua2NvbG9yMTpob3ZlciB7Y29sb3I6IzY2NjY2NiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tbGlua2NvbG9yMiB7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tbGlua2NvbG9yMjpob3ZlciB7Y29sb3I6IzY2NjY2NiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tYnV0dG9uZm9ybWF0IHt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2UgIWltcG9ydGFudDsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZCAhaW1wb3J0YW50OyAtbW96LWJvcmRlci1yYWRpdXM6M3B4ICFpbXBvcnRhbnQ7IC13ZWJraXQtYm9yZGVyLXJhZGl1czozcHggIWltcG9ydGFudDsgYm9yZGVyLXJhZGl1czozcHggIWltcG9ydGFudDsgcGFkZGluZzo1cHggN3B4ICFpbXBvcnRhbnQ7IHdoaXRlLXNwYWNlOm5vd3JhcCAhaW1wb3J0YW50OyBjdXJzb3I6cG9pbnRlcjsgYmFja2dyb3VuZC1pbWFnZTp1cmwoXCIvL2EubmRydi5pbi9tb2R1bGVzL3NoYXJlZC9idXR0b25ncmFkaWVudDAxLnBuZ1wiKSByZXBlYXQteCBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7fVxyXG4ubmRjdXN0b21yb3VuZGVkY29ybmVycyB7LW1vei1ib3JkZXItcmFkaXVzOjNweCAhaW1wb3J0YW50OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4ICFpbXBvcnRhbnQ7IGJvcmRlci1yYWRpdXM6M3B4ICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtaW1hZ2U6dXJsKFwiLy9hLm5kcnYuaW4vbW9kdWxlcy9zaGFyZWQvYnV0dG9uZ3JhZGllbnQwMS5wbmdcIilyZXBlYXQteCBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7IGRpc3BsYXk6aW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7fVxyXG4ubmRjdXN0b21idXR0b24xIHtiYWNrZ3JvdW5kOiM2NjY2NjYgIWltcG9ydGFudDsgY29sb3I6I2ZmZmZmZiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tYnV0dG9uMTpob3ZlciB7YmFja2dyb3VuZDojMDAwMDAwICFpbXBvcnRhbnQ7IGNvbG9yOiNmZmZmZmYgIWltcG9ydGFudDt9XHJcbi5uZGN1c3RvbWJ1dHRvbjIge2JhY2tncm91bmQ6IzMzMzMzMyAhaW1wb3J0YW50OyBjb2xvcjojZmZmZmZmICFpbXBvcnRhbnQ7fVxyXG4ubmRjdXN0b21idXR0b24yOmhvdmVyIHtiYWNrZ3JvdW5kOiMwMDAwMDAgIWltcG9ydGFudDsgY29sb3I6I2ZmZmZmZiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tMSB7YmFja2dyb3VuZDojMDAwMDAwICFpbXBvcnRhbnQ7IGNvbG9yOiNmZmZmZmYgIWltcG9ydGFudDt9XHJcbi5uZGN1c3RvbTIge2JhY2tncm91bmQ6IzY2NjY2NiAhaW1wb3J0YW50OyBjb2xvcjojZmZmZmZmICFpbXBvcnRhbnQ7fSAvKiBUSElTIE1BWSBCRSBOT1QgUklHSFQgKi9cclxuLm5kY3VzdG9tYm9yZGVyIHtib3JkZXI6MXB4IHNvbGlkICM2NjYgIWltcG9ydGFudDt9IFxyXG4ubmRyZXF1aXJlZCB7Y29sb3I6I0YwMDsgZm9udC13ZWlnaHQ6Ym9sZDt9XHJcblxyXG4vKiBERUZBVUxUIERFViBTVFlMRVNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5yZXF1aXJlZGZvcm1pbmZvIHtjb2xvcjojRjAwOyBmb250LXdlaWdodDo3MDA7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbi5BVENoaWRkZW4sIC5oaWRlbWUge2Rpc3BsYXk6bm9uZX1cclxuIFxyXG4vKiAxNnB4ICovXHJcbiNuZHRlc3RpbW9uaWFscyAuc3VibWl0LXJldmlld3tmb250LXNpemU6MWVtICFpbXBvcnRhbnQ7fVxyXG5cclxuLyogMTRweCAqL1xyXG4jbmRhdGMgLkZlYXR1cmVzQmVuZWZpdHMgdGgsICNuZGF0YyAuYXRjdGlyZXBvaW50dGFibGUsIHNlbGVjdDpub3QoI3RpcmVjb25uZWN0IHNlbGVjdCksICNuZGF0YyAuZGlzY2xhaW1lciwgLkJ1dHRvbkxpbmsxLCAubmRhdGNpbnRyb3RleHQsICNuZHNjICNDYXRMaXN0IHAsICNuZHNjIC5DYXRlZ29yeURlc2NyaXB0aW9uVGV4dCwgI25kc2MgI3NlcnZpY2VkZXNjcmlwdGlvbiwgI25kdGVzdGltb25pYWxzIC5uZHRlc3RpbW9uaWFsc2ludHJvdGV4dCwgI25kdGVzdGltb25pYWxzIC5uZHRlc3RpbW9uaWFsc2ludHJvdGV4dCwgI3Jldmlldy1zdWJtaXNzaW9uIC5yZXZpZXctc3VibWl0LWJ1dHRvbiwgI25kdGVzdGltb25pYWxzICNyZXZpZXdzLXNob3dpbmcgLmZpcnN0LWxhc3QgYSwgI25kdGVzdGltb25pYWxzICNyZXZpZXdzLXNob3dpbmcgLnNvcnRieSBzZWxlY3QsICNyZXZpZXctc3VibWlzc2lvbiwgI3Jldmlldy1zdWJtaXNzaW9uIGlucHV0LCAjcmV2aWV3LXN1Ym1pc3Npb24gdGV4dGFyZWEsICNuZHRlc3RpbW9uaWFscyAjcmV2aWV3LXN0YXJzIC5yZXZpZXctdGV4dCwgI3Jldmlldy1zdWJtaXNzaW9uIGlucHV0LCAjcmV2aWV3LXN1Ym1pc3Npb24gdGV4dGFyZWEsICNuZHNjIC5DYXRDb250ZW50e2ZvbnQtc2l6ZTouODc1ZW0gIWltcG9ydGFudDt9XHJcblxyXG4vKiAxMnB4ICovXHJcbiNuZGF0YyAjYXRjaW5mb3RhYnMgLmF0Y3RhYm5hdiBsaSwgI25kYXRjICNhdGN0YWJjb250ZW50LCAubmRjdXN0b21idXR0b25mb3JtYXQsICNuZHNjIC5TZXJ2aWNlTGluaywgI25kc2MgI0NhdExpc3QgdWx7Zm9udC1zaXplOi43NWVtICFpbXBvcnRhbnQ7fSAvKiAxMnB4ICovXHJcblxyXG4jbmRzYyAuU2VydmljZUxpbmssICNuZHNjICNDYXRMaXN0IHAsICNuZHNjICNDYXRMaXN0IHVse2xpbmUtaGVpZ2h0Om5vcm1hbCAhaW1wb3J0YW50O31cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIER5bmFtaWMgRm9ybSBTdHlsZXMgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5sYWJlbCAucGFkZGluZ3sgd2hpdGUtc3BhY2U6bm93cmFwO31cclxuLnBhZGRpbmd7bWFyZ2luOjAgMjBweDsgbWFyZ2luLWJvdHRvbToxMHB4fVxyXG4uZGF0ZXBhZGRpbmd7bWFyZ2luLWxlZnQ6MjBweDsgbWFyZ2luLWJvdHRvbTo1cHg7IHdoaXRlLXNwYWNlOm5vd3JhcDt9XHJcbi8qLkR5bmFtaWNGb3Jtc19NYWludGFibGUge3dpZHRoOiAxMDAlOyBwYWRkaW5nOiAycHg7fSovXHJcbi5Ob3JtYWxUZXh0Qm94e21hcmdpbi1sZWZ0OjIwcHg7fVxyXG4ucm9zX2dyaWR7bWFyZ2luOjAgMjBweDsgbWFyZ2luLWJvdHRvbTo1cHg7fVxyXG4ucm9zX2dyaWQgdGR7cGFkZGluZzoycHg7IGJvcmRlcjoxcHggc29saWQgIzAwMDAwMDt9XHJcbi5yb3NfZ3JpZCAuRHluYW1pY0Zvcm1zX0dyaWRIZWFkZXJDb2x1bW57YmFja2dyb3VuZDojMDAwMDAwOyBjb2xvcjojRkZGRkZGOyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nOjNweDsgYm9yZGVyOjFweCBzb2xpZCAjMDAwMDAwO31cclxuLnJvc19ncmlkIC5EeW5hbWljRm9ybXNfR3JpZEl0ZW1Db2x1bW57YmFja2dyb3VuZDojQ0NDQ0NDOyBjb2xvcjojMDAwMDAwO31cclxuLnJvc19ncmlkIC5EeW5hbWljRm9ybXNfR3JpZENvbHVtbntiYWNrZ3JvdW5kOiNFQkVDRUM7fVxyXG5sYWJlbC5wYWRkaW5nLXJhZGlve2ZvbnQtd2VpZ2h0OjcwMDt9XHJcbnRhYmxlLnBhZGRpbmctcmFkaW97bWFyZ2luLWJvdHRvbToyJTt9XHJcbi5yb3MtdGl0bGV7bWFyZ2luOjElIDA7fVxyXG5zcGFuLnBhZGRpbmctcmFkaW97bWFyZ2luLWJvdHRvbToyJTsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGxpbmUtaGVpZ2h0Om5vcm1hbDt9XHJcbi5EeW5hbWljRm9ybXNfTWFpbnRhYmxle3dpZHRoOjEwMCU7fVxyXG4uRHluYW1pY0Zvcm1zX01haW50YWJsZSBzZWxlY3QsIC5EeW5hbWljRm9ybXNfTWFpbnRhYmxlIGlucHV0e2ZvbnQtc2l6ZToxZW07fVxyXG4jRW50cnlGb3JtIC5Ob3JtYWxUZXh0Qm94e21hcmdpbjowIDIwcHggMTBweDt9XHJcbiNFbnRyeUZvcm0gLk5vcm1hbFRleHRCb3gge3dpZHRoOjE1MHB4O31cclxuXHJcbnNwYW4uY2FwdGNoYXtwb3NpdGlvbjpyZWxhdGl2ZTsgdG9wOjRweDt9XHJcbiNCb3R0b21Gb290ZXIgI0VudHJ5Rm9ybSAuY2FwdGNoYSBpbWdbc3JjKj1cIi9JbWFnZUNoYWxsZW5nZS5jYXB0Y2hhLmFzcHg/XCJde3dpZHRoOjE4MHB4OyBoZWlnaHQ6NDVweDt9XHJcbiNCb3R0b21Gb290ZXIgI0VudHJ5Rm9ybSAuY2FwdGNoYXt3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IGRpc3BsYXk6YmxvY2s7fVxyXG4jQm90dG9tRm9vdGVyICNFbnRyeUZvcm0gLmNhcHRjaGEgZGl2e2Rpc3BsYXk6aW5saW5lO31cclxuI0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIC5jYXB0Y2hhIGlucHV0e3BhZGRpbmc6MSU7IHBvc2l0aW9uOnJlbGF0aXZlO31cclxuI0JvdHRvbUZvb3RlciAuY2FwdGNoYXtwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jayAhaW1wb3J0YW50O31cclxuI0JvdHRvbUZvb3RlciAuRHluYW1pY0Zvcm1zX0NBUFRDSEFFcnJvcntiYWNrZ3JvdW5kOiM5OTAwMDA7IGNvbG9yOiNGRkY7IHBhZGRpbmc6MTBweDsgd2lkdGg6MjAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MzdweDsgcmlnaHQ6MDt9XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGggOiA3NjhweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogMTAyNHB4KSwgKG1heC13aWR0aDogOTgwcHgpIHtcclxuXHQjQm90dG9tRm9vdGVyIC5EeW5hbWljRm9ybXNfQ0FQVENIQUVycm9ye3dpZHRoOjMwJTsgdG9wOjA7IHdoaXRlLXNwYWNlOm5vcm1hbDt9XHJcblx0I0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIC5jYXB0Y2hhIGlucHV0e2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDt9XHJcbn1cclxuI0JvdHRvbUZvb3RlciAuRHluYW1pY0Zvcm1zX1N1bW1hcnkgbGksICNCb3R0b21Gb290ZXIgLkR5bmFtaWNGb3Jtc19TdW1tYXJ5IGxpOm50aC1vZi10eXBlKDNuKzIpe2Zsb2F0Om5vbmU7IGRpc3BsYXk6YmxvY2s7IHdpZHRoOmF1dG87fVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk4MHB4KXtcclxuXHQjQm90dG9tRm9vdGVyICNFbnRyeUZvcm0gLmNhcHRjaGEgaW1nW3NyYyo9XCIvSW1hZ2VDaGFsbGVuZ2UuY2FwdGNoYS5hc3B4P1wiXXtmbG9hdDpyaWdodDsgcG9zaXRpb246cmVsYXRpdmU7IHRvcDotMThweDt9XHJcblx0I0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIC5jYXB0Y2hhIGlucHV0e3RvcDotMTBweDt9XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkgeyNCb3R0b21Gb290ZXIgI0VudHJ5Rm9ybSAuY2FwdGNoYSBpbWdbc3JjKj1cIi9JbWFnZUNoYWxsZW5nZS5jYXB0Y2hhLmFzcHg/XCJde3dpZHRoOmF1dG87IGhlaWdodDphdXRvO319XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xyXG5cdC5wYWRkaW5ne21hcmdpbjoxJSAwIDElO31cclxuXHQjRW50cnlGb3JtICp7Ym94LXNpemluZzpib3JkZXItYm94OyB3aGl0ZS1zcGFjZTpub3JtYWw7fVxyXG5cdC5EeW5hbWljRm9ybXNfVGFibGVSb3csIC5EeW5hbWljRm9ybXNfVGFibGVSb3cgdGR7ZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTt9XHJcblx0LkR5bmFtaWNGb3Jtc19UYWJsZVJvdyB0ZCB0YWJsZSwgLkR5bmFtaWNGb3Jtc19UYWJsZVJvdyB0ZCB0YWJsZSB0Ym9keSwgLkR5bmFtaWNGb3Jtc19UYWJsZVJvdyB0ZCB0YWJsZSB0ciwgLkR5bmFtaWNGb3Jtc19UYWJsZVJvdyB0ZCB0YWJsZTpub3QoLnBhZGRpbmctcmFkaW8pIHRyID4gdGQ6Zmlyc3Qtb2YtdHlwZXtkaXNwbGF5OmJsb2NrOyB3aWR0aDoxMDAlO30gLyogSXNzdWUgKi9cclxuXHQjRW50cnlGb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAjRW50cnlGb3JtIHNlbGVjdCwgI0VudHJ5Rm9ybSB0ZXh0YXJlYXt3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxNHB4OyBwYWRkaW5nOjIlOyBtYXJnaW46MCAwIDElO31cclxuXHQjRW50cnlGb3JtIGRpdltzdHlsZSo9XCJtYXJnaW4tbGVmdFwiXXttYXJnaW46MCAhaW1wb3J0YW50O31cclxuXHQjRW50cnlGb3JtIGlucHV0W3R5cGU9XCJidXR0b25cIl17d2lkdGg6MTAwJTsgcGFkZGluZzoyJTt9XHJcblx0dGFibGUucGFkZGluZy1yYWRpb3t3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IG1hcmdpbi1ib3R0b206MSU7IHBhZGRpbmc6MiU7fVxyXG5cdHRhYmxlLnBhZGRpbmctcmFkaW8gdGR7d2lkdGg6MjAlICFpbXBvcnRhbnQ7IGRpc3BsYXk6aW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IHRleHQtYWxpZ246Y2VudGVyICFpbXBvcnRhbnQ7fVxyXG5cdHNwYW4ucGFkZGluZy1yYWRpb3ttYXJnaW4tYm90dG9tOjIlOyBkaXNwbGF5OmlubGluZS1ibG9jazsgbGluZS1oZWlnaHQ6bm9ybWFsO31cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgICBUaXJlIEJyYW5kcyBQYWdlICAgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4jdGlyZWJyYW5kc3t9XHJcbiN0aXJlYnJhbmRzIGEuc2hvcCwgI3RpcmVicmFuZHMgYS5iYWNrIHtmbG9hdDpyaWdodDsgdGV4dC1pbmRlbnQ6MjVweDsgZGlzcGxheTpibG9jazsgY29sb3I6IzAwMDAwMDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IHBhZGRpbmc6NXB4OyBib3JkZXI6IDFweCBzb2xpZCAjZTZlOGQ5OyBtYXJnaW46NXB4OyAtbW96LWJvcmRlci1yYWRpdXM6NnB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4OyBib3JkZXItcmFkaXVzOjZweDt9XHJcbiN0aXJlYnJhbmRzIGEuc2hvcCB7YmFja2dyb3VuZDojZTllOWU5IHVybCgvL2EubmRydi5pbi9pY29ucy9jYXJ0LnBuZykgbm8tcmVwZWF0IDVweCBjZW50ZXI7fVxyXG4jdGlyZWJyYW5kcyBhLmJhY2sge2JhY2tncm91bmQ6I2U5ZTllOSB1cmwoLy9hLm5kcnYuaW4vaWNvbnMvZGVsZXRlLmdpZikgbm8tcmVwZWF0IDVweCBjZW50ZXI7fVxyXG4jdGlyZWJyYW5kcyBhLnNob3A6aG92ZXIsICN0aXJlYnJhbmRzIGEuYmFjazpob3ZlciB7Y29sb3I6IzY2NjY2NjsgYmFja2dyb3VuZC1jb2xvcjojZmZmZmZmO31cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge2ltZ1tzcmMqPVwiL3RpcmVfYnJhbmRzL2xvZ29zL2xvZ29cIl0sIGltZ1tzcmMqPVwiL2N1c3RvbS1wYWdlcy9cIl17aGVpZ2h0OmF1dG87fX0gXHJcblxyXG4vKiBORVcgQlJBTkQgUEFHRSBBTEwgUEFHRVMgKi9cclxuI25ldy1icmFuZC1wYWdlIC5zaG9wLXdpdGgtdXMgaDJ7Zm9udC1zaXplOjJlbTsgY29sb3I6I0ZGRjsgZm9udC13ZWlnaHQ6NDAwOyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46MDsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBsaW5lLWhlaWdodDpub3JtYWw7fVxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1zcGVjcyBpbWdbc3JjKj1cInNwZWNzLnBuZ1wiXXttYXJnaW4tdG9wOjEwcHg7fVxyXG5cclxuXHJcbiNuZXctYnJhbmQtcGFnZSAuc2hvcC13aXRoLXVzIGltZ3t2ZXJ0aWNhbC1hbGlnbjp0b3A7IG1hcmdpbi1yaWdodDoyNXB4O31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtdGl0bGV7bWFyZ2luLWJvdHRvbToxMHB4O31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtc2xvZ2Fue2Rpc3BsYXk6aW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IG1hcmdpbi1ib3R0b206MjBweDt9XHJcbiNuZXctYnJhbmQtcGFnZSAuc2hvcC13aXRoLXVze2xpbmUtaGVpZ2h0OjcycHg7IG1hcmdpbi1ib3R0b206NDBweDsgbWFyZ2luLWJvdHRvbTo0MHB4O31cclxuXHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgLnNob3AtZm9yLXRpcmVzLWhlcmV7ZGlzcGxheTpibG9jazsgZm9udC1zaXplOjIuMjVlbTsgcGFkZGluZy1sZWZ0OjE4cHg7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgZm9udC1mYW1pbHk6J0FyaWFsIE5hcnJvdycsIGFyaWFsO31cclxuXHJcbiNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLnNob3AtZm9yLXRpcmVzLWhlcmV7ZGlzcGxheTpibG9jazsgYmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL3Nob3AtZm9yLXRpcmVzLWhlcmUucG5nKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgY29sb3I6IzAwMDsgd2lkdGg6NDA3cHg7IGhlaWdodDo2OXB4OyBmb250LXNpemU6Mi4yNWVtOyBsaW5lLWhlaWdodDo2OXB4OyBmbG9hdDpsZWZ0OyBjbGVhcjpsZWZ0O31cclxuXHJcbiNuZXctYnJhbmQtcGFnZS5iZmdvb2RyaWNoLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtkaXNwbGF5OmJsb2NrOyBiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvc2hvcC1mb3ItYmZnb29kcmljaC10aXJlcy1oZXJlLnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGNvbG9yOiNGRkY7IHdpZHRoOjUzOHB4OyBoZWlnaHQ6NzNweDsgZm9udC1zaXplOjIuMjVlbTsgbGluZS1oZWlnaHQ6NzNweDt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2Rpc3BsYXk6YmxvY2s7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9zaG9wLWZvci11bmlyb3lhbC10aXJlcy1oZXJlLnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGNvbG9yOiNGRkY7IHdpZHRoOjQ3M3B4OyBoZWlnaHQ6NjRweDsgZm9udC1zaXplOjIuMjVlbTsgbGluZS1oZWlnaHQ6NjRweDt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1zdWJ0aXRsZXtwYWRkaW5nOjEwcHggMiU7IGNvbG9yOiNGRkY7IGZvbnQtd2VpZ2h0OjQwMDsgZm9udC1zaXplOjQwMDsgZm9udC1zaXplOjEuMjVlbTsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtc3Vic2VjdGlvbntwYWRkaW5nOjIlO31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtc3Vic2VjdGlvbjo6YWZ0ZXJ7Y29udGVudDogXCIuXCI7IGRpc3BsYXk6YmxvY2s7IGhlaWdodDowOyBjbGVhcjpib3RoOyB2aXNpYmlsaXR5OmhpZGRlbjt9XHJcbiNuZXctYnJhbmQtcGFnZSAubmJwLWJyYW5kc2xvZ2Fue2Zsb2F0OmxlZnQ7IHdpZHRoOjUwJTsgYm94LXNpemluZzpib3JkZXItYm94OyBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNjNGNhY2Y7IHBhZGRpbmctcmlnaHQ6MzBweDsgbWluLWhlaWdodDoxNDlweDsgfVxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1rZXliZW5lZml0c3tmbG9hdDpyaWdodDsgd2lkdGg6NTAlOyBwYWRkaW5nLWxlZnQ6MzBweDsgYm94LXNpemluZzpib3JkZXItYm94O31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZWRldGFpbHMgdWwsICNuZXctYnJhbmQtcGFnZSAubmJwLXRpcmVkZXRhaWxzIGxpe21hcmdpbjowICFpbXBvcnRhbnQ7fVxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC10aXJlZGV0YWlscyBhe3Bvc2l0aW9uOmFic29sdXRlOyByaWdodDoxNXB4OyBib3R0b206MTVweDt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgaDN7dGV4dC10cmFuc2Zvcm06bm9uZTsgZm9udC1zaXplOjEuMTI1ZW07IG1hcmdpbi1ib3R0b206NXB4O31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIGgze21hcmdpbjo1cHggMCAwO31cclxuXHJcbiNuZXctYnJhbmQtcGFnZSAubmJwLXNsb2dhbiBoNntmb250LXNpemU6Ljg3NWVtOyBmb250LXdlaWdodDo0MDA7fVxyXG4jbmV3LWJyYW5kLXBhZ2UgLnNtYWxsLXNob3AtYXJyb3d7ZGlzcGxheTppbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9zbWFsbC1zaG9wLWFycm93LnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IHdpZHRoOjIxMnB4OyBoZWlnaHQ6NTBweDsgbGluZS1oZWlnaHQ6NTBweDsgcGFkZGluZy1sZWZ0OjEycHg7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgZm9udC1zaXplOjEuMjVlbTsgY29sb3I6IzAwMDsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBtYXJnaW46MCAwIDIwcHggNDBweDt9XHJcbiNuZXctYnJhbmQtcGFnZSAuc3VidGV4dHtjb2xvcjojOWQ5ZDlkOyBmb250LXNpemU6MC41NjNlbTt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1zcGVjc3twYWRkaW5nOjEycHg7IHdpZHRoOjUwJTsgbWF4LXdpZHRoOjM0MHB4OyBmbG9hdDpsZWZ0OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IG1pbi1oZWlnaHQ6MTUwcHg7IHBvc2l0aW9uOnJlbGF0aXZlO31cclxuI25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAubmJwLXNwZWNzIC5uYnAtc3BlY3MtdGFie3Bvc2l0aW9uOmFic29sdXRlOyBsZWZ0Oi0xMnB4OyB0b3A6MzBweDsgZGlzcGxheTpub25lO31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3MgLm5icC1zcGVjcy10YWJ7cG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6LTRweDsgdG9wOjUwcHg7IGRpc3BsYXk6bm9uZTt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UubWljaGVsaW4tbGFuZGluZy1wYWdlIC5uYnAtc3BlY3N7YmFja2dyb3VuZDojZDRkZGU2O31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3N7YmFja2dyb3VuZDojZDhkNWQ2O31cclxuI25ldy1icmFuZC1wYWdlLnVuaXJveWFsLWxhbmRpbmctcGFnZSAubmJwLXNwZWNze2JhY2tncm91bmQ6I2Q4ZDVkNjsgd2lkdGg6MjIlO31cclxuXHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC10aXJlZGV0YWlsc3twYWRkaW5nOjEycHggMzBweDsgYmFja2dyb3VuZDojZTZlYWVlOyB3aWR0aDo2MjBweDsgZmxvYXQ6cmlnaHQ7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgbWluLWhlaWdodDoxNzNweDsgcG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbi1sZWZ0OjIlO31cclxuXHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UubWljaGVsaW4tbGFuZGluZy1wYWdlIC5uYnAtdGlyZWRldGFpbHN7YmFja2dyb3VuZDojZTZlYWVlO31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5uYnAtdGlyZWRldGFpbHN7YmFja2dyb3VuZDojZWNlY2VjO31cclxuXHJcbiNuZXctYnJhbmQtcGFnZSAubmJwLXRpcmVkZXRhaWxzIHAsICNuZXctYnJhbmQtcGFnZSAubmJwLXRpcmVkZXRhaWxzIHVsLCAjbmV3LWJyYW5kLXBhZ2UgLm5icC10aXJlZGV0YWlscyBhe2ZvbnQtc2l6ZTowLjc1MGVtOyBtYXJnaW46MCAhaW1wb3J0YW50O31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtc3BlY3MgaDN7Zm9udC1zaXplOjEuMTI1ZW07IG1hcmdpbi1ib3R0b206MDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtc3BlY3MgaDR7Zm9udC1zaXplOi44NzVlbTsgZm9udC13ZWlnaHQ6NzAwO31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZXNwZWN7Zm9udC1zaXplOjAuNWVtOyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fVxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC10aXJlc3BlYyBkaXZ7bWFyZ2luLWJvdHRvbTo1cHg7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgbWFyZ2luLXJpZ2h0OjhweDt9XHJcblxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC10aXJlLWNvbnRhaW5lcnttYXJnaW46MjBweCAwOyBkaXNwbGF5OmZsZXg7IGZsZXgtZGlyZWN0aW9uOnJvdzt9XHJcbi8qI25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZS1jb250YWluZXIgPiBkaXZ7ZmxleDoxO30qL1xyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1zbGlkZXJ7d2lkdGg6MTIwcHg7IGhlaWdodDoxMHB4OyAtbW96LWJvcmRlci1yYWRpdXM6M3B4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4OyBib3JkZXItcmFkaXVzOjNweDsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6I0ZGRjsgcG9zaXRpb246cmVsYXRpdmU7ICBiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvY29tcGxldGUtYmFyLmdpZikgbm8tcmVwZWF0LCB1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL2luY29tcGxldGUtYmFyLmdpZikgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOi01MCUgLTUwJSwgLTUwJSA1MCU7fVxyXG4jbmV3LWJyYW5kLXBhZ2UgLm5icC1zbGlkZXI6OmJlZm9yZXtib3JkZXI6MXB4IHNvbGlkICM2MjYyNjI7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6LTJweDsgZm9udC1zaXplOjFlbTsgdGV4dC1hbGlnbjpjZW50ZXI7IHdpZHRoOjE0cHg7IGhlaWdodDoxNHB4OyBwYWRkaW5nOjJweDsgYm94LXNpemluZzpib3JkZXItYm94OyAtbW96LWJvcmRlci1yYWRpdXM6NTAlOyAtd2Via2l0LWJvcmRlci1yYWRpdXM6NTAlOyBib3JkZXItcmFkaXVzOjUwJTsgYmFja2dyb3VuZDojRkZGO31cclxuI25ldy1icmFuZC1wYWdlIC5uYnAtZGlzY2xhaW1lcntmb250LXNpemU6LjU2M2VtO31cclxuXHJcbi8qIFRJUkUgQlJBTkRTIFBBR0VTICovXHJcbiNkbm5fY3RyNzU5Ml9IdG1sTW9kdWxlX2xibENvbnRlbnQsICNkbm5fY3RyNzY1OV9Db250ZW50UGFuZXtmb250LXNpemU6MTI1JTt9XHJcbiNkbm5fY3RyNzU5Ml9IdG1sTW9kdWxlX2xibENvbnRlbnQgLnN1YnRpdGxle2ZvbnQtc2l6ZToxMjUlO31cclxuI3RpcmVicmFuZHMgI2luZm8gaW1nW3NyYyo9XCJsb2dvXCJde3dpZHRoOjUwJTsgbWF4LXdpZHRoOjE1MHB4OyBtYXJnaW4tcmlnaHQ6MiU7fVxyXG4jdGlyZWJyYW5kcyAjaW5mbyBpbWdbc3JjKj1cIm1pY2hlbGluLXByb21pc2UtcGxhbi1sb2dvLnBuZ1wiXXt3aWR0aDozMCU7IGhlaWdodDphdXRvO31cclxuI3RpcmVicmFuZHMgI2luZm8gaW1nW3NyYyo9XCIvbG9nb19uZXhlbi5naWZcIl17d2lkdGg6MzUlO31cclxuXHJcblxyXG4vKiBNSUNIRUxJTiBQQUdFUyAqL1xyXG4jbmV3LWJyYW5kLXBhZ2UubWljaGVsaW4tbGFuZGluZy1wYWdle31cclxuI25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAubmJwLXRpdGxle2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9taWNoZWxpbi1iYW5uZXItbGFyZ2UuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MjMwcHg7IHBhZGRpbmc6MTVweCAwIDAgNTBweDt9XHJcbiNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLnByb21pc2UtcGxhbi1hcnJvd3tiYWNrZ3JvdW5kOiNmZmVhMDA7IGNvbG9yOiMwMDA7IHBhZGRpbmc6MTBweCAyMHB4OyBjb2xvcjojMDAwOyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IHRleHQtZGVjb3JhdGlvbjpub25lOyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2luOjEwcHggMDsgcG9zaXRpb246cmVsYXRpdmU7fVxyXG4jbmV3LWJyYW5kLXBhZ2UubWljaGVsaW4tbGFuZGluZy1wYWdlIC5wcm9taXNlLXBsYW4tYXJyb3c6OmFmdGVye2NvbnRlbnQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9wcm9taXNlLXBsYW4tYXJyb3cucG5nKTsgcG9zaXRpb246YWJzb2x1dGU7IHJpZ2h0Oi0yMHB4OyB0b3A6MDsgfVxyXG4jbmV3LWJyYW5kLXBhZ2UubWljaGVsaW4tbGFuZGluZy1wYWdlIC5oZXJle2NvbG9yOiMwMDU3YTY7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcbiNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLm5icC1zdWJ0aXRsZXtiYWNrZ3JvdW5kOiMwMDU3YTY7fVxyXG5cclxuLyogQkZHT09EUklDSCBQQUdFUyAqL1xyXG4jbmV3LWJyYW5kLXBhZ2UuYmZnb29kcmljaC1sYW5kaW5nLXBhZ2V7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuYmZnb29kcmljaC1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvYmZnb29kcmljaC1iYW5uZXItbGFyZ2UuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MjMwcHg7IHBhZGRpbmc6N3B4IDAgMCAzMHB4O31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5zaG9wLXdpdGgtdXMgaDJ7bWFyZ2luLXRvcDo5cHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuYmZnb29kcmljaC1sYW5kaW5nLXBhZ2UgLmhlcmV7Zm9udC13ZWlnaHQ6NzAwO31cclxuI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5uYnAtc3VidGl0bGV7YmFja2dyb3VuZDojMDA0Nzg1O31cclxuXHJcbi8qIFVOSVJPWUFMIFBBR0VTICovXHJcbiNuZXctYnJhbmQtcGFnZS51bmlyb3lhbC1sYW5kaW5nLXBhZ2V7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5uYnAtdGl0bGV7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL3VuaXJveWFsLWJhbm5lci1sYXJnZS5qcGcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGhlaWdodDoyMzBweDsgcGFkZGluZzo3cHggMCAwIDMwcHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5zaG9wLXdpdGgtdXMgaDJ7bWFyZ2luLXRvcDo5cHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5oZXJle2ZvbnQtd2VpZ2h0OjcwMDt9XHJcbiNuZXctYnJhbmQtcGFnZS51bmlyb3lhbC1sYW5kaW5nLXBhZ2UgLm5icC1zdWJ0aXRsZXtiYWNrZ3JvdW5kOiMyYjJiMmI7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3N7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3MgaW1ne21hcmdpbjoxMHB4IGF1dG8gMCAhaW1wb3J0YW50OyBkaXNwbGF5OmJsb2NrOyBmbG9hdDpub25lICFpbXBvcnRhbnQ7fVxyXG4jbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3MgaDN7Zm9udC1zaXplOi44NzVlbTt9XHJcbiNuZXctYnJhbmQtcGFnZS51bmlyb3lhbC1sYW5kaW5nLXBhZ2UgLm5icC10aXJlZGV0YWlsc3t3aWR0aDo3NTBweDt9XHJcblxyXG4vKiBDT05USU5FTlRBTCBCUkFORCBQQUdFICovXHJcbiNuZXctYnJhbmQtcGFnZS5jb250aW5lbnRhbC1sYW5kaW5nLXBhZ2V7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5uYnAtdGl0bGV7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL2NvbnRpbmVudGFsLWJhbm5lci1sYXJnZS5qcGcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGhlaWdodDoyMzBweDsgcGFkZGluZzoxNXB4IDAgMCAzMHB4O31cclxuI25ldy1icmFuZC1wYWdlLmNvbnRpbmVudGFsLWxhbmRpbmctcGFnZSAuaGVyZXtmb250LXdlaWdodDo3MDA7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5uYnAtc3VidGl0bGV7YmFja2dyb3VuZDojNTk1OTU5O31cclxuXHJcbiNuZXctYnJhbmQtcGFnZS5jb250aW5lbnRhbC1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZSBoMnttaW4taGVpZ2h0OjQwcHg7fVxyXG5cclxuI25ldy1icmFuZC1wYWdlLmNvbnRpbmVudGFsLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvY29udGluZW50YWwtc2hvcC1mb3ItdGlyZXMtaGVyZS5wbmcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBjb2xvcjojMDAwOyB3aWR0aDo0MDdweDsgaGVpZ2h0OjY5cHg7IGZvbnQtc2l6ZTozNnB4OyBsaW5lLWhlaWdodDo2OXB4O31cclxuXHJcbiNuZXctYnJhbmQtcGFnZS5jb250aW5lbnRhbC1sYW5kaW5nLXBhZ2UgLm5icC1zcGVjcyAubmJwLXNwZWNzLXRhYntwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDotMTJweDsgdG9wOjMwcHg7IGRpc3BsYXk6bm9uZTt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb250aW5lbnRhbC1sYW5kaW5nLXBhZ2UgLnNtYWxsLXNob3AtYXJyb3d7ZGlzcGxheTppbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9jb250aW5lbnRhbC1zbWFsbC1zaG9wLWFycm93LnBuZykgbm8tcmVwZWF0IHRvcCByaWdodDsgd2lkdGg6MjcycHg7IGhlaWdodDo1MHB4OyBsaW5lLWhlaWdodDo1MHB4OyBwYWRkaW5nLWxlZnQ6MTJweDsgYm94LXNpemluZzpib3JkZXItYm94OyB0ZXh0LWRlY29yYXRpb246bm9uZTsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBmb250LXNpemU6MjBweDsgY29sb3I6IzAwMDsgdmVydGljYWwtYWxpZ246bWlkZGxlO31cclxuI25ldy1icmFuZC1wYWdlLmNvbnRpbmVudGFsLWxhbmRpbmctcGFnZSAubG9nby1hbmQtdGlyZXt3aWR0aDoxMTBweDsgZmxvYXQ6bGVmdDsgbWFyZ2luLXJpZ2h0OjE1cHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3MgaDN7dGV4dC10cmFuc2Zvcm06bm9uZTsgbWFyZ2luLWJvdHRvbTo1cHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5sb2dvLWFuZC10aXJlIGltZ3t3aWR0aDoxMDAlOyBoZWlnaHQ6YXV0bzsgbWFyZ2luLWJvdHRvbTo1cHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5uYnAtc3BlY3N7YmFja2dyb3VuZDojMDAwOyBjb2xvcjojRkZGO31cclxuXHJcblxyXG4vKiBDT09QRVIgQlJBTkQgUEFHRSAqL1xyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZXt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2Rpc3BsYXk6YmxvY2s7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9zaG9wLWZvci10aXJlcy1oZXJlLWNvb3Blci5wbmcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBjb2xvcjojMDAxZDYwOyB3aWR0aDo0MDdweDsgaGVpZ2h0OjY5cHg7IGZvbnQtc2l6ZToyLjI1ZW07IGxpbmUtaGVpZ2h0OjY5cHg7IGZsb2F0OmxlZnQ7IGNsZWFyOmxlZnQ7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnAtdGl0bGV7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL2Nvb3Blci1iYW5uZXItbGFyZ2UuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MjMwcHg7IHBhZGRpbmc6MTVweCAwIDAgNTBweDt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5zaG9wLXdpdGgtdXN7dGV4dC1hbGlnbjpyaWdodDt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5zaG9wLXdpdGgtdXMgaDJ7Zm9udC1mYW1pbHk6XCJBcmlhbCBOYXJyb3dcIiwgYXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxLjVlbTsgbWFyZ2luLXJpZ2h0OjEwcHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAuc2hvcC13aXRoLXVzIGltZ3ttYXJnaW4tdG9wOjIzcHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAucHJvbWlzZS1wbGFuLWFycm93OjphZnRlcntjb250ZW50OnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvcHJvbWlzZS1wbGFuLWFycm93LnBuZyk7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDotMjBweDsgdG9wOjA7IH1cclxuI25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLmhlcmV7Y29sb3I6IzAwNTdhNjsgZm9udC13ZWlnaHQ6NzAwO31cclxuI25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLm5icC1zdWJ0aXRsZXtiYWNrZ3JvdW5kOiMwMDFkNjA7IGZvbnQtZmFtaWx5OlwiQXJpYWwgTmFycm93XCIsIGFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDo3MDA7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubmJwLXNsb2dhbiBoM3t0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAuc21hbGwtc2hvcC1hcnJvd3t3aWR0aDozODJweDsgYmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL3NtYWxsLXNob3AtYXJyb3ctY29vcGVyLnBuZykgbm8tcmVwZWF0O31cclxuI25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgaDN7Zm9udC1mYW1pbHk6XCJBcmlhbCBOYXJyb3dcIiwgYXJpYWwsIHNhbnMtc2VyaWY7IGNvbG9yOiM1YzY2NmY7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC50eXBlcy1vZi1jb29wZXItdGlyZXN7ZmxvYXQ6bGVmdDsgbWFyZ2luLXRvcDo2MHB4ICFpbXBvcnRhbnQ7fVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAudG9jdC1pbWFnZXtmbG9hdDpsZWZ0O31cclxuI25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLmxlYXJuLW1vcmUtY29vcGVye3dpZHRoOjEwMCU7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9sZWFybi1tb3JlLWNvb3Blci5wbmcpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7IGRpc3BsYXk6YmxvY2s7IGhlaWdodDo1MHB4OyBtYXJnaW4tdG9wOjIwcHg7IHRleHQtZGVjb3JhdGlvbjpub25lOyBjb2xvcjojMDAwOyBwYWRkaW5nOjhweCA0MHB4IDhweCA4cHg7IGJveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5sZWFybi1tb3JlLWNvb3BlciAuc2hvcC1vbmxpbmV7ZmxvYXQ6bGVmdDsgZm9udC1zaXplOi43NWVtOyBtYXJnaW4tdG9wOjZweDt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5sZWFybi1tb3JlLWNvb3BlciAubGVhcm4tYWJvdXR7ZmxvYXQ6cmlnaHQ7IGxpbmUtaGVpZ2h0OjM0cHg7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgZm9udC1mYW1pbHk6XCJBcmlhbCBOYXJyb3dcIiwgYXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxLjVlbTt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW97ZmxvYXQ6bGVmdDsgd2lkdGg6MzAlOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW86bnRoLW9mLXR5cGUoMil7d2lkdGg6NDAlfVxyXG4jbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvOm50aC1vZi10eXBlKDQpLCAjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvOm50aC1vZi10eXBlKDUpe3dpZHRoOjUwJTsgbWFyZ2luLXRvcDoxMHB4O31cclxuI25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLm5idC12aWRlbyBoM3tmb250LXNpemU6MWVtO31cclxuXHJcblxyXG4vKiBNQVNURVJDUkFGVCBCUkFORCBQQUdFICovXHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2V7fVxyXG4jbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2Rpc3BsYXk6YmxvY2s7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9zaG9wLWZvci10aXJlcy1oZXJlLW1hc3RlcmNyYWZ0LnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGNvbG9yOiNhYTFkMjI7IHdpZHRoOjQwN3B4OyBoZWlnaHQ6NjlweDsgZm9udC1zaXplOjIuMjVlbTsgbGluZS1oZWlnaHQ6NjlweDsgZmxvYXQ6bGVmdDsgY2xlYXI6bGVmdDt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvbWFzdGVyY3JhZnQtYmFubmVyLWxhcmdlLmpwZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgaGVpZ2h0OjIzMHB4OyBwYWRkaW5nOjE1cHggMCAwIDUwcHg7fVxyXG4jbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5zaG9wLXdpdGgtdXN7dGV4dC1hbGlnbjpyaWdodDt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnNob3Atd2l0aC11cyBoMntmb250LWZhbWlseTpcIkFyaWFsIE5hcnJvd1wiLCBhcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOjEuNWVtOyBtYXJnaW4tcmlnaHQ6MTBweDt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnNob3Atd2l0aC11cyBpbWd7bWFyZ2luLXRvcDoxMnB4O31cclxuI25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAuaGVyZXtmb250LXdlaWdodDo3MDA7fVxyXG4jbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5uYnAtc3VidGl0bGV7YmFja2dyb3VuZDojYWExZDIyOyBmb250LWZhbWlseTpcIkFyaWFsIE5hcnJvd1wiLCBhcmlhbCwgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6NzAwO31cclxuI25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJwLXNsb2dhbiBoM3t0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fVxyXG4jbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5zbWFsbC1zaG9wLWFycm93e3dpZHRoOjQxMnB4OyBiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvc21hbGwtc2hvcC1hcnJvdy1tYXN0ZXJjcmFmdC5wbmcpIG5vLXJlcGVhdDt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgaDN7Zm9udC1mYW1pbHk6XCJBcmlhbCBOYXJyb3dcIiwgYXJpYWwsIHNhbnMtc2VyaWY7IGNvbG9yOiM1YzY2NmY7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnR5cGVzLW9mLW1hc3RlcmNyYWZ0LXRpcmVze2Zsb2F0OmxlZnQ7IG1hcmdpbi10b3A6NjBweCAhaW1wb3J0YW50O31cclxuI25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAudG9tdC1pbWFnZXtmbG9hdDpsZWZ0O31cclxuI25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubGVhcm4tbW9yZS1tYXN0ZXJjcmFmdHt3aWR0aDo1MTVweDsgYmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL2xlYXJuLW1vcmUtbWFzdGVyY3JhZnQucG5nKSBuby1yZXBlYXQgdG9wIHJpZ2h0OyBkaXNwbGF5OmJsb2NrOyBoZWlnaHQ6NTBweDsgbWFyZ2luLXRvcDoyMHB4OyB0ZXh0LWRlY29yYXRpb246bm9uZTsgY29sb3I6IzAwMDsgcGFkZGluZzowIDAgMCAyMHB4OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGxpbmUtaGVpZ2h0OjUwcHg7IGZvbnQtZmFtaWx5OlwiQXJpYWwgTmFycm93XCIsIGFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6MS41ZW07IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLm5idC12aWRlb3tmbG9hdDpsZWZ0OyB3aWR0aDozMCU7IHRleHQtYWxpZ246Y2VudGVyO31cclxuI25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvOm50aC1vZi10eXBlKDJuKXt3aWR0aDo0MCV9XHJcbiNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLm5idC12aWRlbyBoM3tmb250LXNpemU6MWVtO31cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoIDogNzY4cHgpIGFuZCAobWF4LWRldmljZS13aWR0aCA6IDk4MHB4KSwgKG1heC13aWR0aDogOTgwcHgpIHtcclxuXHJcblx0I2NydC1saXN0LnR3by1yb3cgbGksICNjcnQtbGlzdC50aHJlZS1yb3cgbGksICNjcnQtbGlzdC5mb3VyLXJvdyBsaSwgI2NydC1saXN0LmZpdmUtcm93IGxpIHtmbG9hdDpub25lOyB3aWR0aDphdXRvO31cclxuXHJcblxyXG5cdCNuZXctYnJhbmQtcGFnZSAuc2hvcC13aXRoLXVzIGgye2ZvbnQtc2l6ZToxLjVlbTt9XHJcblx0I25ldy1icmFuZC1wYWdlIC5zbWFsbC1zaG9wLWFycm93e2Rpc3BsYXk6YmxvY2s7IG1hcmdpbi1sZWZ0OjA7fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLXRpcmVkZXRhaWxze3BhZGRpbmc6MTJweDsgd2lkdGg6NTMlO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UgLm5icC1zcGVjcyBoMywgI25ldy1icmFuZC1wYWdlIGgze2ZvbnQtc2l6ZToxZW07fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLWJyYW5kc2xvZ2FuLCAjbmV3LWJyYW5kLXBhZ2UgLm5icC1rZXliZW5lZml0c3toZWlnaHQ6YXV0bzsgbWluLWhlaWdodDphdXRvOyBwYWRkaW5nOjA7IGZsb2F0Om5vbmU7IHdpZHRoOmF1dG87fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLWJyYW5kc2xvZ2Fue2JvcmRlcjpub25lOyBtYXJnaW4tYm90dG9tOjEwcHg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLWRpc2NsYWltZXJ7Zm9udC1zaXplOi43NWVtO31cclxuXHRcclxuXHQvKiBNSUNIRUxJTiBQQUdFUyAqL1xyXG5cdCNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZXtwYWRkaW5nOjE1cHggMCAwIDIwcHg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS51bmlyb3lhbC1sYW5kaW5nLXBhZ2UgLm5icC1zcGVjcywgI25ldy1icmFuZC1wYWdlLnVuaXJveWFsLWxhbmRpbmctcGFnZSAubmJwLXRpcmVkZXRhaWxze3dpZHRoOmF1dG87fVxyXG5cdFxyXG5cdC8qIENPT1BFUiBQQUdFUyAqL1xyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW8sICNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW86bGFzdC1vZi10eXBle2Zsb2F0Om5vbmU7IHdpZHRoOjQ1JTsgbWFyZ2luOjAgYXV0byAxMHB4O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAudG9jdC1pbWFnZXt3aWR0aDo1MCU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC50eXBlcy1vZi1jb29wZXItdGlyZXN7bWFyZ2luLXRvcDowICFpbXBvcnRhbnQ7fVxyXG5cdFxyXG5cdC8qIE1BU1RFUkNSQUZUIFBBR0VTICovXHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvLCAjbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5uYnQtdmlkZW86bnRoLW9mLXR5cGUoMm4pe2Zsb2F0Om5vbmU7IHdpZHRoOjgwJTsgbWFyZ2luOjAgYXV0byAxMHB4O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC50b210LWltYWdle3dpZHRoOjUwJTt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAudHlwZXMtb2YtbWFzdGVyY3JhZnQtdGlyZXN7bWFyZ2luLXRvcDowICFpbXBvcnRhbnQ7fVx0XHJcblx0XHJcbn0gXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoIDogNzY4cHgpIGFuZCAobWF4LWRldmljZS13aWR0aCA6IDk4MHB4KSwgKG1heC13aWR0aDogOTgwcHgpIGFuZCAobWluLXdpZHRoOjY0MHB4KXtcclxuXHQjbmV3LWJyYW5kLXBhZ2UgLnNob3Atd2l0aC11cyBpbWd7bWF4LWhlaWdodDo2MHB4ICFpbXBvcnRhbnQ7fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAuc2hvcC13aXRoLXVze21hcmdpbi1ib3R0b206NzVweDt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAuc2hvcC13aXRoLXVze21hcmdpbi1ib3R0b206NjVweDt9XHRcdFxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KXtcclxuXHQjbmV3LWJyYW5kLXBhZ2UgLm5icC1zcGVjcyBpbWd7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyBtYXJnaW46MCBhdXRvICFpbXBvcnRhbnQ7IGRpc3BsYXk6YmxvY2s7fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLXNwZWNzIGgze3RleHQtYWxpZ246Y2VudGVyO31cclxuXHQjbmV3LWJyYW5kLXBhZ2V7bWF4LXdpZHRoOjU5MHB4OyBtYXJnaW46MCBhdXRvO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UgLnNob3Atd2l0aC11c3ttYXJnaW4tYm90dG9tOjVweDsgbGluZS1oZWlnaHQ6bm9ybWFsO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UgLnNtYWxsLXNob3AtYXJyb3d7ZmxvYXQ6cmlnaHQ7IGNsZWFyOnJpZ2h0OyB3aWR0aDoyMDBweDsgbWFyZ2luLXRvcDoyMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCByaWdodDt9XHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZS1jb250YWluZXJ7ZGlzcGxheTpibG9jazt9XHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZWRldGFpbHN7d2lkdGg6YXV0bzsgZmxvYXQ6bm9uZTsgbWFyZ2luOjA7fVxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLXNwZWNze3dpZHRoOmF1dG87IGZsb2F0Om5vbmU7IG1heC13aWR0aDpub25lOyBvdmVyZmxvdzpoaWRkZW47IG1hcmdpbi1ib3R0b206MTBweDt9XHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGl0bGUgaDJ7aGVpZ2h0OjYwcHg7IHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmJsb2NrOyBtYXJnaW46MCAwIDVweCAhaW1wb3J0YW50O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UgLm5icC10aXRsZSBoMiAucmVzcG9uc2l2ZS10aXRsaW5ne3Bvc2l0aW9uOmFic29sdXRlOyB3aWR0aDoxMDAlOyB0b3A6NTAlOyAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt9XHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGl0bGUgaW1ne2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgY2xlYXI6Ym90aDsgbWFyZ2luLWJvdHRvbTo1cHg7IG1heC1oZWlnaHQ6NzBweCAhaW1wb3J0YW50OyB3aWR0aDphdXRvICFpbXBvcnRhbnQ7fVxyXG5cdFxyXG5cdC8qIE1JQ0hFTElOIFBBR0VTICovXHJcblx0I25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAubmJwLXRpdGxle2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9taWNoZWxpbi1iYW5uZXIuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MjMwcHg7IHBhZGRpbmc6MTVweCAxMHB4IDA7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZSBpbWd7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyBjbGVhcjpib3RoOyBtYXJnaW4tYm90dG9tOjEwcHg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5taWNoZWxpbi1sYW5kaW5nLXBhZ2UgLnByb21pc2UtcGxhbi1hcnJvd3tkaXNwbGF5OmJsb2NrOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcblx0I25ldy1icmFuZC1wYWdlIGltZ1tzcmMqPVwibWljaGVsaW4tdGlyZS1pbWFnZS5qcGdcIl17d2lkdGg6MjAwcHg7IGhlaWdodDphdXRvO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UgaW1nW3NyYyo9XCJtaWNoZWxpbi1wcm9taXNlLXBsYW4ucG5nXCJde3dpZHRoOjE1MHB4OyBoZWlnaHQ6YXV0bzsgbWFyZ2luLWJvdHRvbTozMHB4ICFpbXBvcnRhbnQ7fVxyXG5cdFxyXG5cdC8qIEJGR09PRFJJQ0ggUEFHRVMgKi9cclxuXHQjbmV3LWJyYW5kLXBhZ2UuYmZnb29kcmljaC1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvYmZnb29kcmljaC1iYW5uZXIuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MjMwcHg7IHBhZGRpbmc6MTVweCAxMHB4IDA7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5iZmdvb2RyaWNoLWxhbmRpbmctcGFnZSAubmJwLXRpdGxlIGgye21pbi1oZWlnaHQ6NDBweDt9XHJcblx0I25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5uYnAtdGl0bGUgaW1ne2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgY2xlYXI6Ym90aDsgbWFyZ2luLWJvdHRvbTo1cHg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5iZmdvb2RyaWNoLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvc2hvcC1mb3ItYmZnb29kcmljaC10aXJlcy1zbWFsbC5wbmcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBjb2xvcjojRkZGOyB3aWR0aDo0MDdweDsgaGVpZ2h0OjU1cHg7IGZvbnQtc2l6ZToyOHB4OyBsaW5lLWhlaWdodDo1NXB4O31cclxuXHJcblx0XHRcclxuXHQvKiBVTklST1lBTCBQQUdFUyAqL1xyXG5cdCNuZXctYnJhbmQtcGFnZS51bmlyb3lhbC1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9uZXctYnJhbmQtcGFnZXMvdW5pcm95YWwtYmFubmVyLmpwZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgaGVpZ2h0OjIzMHB4OyBwYWRkaW5nOjE1cHggMTBweCAwO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5uYnAtdGl0bGUgaDJ7bWluLWhlaWdodDo0MHB4O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL25ldy1icmFuZC1wYWdlcy9zaG9wLWZvci11bmlyb3lhbC10aXJlcy1zbWFsbC5wbmcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBjb2xvcjojRkZGOyB3aWR0aDo0MDdweDsgaGVpZ2h0OjU1cHg7IGZvbnQtc2l6ZToyOHB4OyBsaW5lLWhlaWdodDo1NXB4O31cclxuXHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGl0bGV7cG9zaXRpb246cmVsYXRpdmU7IH1cclxuXHQjbmV3LWJyYW5kLXBhZ2UgLnNob3AtZm9yLXRpcmVzLWhlcmV7cG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbTowOyBsZWZ0OjA7IHdpZHRoOjEwMCUgIWltcG9ydGFudDsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmctbGVmdDowO31cclxuXHJcblx0XHJcblx0I25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtiYWNrZ3JvdW5kOiNGRkVBMDB9XHJcblx0I25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2JhY2tncm91bmQ6IzAwNDc4NX1cclxuXHQjbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2JhY2tncm91bmQ6I0VFM0IzM31cclxuXHJcblx0I25ldy1icmFuZC1wYWdlLm1pY2hlbGluLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZSwgI25ldy1icmFuZC1wYWdlLmJmZ29vZHJpY2gtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJlLCAjbmV3LWJyYW5kLXBhZ2UudW5pcm95YWwtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2ZvbnQtc2l6ZToyMnB4fVxyXG5cdFxyXG5cdCNuZXctYnJhbmQtcGFnZSAubmJwLXRpcmVkZXRhaWxze3BhZGRpbmc6MTJweCAxMnB4IDMwcHh9XHJcblx0I25ldy1icmFuZC1wYWdlIC5uYnAtdGlyZWRldGFpbHMgYXtib3R0b206MTBweDt9XHJcblx0XHJcblx0LyogQ09OVElORU5UQUwgUEFHRVMgKi9cclxuXHQjbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5uYnAtdGl0bGV7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvbmV3LWJyYW5kLXBhZ2VzL2NvbnRpbmVudGFsLWJhbm5lci5qcGcpIG5vLXJlcGVhdCB0b3AgY2VudGVyOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGhlaWdodDoyMzBweDsgcGFkZGluZzoxNXB4IDEwcHggMDt9XHJcblx0I25ldy1icmFuZC1wYWdlLmNvbnRpbmVudGFsLWxhbmRpbmctcGFnZSAubmJwLXRpdGxlIGgye21pbi1oZWlnaHQ6NDBweDt9XHJcblx0I25ldy1icmFuZC1wYWdlLmNvbnRpbmVudGFsLWxhbmRpbmctcGFnZSAubmJwLXRpdGxlIGltZ3tmbG9hdDpub25lICFpbXBvcnRhbnQ7IGNsZWFyOmJvdGg7IG1hcmdpbi1ib3R0b206NXB4O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UuY29udGluZW50YWwtbGFuZGluZy1wYWdlIC5zaG9wLWZvci10aXJlcy1oZXJle2JhY2tncm91bmQ6I0RCREZFNzsgd2lkdGg6MTAwJTsgaGVpZ2h0OjU1cHg7IGZvbnQtc2l6ZToyOHB4OyBsaW5lLWhlaWdodDo1NXB4O31cclxuXHJcblx0LyogQ09PUEVSIFBBR0VTICovXHJcblx0I25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLm5icC10aXRsZSBpbWd7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyBjbGVhcjpib3RoOyBtYXJnaW4tYm90dG9tOjEwcHg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW8sICNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW86bGFzdC1vZi10eXBle3dpZHRoOjYwJTt9XHJcblx0I25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLnNob3Atd2l0aC11cyBoMntkaXNwbGF5Om5vbmU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5wcm9taXNlLXBsYW4tYXJyb3d7ZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW8sICNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5uYnQtdmlkZW86bGFzdC1vZi10eXBle2Zsb2F0Om5vbmU7IHdpZHRoOjYwJTsgbWFyZ2luOjAgYXV0byAxMHB4O31cclxuXHQjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtiYWNrZ3JvdW5kOiNDM0M1Qzg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5sZWFybi1tb3JlLWNvb3BlciAuc2hvcC1vbmxpbmV7ZGlzcGxheTpub25lO31cclxuXHQjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubGVhcm4tbW9yZS1jb29wZXIgLmxlYXJuLWFib3V0e2Zsb2F0Om5vbmU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC50b2N0LWltYWdle3dpZHRoOjEwMCU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC50eXBlcy1vZi1jb29wZXItdGlyZXN7bWFyZ2luLXRvcDoyMHB4ICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxLjVlbTt9XHJcblx0I25ldy1icmFuZC1wYWdlLmNvb3Blci1sYW5kaW5nLXBhZ2UgLmxlYXJuLW1vcmUtY29vcGVye2JhY2tncm91bmQ6I0MzQzVDODsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmc6MiU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5jb29wZXItbGFuZGluZy1wYWdlIC5zbWFsbC1zaG9wLWFycm93LCAjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubGVhcm4tbW9yZS1jb29wZXJ7d2lkdGg6MTAwJTsgYmFja2dyb3VuZDojQzNDNUM4OyBwYWRkaW5nOjIwcHg7IGxpbmUtaGVpZ2h0Om5vcm1hbDsgaGVpZ2h0OmF1dG87fVxyXG5cdFxyXG5cdFxyXG5cdC8qIE1BU1RFUkNSQUZUIFBBR0VTICovXHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJwLXRpdGxlIGltZ3tmbG9hdDpub25lICFpbXBvcnRhbnQ7IGNsZWFyOmJvdGg7IG1hcmdpbi1ib3R0b206MTBweDt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvLCAjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvOmxhc3Qtb2YtdHlwZXt3aWR0aDo2MCU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnNob3Atd2l0aC11cyBoMntkaXNwbGF5Om5vbmU7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnByb21pc2UtcGxhbi1hcnJvd3tkaXNwbGF5OmJsb2NrOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvLCAjbmV3LWJyYW5kLXBhZ2UuY29vcGVyLWxhbmRpbmctcGFnZSAubmJ0LXZpZGVvOmxhc3Qtb2YtdHlwZXtmbG9hdDpub25lOyB3aWR0aDo2MCU7IG1hcmdpbjowIGF1dG8gMTBweDt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAuc2hvcC1mb3ItdGlyZXMtaGVyZXtiYWNrZ3JvdW5kOiNDM0M1Qzg7fVxyXG5cdCNuZXctYnJhbmQtcGFnZS5tYXN0ZXJjcmFmdC1sYW5kaW5nLXBhZ2UgLnRvbXQtaW1hZ2V7d2lkdGg6MTAwJTt9XHJcblx0I25ldy1icmFuZC1wYWdlLm1hc3RlcmNyYWZ0LWxhbmRpbmctcGFnZSAudHlwZXMtb2YtbWFzdGVyY3JhZnQtdGlyZXN7bWFyZ2luLXRvcDoyMHB4ICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxLjVlbTt9XHRcclxuXHQjbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5zbWFsbC1zaG9wLWFycm93LCAjbmV3LWJyYW5kLXBhZ2UubWFzdGVyY3JhZnQtbGFuZGluZy1wYWdlIC5sZWFybi1tb3JlLW1hc3RlcmNyYWZ0e3dpZHRoOjEwMCU7IGJhY2tncm91bmQ6I0MzQzVDODsgcGFkZGluZzoyMHB4OyBsaW5lLWhlaWdodDpub3JtYWw7IGhlaWdodDphdXRvO31cclxuXHRcdFxyXG5cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIE1pY2hlbGluIFByb21pc2UgUGxhbiAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuI21pY2hlbGluLXByb21pc2UtcGxhbiB1bCB7IG1hcmdpbi1sZWZ0OiA1OHB4OyBtYXJnaW4tdG9wOiAtMS4xMmVtOyBtYXJnaW4tYm90dG9tOiAxLjVlbTsgcGFkZGluZy1sZWZ0OiAwcHg7IGRpc3BsYXk6IGJsb2NrOyBsaXN0LXN0eWxlOiBub25lOyB9XHJcbiNtaWNoZWxpbi1wcm9taXNlLXBsYW4gbGkgeyBkaXNwbGF5OiBsaXN0LWl0ZW07IG1hcmdpbi1ib3R0b206IDAuMjVlbTsgbGlzdC1zdHlsZTogbm9uZTsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxyXG4ubWljaGVsaW4tcHJvbWlzZS1wbGFuMSB7IG1hcmdpbi1ib3R0b206MCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiB1cmwoLy9hLm5kcnYuaW4vaW1nL3BhZ2VzL21pY2hlbGluLXByb21pc2UtcGxhbi9taWNoZWxpbi1wcm9taXNlLXBsYW4taWNvbi0xLnBuZykgbm8tcmVwZWF0OyB0ZXh0LWluZGVudDogNThweDsgbGluZS1oZWlnaHQ6IDQ4cHggIWltcG9ydGFudDsgaGVpZ2h0OiA0OHB4OyB9XHJcbi5taWNoZWxpbi1wcm9taXNlLXBsYW4yIHsgbWFyZ2luLWJvdHRvbTowICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6IHVybCgvL2EubmRydi5pbi9pbWcvcGFnZXMvbWljaGVsaW4tcHJvbWlzZS1wbGFuL21pY2hlbGluLXByb21pc2UtcGxhbi1pY29uLTIucG5nKSBuby1yZXBlYXQ7IHRleHQtaW5kZW50OiA1OHB4OyBsaW5lLWhlaWdodDogNDhweCAhaW1wb3J0YW50OyBoZWlnaHQ6IDQ4cHg7IH1cclxuLm1pY2hlbGluLXByb21pc2UtcGxhbjMgeyBtYXJnaW4tYm90dG9tOjAgIWltcG9ydGFudDsgYmFja2dyb3VuZDogdXJsKC8vYS5uZHJ2LmluL2ltZy9wYWdlcy9taWNoZWxpbi1wcm9taXNlLXBsYW4vbWljaGVsaW4tcHJvbWlzZS1wbGFuLWljb24tMy5wbmcpIG5vLXJlcGVhdDsgdGV4dC1pbmRlbnQ6IDU4cHg7IGxpbmUtaGVpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IGhlaWdodDogNDhweDsgfVxyXG4ubWljaGVsaW4tcHJvbWlzZS1wbGFuNCB7IG1hcmdpbi1ib3R0b206MCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiB1cmwoLy9hLm5kcnYuaW4vaW1nL3BhZ2VzL21pY2hlbGluLXByb21pc2UtcGxhbi9taWNoZWxpbi1wcm9taXNlLXBsYW4taWNvbi00LnBuZykgbm8tcmVwZWF0OyBsaW5lLWhlaWdodDogNDhweCAhaW1wb3J0YW50OyB0ZXh0LWluZGVudDogNThweDsgaGVpZ2h0OiA0OHB4OyB9XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBDdXN0b20gUGFnZSBTdHlsZXMgICAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbmRpdltpZCo9XCJIdG1sTW9kdWxlX2xibENvbnRlbnRcIl0gLmNvbnRlbnQtc2VjdGlvbntwYWRkaW5nOjIlIDA7fVxyXG5kaXZbaWQqPVwiSHRtbE1vZHVsZV9sYmxDb250ZW50XCJdIC5jb250ZW50LXNlY3Rpb246Zmlyc3Qtb2YtdHlwZXtwYWRkaW5nLXRvcDowO31cclxuZGl2W2lkKj1cIkh0bWxNb2R1bGVfbGJsQ29udGVudFwiXSAuY29udGVudC1zZWN0aW9uOmxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbTowO31cclxuZGl2W2lkKj1cIkh0bWxNb2R1bGVfbGJsQ29udGVudFwiXSAuY29udGVudC1zZWN0aW9uOm50aC1vZi10eXBlKGV2ZW4pOjpiZWZvcmV7YmFja2dyb3VuZDojMDAwOyBvcGFjaXR5Oi4xNTsgY29udGVudDpcIlwiOyB3aWR0aDo1MDAlOyBoZWlnaHQ6MTAwJTsgcG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6LTE7IHRvcDowOyBsZWZ0Oi0yMDAlOyBvdmVyZmxvdzogaGlkZGVuO31cclxuZGl2W2lkKj1cIkh0bWxNb2R1bGVfbGJsQ29udGVudFwiXSAuY29udGVudC1zZWN0aW9uOm50aC1vZi10eXBlKGV2ZW4pe3otaW5kZXg6MTsgcG9zaXRpb246cmVsYXRpdmU7IHBhZGRpbmc6MiUgMDt9IFxyXG5kaXZbaWQqPVwiSHRtbE1vZHVsZV9sYmxDb250ZW50XCJdIC5jb250ZW50LXNlY3Rpb246bnRoLW9mLXR5cGUoZXZlbikgaW1nOmZpcnN0LW9mLXR5cGV7ZmxvYXQ6bGVmdDsgbWFyZ2luOjAgMiUgMiUgMDt9XHJcbmRpdltpZCo9XCJIdG1sTW9kdWxlX2xibENvbnRlbnRcIl0gLmNvbnRlbnQtc2VjdGlvbjpudGgtb2YtdHlwZShvZGQpIGltZzpmaXJzdC1vZi10eXBle2Zsb2F0OnJpZ2h0OyBtYXJnaW46MCAwIDIlIDIlO31cclxuZGl2W2lkKj1cIkh0bWxNb2R1bGVfbGJsQ29udGVudFwiXSAuY29udGVudC1zZWN0aW9uOm50aC1vZi10eXBlKGV2ZW4pIC5uZGN1c3RvbWJ1dHRvbmZvcm1hdCBpbWd7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyBtYXJnaW46MCA1cHggMCAwICFpbXBvcnRhbnQ7fVxyXG5kaXZbaWQqPVwiSHRtbE1vZHVsZV9sYmxDb250ZW50XCJdIC5jb250ZW50LXNlY3Rpb246bnRoLW9mLXR5cGUob2RkKSAubmRjdXN0b21idXR0b25mb3JtYXQgaW1ne2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgbWFyZ2luOjAgNXB4IDAgMCAhaW1wb3J0YW50O31cclxuZGl2W2lkKj1cIkh0bWxNb2R1bGVfbGJsQ29udGVudFwiXSAuY29udGVudC1zZWN0aW9uOmFmdGVye2NsZWFyOmJvdGg7IGNvbnRlbnQ6XCJcIjsgZGlzcGxheTpibG9jazt9XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcclxuXHRkaXZbaWQqPVwiSHRtbE1vZHVsZV9sYmxDb250ZW50XCJdIC5jb250ZW50LXNlY3Rpb246bnRoLW9mLXR5cGUoZXZlbikgOm5vdCgubmRjdXN0b21idXR0b25mb3JtYXQpIGltZzpmaXJzdC1vZi10eXBle2Zsb2F0Om5vbmU7IG1hcmdpbjoyJSBhdXRvIDIlOyBkaXNwbGF5OmJsb2NrO31cclxuXHRkaXZbaWQqPVwiSHRtbE1vZHVsZV9sYmxDb250ZW50XCJdIC5jb250ZW50LXNlY3Rpb246bnRoLW9mLXR5cGUob2RkKSA6bm90KC5uZGN1c3RvbWJ1dHRvbmZvcm1hdCkgaW1nOmZpcnN0LW9mLXR5cGV7ZmxvYXQ6bm9uZTsgbWFyZ2luOjIlIGF1dG8gMiU7IGRpc3BsYXk6YmxvY2s7fVxyXG5cdGRpdltpZCo9XCJIdG1sTW9kdWxlX2xibENvbnRlbnRcIl0gLmNvbnRlbnQtc2VjdGlvbiAubmRjdXN0b21idXR0b25mb3JtYXR7Y2xlYXI6Ym90aDt9XHJcbn1cclxuXHJcbi8qIENSVCBTVFlMRVMgXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uY3J0LXJvdW5kZWR7LW1vei1ib3JkZXItcmFkaXVzOjUwJTsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjUwJTsgYm9yZGVyLXJhZGl1czo1MCU7fVxyXG4jY3J0LWxpc3QudHdvLXJvdyBsaSB7d2lkdGg6NDUlOyBmbG9hdDpsZWZ0OyBtYXJnaW4tcmlnaHQ6MiV9XHJcbiNjcnQtbGlzdC50aHJlZS1yb3cgbGkge3dpZHRoOjMxJTsgZmxvYXQ6bGVmdDsgbWFyZ2luLXJpZ2h0OjIlO31cclxuI2NydC1saXN0LmZvdXItcm93IGxpIHt3aWR0aDoyMyU7IGZsb2F0OmxlZnQ7IG1hcmdpbi1yaWdodDoyJTt9XHJcbiNjcnQtbGlzdC5maXZlLXJvdyBsaSB7d2lkdGg6MTglOyBmbG9hdDpsZWZ0OyBtYXJnaW4tcmlnaHQ6MiU7fVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgIENvbnRyb2wgUGFuZWwgJiBBZG1pbiBCYXIgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuI3RhYi1pZHtjbGVhcjpsZWZ0O31cclxuI3RhYi1pZCwgI3BvcnRhbC1ndWlke2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBmbG9hdDpyaWdodDsgZm9udC13ZWlnaHQ6Ym9sZDsgbGluZS1oZWlnaHQ6MzBweDsgbWFyZ2luOjAgMTBweDt9XHJcbiNhZG1pbi1iYXIgI3BvcnRhbC1pZHtkaXNwbGF5OmlubGluZS1ibG9jazsgZmxvYXQ6cmlnaHQ7IGxpbmUtaGVpZ2h0OjMwcHg7IG1hcmdpbjowICFpbXBvcnRhbnQ7fVxyXG4jYWRtaW5MaW5rLCAjaG9zdExpbmt7ZGlzcGxheTpub25lO31cclxuLkNvbnRyb2xQYW5lbCB7d2lkdGg6OTYwcHg7IG1hcmdpbjo0MHB4IGF1dG8gMTBweCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiNGRkZGRkY7fVxyXG5cclxuLyogU0hBUkVEIE1PRFVMRSBBRE1JTiBTVFlMRVNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5uZEFkbWluV3JhcHBlciB7fVxyXG4ubmRBZG1pbldyYXBwZXIgLm5kTWFuTWVudSwgLm5kQWRtaW5XcmFwcGVyIC5uZE1hblBhbmUsIC5uZEFkbWluV3JhcHBlciAubWFuLXJvdyB7ZGlzcGxheTpibG9jazsgb3ZlcmZsb3c6aGlkZGVuO31cclxuXHJcbi5uZEFkbWluV3JhcHBlciAubmRNYW5NZW51IHVsLCAubmRBZG1pbldyYXBwZXIgLm5kTWFuTWVudSB1bCB7bGlzdC1zdHlsZTpub25lIG91dHNpZGUgbm9uZSAhaW1wb3J0YW50OyBtYXJnaW46MCAhaW1wb3J0YW50O31cclxuLm5kQWRtaW5XcmFwcGVyIC5uZE1hbk1lbnUgbGkge2JhY2tncm91bmQ6I0NDQzsgbWFyZ2luOjNweDsgcGFkZGluZzozcHg7IGJvcmRlcjoycHggc29saWQgIzAwMDsgZGlzcGxheTpibG9jayAhaW1wb3J0YW50OyBmbG9hdDpsZWZ0ICFpbXBvcnRhbnQ7IC1tb3otYm9yZGVyLXJhZGl1czo1cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHg7IGJvcmRlci1yYWRpdXM6NXB4OyAtbW96LWJveC1zaGFkb3c6IDAgMCAzcHggI0ZGRjsgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgNXB4ICNGRkY7IGJveC1zaGFkb3c6IDAgMCA1cHggI0ZGRjt9XHJcbi5uZEFkbWluV3JhcHBlciAubmRNYW5NZW51IGxpIGEge2NvbG9yOiMwMEY7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcblxyXG4ubmRBZG1pbldyYXBwZXIgLm5kTWFuUGFuZSB7cGFkZGluZy10b3A6M3B4OyBib3JkZXItdG9wOjNweCBncm9vdmUgIzY2Njt9XHJcblxyXG4ubmRBZG1pbldyYXBwZXIgLm1hbi1sYmwge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyB3aWR0aDoxMDBweDt9XHJcbi5uZEFkbWluV3JhcHBlciAubWFuLXR4dCwgLm5kQWRtaW5XcmFwcGVyIC5tYW4tZGRsIHt3aWR0aDo0MDBweDt9XHJcbi5uZEFkbWluV3JhcHBlciAubWFuLWJ0biB7YmFja2dyb3VuZDojQzAwOyBjb2xvcjojRkYwOyBmb250LXdlaWdodDo3MDA7IHBhZGRpbmc6M3B4OyBib3JkZXI6MnB4IHNvbGlkICMwMDA7IGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDsgZmxvYXQ6bGVmdCAhaW1wb3J0YW50OyAtbW96LWJvcmRlci1yYWRpdXM6NXB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6NXB4OyBib3JkZXItcmFkaXVzOjVweDsgLW1vei1ib3gtc2hhZG93OiAwIDAgNXB4ICNGRkY7IC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDVweCAjRkZGOyBib3gtc2hhZG93OiAwIDAgNXB4ICNGRkY7fVxyXG4ubmRBZG1pbldyYXBwZXIgLm1hbi1tc2cge2JhY2tncm91bmQ6IzMzMzsgY29sb3I6I0YwMDsgZm9udC1zaXplOjE0cHg7IGZvbnQtd2VpZ2h0OjcwMDsgbGluZS1oZWlnaHQ6MjRweDt9XHJcblxyXG4vKiBGT1IgQURNSU4gUEFORUwgKEFETUlOIEJBUikgKi9cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjE0MDBweCl7XHJcblx0I2FkbWlucGFuZWx7Zm9udC1zaXplOjE2cHggIWltcG9ydGFudDt9XHJcblx0I3NpdGUtdmFyc3tkaXNwbGF5Om5vbmU7fVxyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgICAgIENvb3BlciBSZXZpZXdzICAgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4vKiBDT09QRVIgUkVWSUVXUyBURU1QICovXHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlld3twYWRkaW5nLWJvdHRvbToxMHB4OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjQ0NDOyBtYXJnaW4tYm90dG9tOjEwcHg7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXc6bGFzdC1vZi10eXBle2JvcmRlci1ib3R0b206bm9uZTsgbWFyZ2luLWJvdHRvbTowO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5zdGFyc3tkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyB3aWR0aDoxMjVweDsgaGVpZ2h0OjIycHg7IGJhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2Nvb3Blci1yZXZpZXdzL3Jldmlldy1zdGFycy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5zdGFycy5vbmUtb2YtZml2ZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMDBweCBjZW50ZXI7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnN0YXJzLnR3by1vZi1maXZle2JhY2tncm91bmQtcG9zaXRpb246LTc1cHggY2VudGVyO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5zdGFycy50aHJlZS1vZi1maXZle2JhY2tncm91bmQtcG9zaXRpb246LTUwcHggY2VudGVyO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5zdGFycy5mb3VyLW9mLWZpdmV7YmFja2dyb3VuZC1wb3NpdGlvbjotMjVweCBjZW50ZXI7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnN0YXJzLmZpdmUtb2YtZml2ZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgbGVmdDt9XHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlldyAuZGF0ZXtmb250LXNpemU6OTUlOyBtYXJnaW4tYm90dG9tOjEwcHg7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnJldmlldy1hdXRob3J7ZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgbGluZS1oZWlnaHQ6MjJweDsgbWFyZ2luLWxlZnQ6MTBweDt9XHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlldyAuc3RhcnMgaW1ne2Zsb2F0OmxlZnQ7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnJlY29tbWVuZHttYXJnaW46MTBweCAwIDIwcHg7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgaDN7bWFyZ2luOjEwcHggMDt9XHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlldyAucmF0aW5nc3t0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnJhdGluZ3MgbGl7d2lkdGg6MjAlOyBtYXJnaW4tcmlnaHQ6OCU7IGZsb2F0OmxlZnQ7IGxpc3Qtc3R5bGU6bm9uZTsgbWFyZ2luLWJvdHRvbToxMHB4O31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5yYXRpbmdzIC5yYXRpbmctc2NhbGV7aGVpZ2h0OjE2cHg7IC1tb3otYm9yZGVyLXJhZGl1czo4cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czo4cHg7IGJvcmRlci1yYWRpdXM6OHB4OyBtYXJnaW4tdG9wOjVweDsgb3ZlcmZsb3c6aGlkZGVuOyBwb3NpdGlvbjpyZWxhdGl2ZTsgd2lkdGg6ODAlO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5yYXRpbmdzIC5yYXRpbmctc2NhbGU6OmFmdGVye2JhY2tncm91bmQ6I0NDQ0NDQzsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyByaWdodDowOyBoZWlnaHQ6MTAwJTsgZGlzcGxheTpibG9jazsgY29udGVudDpcIlwiO31cclxuI2Nvb3Blci1yZXZpZXdzIC5jb29wZXItcmV2aWV3IC5yYXRpbmdzIC5yYXRpbmctc2NhbGUub25lLW9mLWZpdmU6OmFmdGVye3dpZHRoOjgwJTt9XHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlldyAucmF0aW5ncyAucmF0aW5nLXNjYWxlLnR3by1vZi1maXZlOjphZnRlcnt3aWR0aDo2MCU7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnJhdGluZ3MgLnJhdGluZy1zY2FsZS50aHJlZS1vZi1maXZlOjphZnRlcnt3aWR0aDo0MCU7fVxyXG4jY29vcGVyLXJldmlld3MgLmNvb3Blci1yZXZpZXcgLnJhdGluZ3MgLnJhdGluZy1zY2FsZS5mb3VyLW9mLWZpdmU6OmFmdGVye3dpZHRoOjIwJTt9XHJcbiNjb29wZXItcmV2aWV3cyAuY29vcGVyLXJldmlldyAucmF0aW5ncyAucmF0aW5nLXNjYWxlLmZpdmUtb2YtZml2ZTo6YWZ0ZXJ7d2lkdGg6MDt9XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgQmVzdCBPbmUgRXhwZXJ0cyBQYW5lbCBTdHlsZXMgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4uYXNrLWV4cGVydHMtY29udGFpbmVye3dpZHRoOjMyMHB4OyBwYWRkaW5nOjEwcHg7IGJhY2tncm91bmQ6I0ZGRjsgYm9yZGVyOjFweCBzb2xpZCAjQkJCO31cclxuLmFzay1leHBlcnRze2ZvbnQtc2l6ZToyNHB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDo3MDA7IG1hcmdpbjowIDAgMTBweDt9XHJcbi5lLXBhbmVsaXN0e21hcmdpbi1ib3R0b206MTBweDt9XHJcbi5lLXBhbmVsaXN0IGltZ3tmbG9hdDpsZWZ0OyBtYXJnaW46MCA1cHggMCAwO31cclxuLmUtcGFuZWxpc3QgcHtmbG9hdDpyaWdodDsgd2lkdGg6NTAlOyBwYWRkaW5nLXRvcDoxMHB4O31cclxuXHJcbiNCZXN0T25lRXhwZXJ0UGFuZWxfQ29udGVudHMgI2FydGljbGV7aGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgbWluLWhlaWdodDoyMHB4ICFpbXBvcnRhbnQ7fVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgQ3VzdG9tIFBhZ2UgQmFubmVyICAgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4jY3Bie3Bvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4OjE7IGhlaWdodDoxMDBweDsgbWFyZ2luLXRvcDotMSU7IG91dGxpbmU6MnB4IHNvbGlkICMwMDA7IG91dGxpbmUtb2Zmc2V0Oi0ycHg7fVxyXG4jY3BiICsgLm9wZW5pbmctYmFubmVye21hcmdpbjowO31cclxuI2NwYiBpbWd7d2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87fVxyXG4jY3BiLmNwYi1jYXItYXVkaW97YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvY3VzdG9tLXBhZ2UtYmFubmVycy9jYXItc3RlcmVvLTk4MC5wbmcpIG5vLXJlcGVhdCB0b3AgbGVmdDt9XHJcbiNjcGIuY3BiLWh5YnJpZC1zZXJ2aWNle2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvaHlicmlkLXNlcnZpY2UtOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O31cclxuI2NwYi5jcGItY29tbS1hbGlnbm1lbnR7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvY3VzdG9tLXBhZ2UtYmFubmVycy9jb21tZXJjaWFsLWFsaWdubWVudC05ODAucG5nKSBuby1yZXBlYXQgdG9wIGxlZnQ7fVxyXG4jY3BiLmNwYi1saWZ0LWtpdHN7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvY3VzdG9tLXBhZ2UtYmFubmVycy9saWZ0LWtpdHMtOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O31cclxuI2NwYi5jcGItdG93aW5ne2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvdG93aW5nLWNvbnZlbnRpb25hbC05ODAucG5nKSBuby1yZXBlYXQgdG9wIGxlZnQ7fVxyXG4jY3BiLmNwYi10cnVjay1hY2Nlc3Nvcmllc3tiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9jdXN0b20tcGFnZS1iYW5uZXJzL3RydWNrLWFjY2Vzc29yaWVzLTk4MC5wbmcpIG5vLXJlcGVhdCB0b3AgbGVmdDt9XHJcbiNjcGIuY3BiLTI0LWhvdXItdG93aW5ne2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvMjQtaG91ci10b3dpbmctOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O31cclxuI2NwYi5jcGItd2hlZWwtYWxpZ25tZW50e2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvYWxpZ25tZW50LTk4MC5wbmcpIG5vLXJlcGVhdCB0b3AgbGVmdDt9IC8qIElOQ09NUExFVEUgKi9cclxuI2NwYi5jcGItcmV0cmVhZGluZ3tiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9jdXN0b20tcGFnZS1iYW5uZXJzL3JldHJlYWRpbmcucG5nKSBuby1yZXBlYXQgdG9wIGxlZnQ7fVxyXG4jY3BiLmNwYi1yZW1vdGUtc3RhcnRlcnN7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvY3VzdG9tLXBhZ2UtYmFubmVycy9yZW1vdGUtc3RhcnQtOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O30gXHJcbiNjcGIuY3BiLWZsZWV0LXNlcnZpY2Vze2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvZmxlZXRzZXJ2aWNlLTk4MC5wbmcpIG5vLXJlcGVhdCB0b3AgbGVmdDt9XHJcbiNjcGIuY3BiLTI0LWhvdXItcm9hZHNpZGUtYXNzaXN0YW5jZXtiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9jdXN0b20tcGFnZS1iYW5uZXJzL3JvYWRzaWRlLWFzc2lzdGFuY2UtOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O31cclxuI2NwYi5jcGItYnJha2UtcmVwYWlye2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvYWxpZ25tZW50LTk4MC5wbmcpIG5vLXJlcGVhdCB0b3AgbGVmdDt9XHJcbiNjcGIuY3BiLXdpbnRlci10aXJlc3tiYWNrZ3JvdW5kOnVybCgvL2EubmQtY2RuLnVzL2ltZy9jdXN0b20tcGFnZS1iYW5uZXJzL3dpbnRlci10aXJlcy05ODAucG5nKSBuby1yZXBlYXQgdG9wIGxlZnQ7fVxyXG4jY3BiLmNwYi11c2VkLXRpcmVze2JhY2tncm91bmQ6dXJsKC8vYS5uZC1jZG4udXMvaW1nL2N1c3RvbS1wYWdlLWJhbm5lcnMvdXNlZC10aXJlcy05ODAucG5nKSBuby1yZXBlYXQgdG9wIGxlZnQ7fVxyXG4jY3BiLmNwYi1icmFrZS1yZXBhaXJ7YmFja2dyb3VuZDp1cmwoLy9hLm5kLWNkbi51cy9pbWcvY3VzdG9tLXBhZ2UtYmFubmVycy9hbGlnbm1lbnQtOTgwLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0O31cclxuXHJcbiNjcGIgLmNwYi1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjMwJTsgdG9wOjUwJTsgLW1vei10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IHBhZGRpbmc6MiU7IGNvbG9yOiNGRkY7IC1tb3otYm9yZGVyLXJhZGl1czo2cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHg7IGJvcmRlci1yYWRpdXM6NnB4OyBmb250LXNpemU6MWVtOyBmb250LXdlaWdodDo3MDA7IC1tb3otYm94LXNoYWRvdzoycHggMnB4IDJweCAjMDAwOyAtd2Via2l0LWJveC1zaGFkb3c6MnB4IDJweCAycHggIzAwMDsgYm94LXNoYWRvdzoycHggMnB4IDJweCAjMDAwOyB0ZXh0LXNoYWRvdzoycHggMnB4IDJweCAjMDAwOyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IHdpZHRoOjYzJTsgbGluZS1oZWlnaHQ6bm9ybWFsO31cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBEZW1hbmQgRm9yY2UgUmV2aWV3cyAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbi5kM2NwX3Jldmlld19tYWlue3dpZHRoOjEwMCUgIWltcG9ydGFudDsgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O31cclxuI0QzY3BXaWRnZXR7d2lkdGg6MTAwJSAhaW1wb3J0YW50O31cclxuLmQzY3BfcmV2aWV3X29yZGVye21hcmdpbjozJSAwICFpbXBvcnRhbnQ7IHBhZGRpbmc6MCAyJSAhaW1wb3J0YW50O31cclxuLmQzY3BfZmVhdHVyZV93cmFwe21heC13aWR0aDo1NzBweCAhaW1wb3J0YW50OyB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7fVxyXG4uZDNjcF9yZXZpZXdfYm94e292ZXJmbG93OnZpc2libGUgIWltcG9ydGFudDt9XHJcbiNEM2NwV2lkZ2V0IGhye21hcmdpbjoyJSAwO31cclxuLmQzY3BfcmV2aWV3X21haW57bWFyZ2luLWxlZnQ6MiU7IHdpZHRoOjkzJSAhaW1wb3J0YW50O31cclxuLmQzY3BfcmV2aWV3X3BpY3ttYXJnaW4tcmlnaHQ6MTBweDt9XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xyXG4gICAgLmQzY3BfcmV2aWV3X3BpY3t3aWR0aDoxMyUgIWltcG9ydGFudDt9XHJcbiAgICAuZDNjcF9mZWF0dXJlX3dyYXB7cGFkZGluZzoyJSAhaW1wb3J0YW50OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7fVxyXG4gICAgLmQzY3BfcmV2aWV3X3NlYWxfd3JhcHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9XHJcbiAgICAuZDNjcF9pdGVtaXplZF9ib3h7ZmxvYXQ6bGVmdCAhaW1wb3J0YW50O31cclxuICAgIC5kM2NwX2ZlYXR1cmVfd3JhcCAuZDNjcF9yZXZpZXdfYm94e2Rpc3BsYXk6bm9uZTt9XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIE5ldCBEcml2ZW4gQWRtaW4gTWVudSAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuI2NvbnRlbnRtYWluIHVsOm5vdCguZG5uQWN0aW9uTWVudUJvZHkpOm5vdCguaWNmX25hdi1pYmxvY2spLCAjY29udGVudG1haW4gb2w6bm90KC5kbm5BY3Rpb25NZW51Qm9keSl7bWFyZ2luOiAwIDAgMTBweCAzNXB4OyBwYWRkaW5nLWxlZnQ6IDBweDsgZGlzcGxheTogYmxvY2s7IHVuaWNvZGUtYmlkaTogZW1iZWQ7IGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZSBub25lO31cclxuI2NvbnRlbnRtYWluICNzbGlkZXIgdWx7bWFyZ2luOjA7fVxyXG4jY29udGVudG1haW4gZGl2W2lkKj1cIkh0bWxNb2R1bGVcIl0gbGkge2Rpc3BsYXk6IGxpc3QtaXRlbTsgbWFyZ2luLWJvdHRvbTogMTBweDsgbGlzdC1zdHlsZTpkaXNjOyBsaXN0LXN0eWxlLXBvc2l0aW9uOm91dHNpZGU7IGxpbmUtaGVpZ2h0OiBub3JtYWw7fVxyXG4jY29udGVudG1haW4gZGl2W2lkKj1cIkh0bWxNb2R1bGVcIl0gdWwubWFzdGVyLWxpc3QgbGl7bWFyZ2luLWxlZnQ6MDt9XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpe1xyXG5cdCNjb250ZW50bWFpbiB1bDpub3QoLmRubkFjdGlvbk1lbnVCb2R5KSwgI2NvbnRlbnRtYWluIG9sOm5vdCguZG5uQWN0aW9uTWVudUJvZHkpe21hcmdpbjowIDAgMSUgMiV9XHJcblx0I2NvbnRlbnRtYWluIGRpdltzdHlsZSo9XCJmbG9hdDpsZWZ0XCJde2Zsb2F0Om5vbmUgIWltcG9ydGFudDt9XHJcbn1cclxuXHJcbiNjb250ZW50bWFpbiBwIHtkaXNwbGF5OiBibG9jazsgdW5pY29kZS1iaWRpOiBlbWJlZDsgbWFyZ2luOiAwIDAgMS4xMmVtIDA7fVxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIEN1c3RvbSBiYW5uZXIgYmxvY2sgICAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuYS5uZGNie2Rpc3BsYXk6aW5saW5lLWJsb2NrOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGJvcmRlci1yYWRpdXM6NnB4OyAtbW96LWJvcmRlci1yYWRpdXM6NnB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4OyBmb250LXdlaWdodDo3MDA7IG1hcmdpbi1yaWdodDpjYWxjKDIlIC0gNXB4KTsgcGFkZGluZzoxJTsgY29sb3I6I0ZGRiAhaW1wb3J0YW50OyBwb3NpdGlvbjpyZWxhdGl2ZTsgbGluZS1oZWlnaHQ6bm9ybWFsOyB0cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDsgLW1vei10cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDsgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDsgYmFja2dyb3VuZDojMzMzOyBmb250LXNpemU6MS41ZW07IGJveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcbmEubmRjYiBzcGFue2ZvbnQtc2l6ZToxNTAlOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgLW1vei10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IGxlZnQ6MjBweDt9XHJcbmEubmRjYiBzcGFuOjphZnRlcntjb250ZW50OicnOyBkaXNwbGF5OmlubGluZS1ibG9jazsgY2xlYXI6Ym90aDt9XHJcbmEubmRjYi5sYXJnZXtmb250LXNpemU6MS44NzVlbTt9XHJcbmEubmRjYjpob3ZlcnstbW96LXRyYW5zZm9ybTpzY2FsZSgxLjEpOyAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjEpOyB0cmFuc2Zvcm06c2NhbGUoMS4xKTt9XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XHJcblx0YS5uZGNie2Rpc3BsYXk6YmxvY2s7IHdpZHRoOjgwJTsgbWF4LXdpZHRoOmluaGVyaXQ7IG1hcmdpbjoyJSBhdXRvO31cclxuXHRhLm5kY2IubGFyZ2V7d2lkdGg6OTUlOyBmb250LXNpemU6MS41ZW07fVxyXG5cdGEubmRjYjpob3ZlcnstbW96LXRyYW5zZm9ybTpub25lOyAtd2Via2l0LXRyYW5zZm9ybTpub25lOyB0cmFuc2Zvcm06bm9uZTt9XHJcblx0Lmxpc3QtY29udGFpbmVye2Rpc3BsYXk6YmxvY2s7IG1hcmdpbjowIDAgMiUgMDt9XHJcblx0Lmxpc3QtY29udGFpbmVyIHVse2Zsb2F0Om5vbmU7IGRpc3BsYXk6YmxvY2s7fVxyXG5cdC5jdXN0b20tYnV0dG9uc3tjbGVhcjpib3RoO31cclxuXHRpbWdbc3JjKj1cIi90aXJlX2JyYW5kcy9sb2dvcy9sb2dvXCJdLCBpbWdbc3JjKj1cIi9jdXN0b20tcGFnZXMvXCJde2Rpc3BsYXk6YmxvY2s7IG1hcmdpbjowIGF1dG8gMiU7IGZsb2F0Om5vbmUgIWltcG9ydGFudDt9XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5cclxuXHJcbi8vIE5vdCBzdXJlIHdoYXQgdGhpcyBpcyBmb3IgY29tbWVudGVkIG91dCBmb3Igbm93LlxyXG4vLyAuaG9tZXBhZ2UgI25kLW1pZGRsZWJhci5zZWNvbmQtcm93e2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDt9XHJcblxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBUaXRhbiBUaXJlIENhdGFsb2cgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4udGl0YW4tY2F0YWxvZ3tkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyBmbGV4LWRpcmVjdGlvbjogcm93OyBmbGV4LXdyYXA6IHdyYXA7IG1hcmdpbi10b3A6NCU7fVxyXG4udGl0YW4tY2F0YWxvZyBoMntmbGV4OiAxIDEgMTAwJTsgY29sb3I6I2ZmMDAwMDsgdGV4dC1hbGlnbjogY2VudGVyO31cclxuLnRpdGFuLWNhdGFsb2cgLnRpdGFuLS1wcm9kdWN0e2ZsZXg6MCAxIDMwMHB4OyBtYXJnaW46MTBweCAwOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3JkZXI6c29saWQgIzAwMCAxcHg7IGJvcmRlci1yYWRpdXM6IDhweDsgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgZm9udC1zaXplOi45ZW07fVxyXG4udGl0YW4tY2F0YWxvZyAudGl0YW4tLXByb2R1Y3Q6aG92ZXJ7Ym94LXNoYWRvdzowIDAgMjBweDsgYm94LXNoYWRvdzogMCAwIDEwcHggIzllOWU5ZTt9XHJcbi50aXRhbi1jYXRhbG9nIC50aXRhbi0tcHJvZHVjdCBpbWd7ZGlzcGxheTogYmxvY2s7IG1hcmdpbjoyJSBhdXRvO31cclxuLnRpdGFuLWNhdGFsb2cgLnRpdGFuLS1wcm9kdWN0LS1saW5le3RleHQtYWxpZ246IGNlbnRlcjsgYmFja2dyb3VuZDojMDA1MzhDOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwYWRkaW5nOjEwcHg7IGNvbG9yOiNmZmY7IGZvbnQtd2VpZ2h0OjcwMDsgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7fVxyXG4udGl0YW4tY2F0YWxvZyAudGl0YW4tLXByb2R1Y3QtLXNpemV7ZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IGZsZXgtZGlyZWN0aW9uOiByb3c7IGZsZXgtd3JhcDogd3JhcDsgcGFkZGluZzoxMHB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O31cclxuLnRpdGFuLWNhdGFsb2cgLnRpdGFuLS1wcm9kdWN0LS1zaXplIGRpdntmbGV4OjEgMSBhdXRvOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtd2VpZ2h0OiA3MDA7IGZvbnQtc2l6ZTogLjhlbTt9XHJcbi50aXRhbi1jYXRhbG9nIC50aXRhbi0tcHJvZHVjdC0tc2l6ZSBkaXY6Zmlyc3Qtb2YtdHlwZXtib3JkZXItcmlnaHQ6IHNvbGlkICMwMDAgMXB4O30gXHJcbi50aXRhbi1jYXRhbG9nIC50aXRhbi0tcHJvZHVjdC0tc2l6ZSBkaXYgc3Bhbntmb250LXdlaWdodDo0MDA7IGZvbnQtc2l6ZToxLjJlbTt9XHJcbi50aXRhbi0tcHJvZHVjdC0taW5mb3tkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGZsZXgtZGlyZWN0aW9uOiByb3c7IGZsZXgtd3JhcDogd3JhcDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcGFkZGluZzoxMHB4OyBib3JkZXItYm90dG9tOiBzb2xpZCAjY2JjYmNiIDFweDs7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcbi50aXRhbi0tcHJvZHVjdC0taW5mbzpudGgtY2hpbGQob2RkKXtiYWNrZ3JvdW5kOiNGMEYxRjA7fVxyXG4udGl0YW4tLXByb2R1Y3QtLWluZm86bGFzdC1vZi10eXBle2JvcmRlcjogMDsgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7fVxyXG4udGl0YW4tLXByb2R1Y3QtLWluZm8gc3Bhbntmb250LXdlaWdodDo0MDA7fSBcclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIENvbW1vbiBTdHlsZXMgICAgICAgICAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuaHRtbHttaW4taGVpZ2h0OjEwMCU7IGZvbnQtc2l6ZToxNnB4OyBvdmVyZmxvdy14OmhpZGRlbjsgYm94LXNpemluZzogYm9yZGVyLWJveDt9XHJcbmJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgZm9udC1zaXplOjEwMCU7IGhlaWdodDogMTAwJTt9XHJcbmEsIGE6bGluaywgYTp2aXNpdGVkIHt0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgY29sb3I6JHByaW1hcnktY29sb3I7fSBcclxuYTpob3ZlciwgYTphY3RpdmUge3RleHQtZGVjb3JhdGlvbjogbm9uZTsgY29sb3I6IzAwMDt9IFxyXG5wLCAjY29udGVudG1haW4gbGl7bGluZS1oZWlnaHQ6IDEuNmVtO31cclxuXHJcblxyXG4vLyBNQUlOIEJSQU5ESU5HIFNUWUxJTkdcclxuLnBjLWhlYWRlcjo6YmVmb3Jle2NvbnRlbnQ6XCIgXCI7IHdpZHRoOjUwMCU7IGhlaWdodDoxMDAlOyBwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDotMTsgdG9wOjA7IGxlZnQ6LTIwMCU7fVxyXG4ubmRjdXN0b21jb2xvcmNsYXNzLCAubmRjdXN0b21jb2xvcmNvbnRhaW5lciBpbWcsIC5zdWJ0aXRsZSwgLnBjLWhlYWRlcjo6YmVmb3JlLCAjQm90dG9tRm9vdGVyIGFbaWQqPVwibG5rU2F2ZVwiXTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7fSBcclxuLm5kY3VzdG9tdGV4dGNvbG9yMSwgLm5kY3VzdG9tbGlua2NvbG9yMXtjb2xvcjokcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tdGV4dGNvbG9yMiwgLm5kY3VzdG9tbGlua2NvbG9yMiB7Y29sb3I6IzAwMCAhaW1wb3J0YW50O30gXHJcbi5uZG1vZHVsZXRleHRjb2xvcjF7Y29sb3I6JHByaW1hcnktY29sb3IgIWltcG9ydGFudDt9XHJcbi5uZG1vZHVsZXRleHRjb2xvcjJ7Y29sb3I6IzAwMCAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tYnV0dG9uMiB7YmFja2dyb3VuZDokcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50OyBjb2xvcjojZmZmICFpbXBvcnRhbnQ7fSBcclxuLm5kY3VzdG9tbGlua2NvbG9yMTpob3ZlciwgLm5kY3VzdG9tbGlua2NvbG9yMjpob3ZlciB7Y29sb3I6IzY2NjY2NiAhaW1wb3J0YW50O30gIFxyXG4ubmRjdXN0b21idXR0b24xLCAubmRjdXN0b20yIHtiYWNrZ3JvdW5kOiM2NjY2NjYgIWltcG9ydGFudDsgY29sb3I6I2ZmZiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tMSwgLm5kY3VzdG9tYnV0dG9uMTpob3ZlciwgLm5kY3VzdG9tYnV0dG9uMjpob3ZlciB7YmFja2dyb3VuZDojMDAwICFpbXBvcnRhbnQ7IGNvbG9yOiNmZmYgIWltcG9ydGFudDt9IFxyXG4ubmRjdXN0b21ib3JkZXIge2JvcmRlcjoxcHggc29saWQgIzY2NiAhaW1wb3J0YW50O31cclxuLm5kY3VzdG9tY29sb3JjbGFzczJ7YmFja2dyb3VuZDojNDE0MTQxICFpbXBvcnRhbnQ7fVxyXG5cclxuXHJcbi8vQUJPVVQgVVMgUEFHRSBMT0NBVElPTiBXSURHRVRcclxuLmxvY3dpZGdldC1zaG9ydGhvdXJzIHVsLnNob3J0TG9jSG91cnN7bWFyZ2luOjVweCAwICFpbXBvcnRhbnQ7fVxyXG5cclxuLy9GaW5kIFVzIFBhZ2UgTG9jYXRpb24gSG91cnNcclxuI25kYXUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9IFxyXG4gXHJcbkBpbmNsdWRlIHBob25le1xyXG5cdCNuZGF1e2Rpc3BsYXk6bm9uZTt9XHJcblx0I25kYXUtbW9iaWxle2Rpc3BsYXk6YmxvY2s7IHdpZHRoOjkwJTsgbWFyZ2luOjAgYXV0bzt9XHJcblx0I25kYXUtbW9iaWxlICNuZGF1aG91cnN7bWFyZ2luOjA7IGRpc3BsYXk6ZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IGZsZXgtd3JhcDogd3JhcDt9XHJcblx0I25kYXUtbW9iaWxlICNuZGF1aG91cnMgbGl7dGV4dC1hbGlnbjogY2VudGVyOyBmbGV4OjEgMSAxMDAlOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwYWRkaW5nOjAgMTBweDt9XHJcblx0I25kYXUtbW9iaWxlICNuZGF1aG91cnMgbGkgc3Ryb25ne2Zsb2F0OmxlZnQ7fVxyXG5cdCNuZGF1LW1vYmlsZSAjbmRhdWhvdXJzIGxpIHNwYW4ubmRIb3Vyc3tmbG9hdDpyaWdodDt9XHJcblx0I25kYXUtbW9iaWxlICNuZGF1aG91cnMgc3Bhbi5uZGhvdXJzSW5mbzplbXB0eXtkaXNwbGF5Om5vbmU7fVxyXG59IFxyXG5cclxuXHJcbi8qIFFVT1RJTkcgQkFER0VcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbmEubmQtcXVvdGViYWRnZXtwb3NpdGlvbjpmaXhlZDsgei1pbmRleDoxMDAwOyByaWdodDowOyB0b3A6NjAlOyB3aWR0aDo2MHB4OyB0cmFuc2l0aW9uOnBhZGRpbmcgMTAwbXMgZWFzZS1pbi1vdXQ7IC1tb3otdHJhbnNpdGlvbjpwYWRkaW5nIDEwMG1zIGVhc2UtaW4tb3V0OyAtd2Via2l0LXRyYW5zaXRpb246cGFkZGluZyAxMDBtcyBlYXNlLWluLW91dDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGZvbnQtd2VpZ2h0OjcwMDsgZm9udC1zaXplOjlweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgcGFkZGluZzoxMHB4OyBib3JkZXItcmFkaXVzOjZweCAwIDAgNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6NnB4IDAgMCA2cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHggMCAwIDZweDsgYmFja2dyb3VuZDojQ0NDOyBib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgLW1vei1ib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgLXdlYmtpdC1ib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgY29sb3I6IzAwMDsgbGluZS1oZWlnaHQ6MTBweDt9XHJcbmEubmQtcXVvdGViYWRnZSBpe2ZvbnQtc2l6ZTozNHB4OyBkaXNwbGF5OmJsb2NrOyBtYXJnaW4tYm90dG9tOjVweDt9XHJcblxyXG5hLm5kLXF1b3RlYmFkZ2U6aG92ZXJ7cGFkZGluZy1yaWdodDoyMHB4O31cclxuXHJcbiNxdW90aW5nLWJ1dHRvbnN7aGVpZ2h0OjE3MHB4OyBwb3NpdGlvbjpmaXhlZDsgcmlnaHQ6MDsgdG9wOjQ1JTsgei1pbmRleDoxMDAwO31cclxuI3F1b3RpbmctYnV0dG9ucyBhLm5kLXF1b3RlYmFkZ2V7cG9zaXRpb246YWJzb2x1dGU7IHRvcDowO31cclxuI3F1b3RpbmctYnV0dG9ucyBhLm5kLXF1b3RlYmFkZ2UudGlyZS1jYXJ0e2JvdHRvbTowOyB0b3A6YXV0bzt9XHJcbiNxdW90aW5nLWJ1dHRvbnMgYS5uZC1xdW90ZWJhZGdlLnRpcmUtY2FydHtjb2xvcjojRkZGO31cclxuXHJcbkBpbmNsdWRlIGRlc2t0b3B7XHJcblx0I3F1b3RpbmctYnV0dG9uc3tkaXNwbGF5Om5vbmU7fVxyXG59XHJcblxyXG5AaW5jbHVkZSB0YWJsZXR7XHJcblx0I3F1b3RpbmctYnV0dG9uc3tkaXNwbGF5Om5vbmU7fVxyXG59XHJcblxyXG5AaW5jbHVkZSBwaG9uZXtcclxuXHRhLm5kLXF1b3RlYmFkZ2V7ZGlzcGxheTpub25lO31cclxuXHRcclxuXHQvL0V4dHJhIE5hdiBCdXR0b25zXHJcblx0LmV4dHJhLW5hdi1idXR0b25ze2Rpc3BsYXk6ZmxleDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI0ZGRjsgcGFkZGluZzowIDIwcHg7fVxyXG5cdC5leHRyYS1uYXYtYnV0dG9ucyBhe3BhZGRpbmc6MjBweCAxNXB4OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGZvbnQtd2VpZ2h0OjcwMDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGZsZXgtZ3JvdzoxOyB0ZXh0LWFsaWduOmNlbnRlcjsgZm9udC1zaXplOjEuMzc1ZW07fVxyXG5cdFxyXG59XHJcblxyXG5cclxuLyogQkxPRyBXSURHRVRcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5Nb2RETk5HT3hCbG9nRGFzaEJvYXJkQ3tiYWNrZ3JvdW5kOiMyNzI3Mjc7IHBhZGRpbmc6MiU7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgcG9zaXRpb246cmVsYXRpdmU7IHotaW5kZXg6MTsgaGVpZ2h0OjI0MHB4OyAtbW96LWJvcmRlci1yYWRpdXM6NnB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4OyBib3JkZXItcmFkaXVzOjZweDt9XHJcbi5Nb2RETk5HT3hCbG9nRGFzaEJvYXJkQyAuYXJ0aWNsZV9saXN0e2JhY2tncm91bmQ6IzE3MTcxNzsgLW1vei1ib3JkZXItcmFkaXVzOjZweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweDsgYm9yZGVyLXJhZGl1czo2cHg7IGNvbG9yOiNDQ0M7IHBhZGRpbmc6MiU7IHBvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4OjE7IGhlaWdodDoxMDAlOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7fVxyXG4uTW9kRE5OR094QmxvZ0Rhc2hCb2FyZEMgLm5hdl9jYXRlZ29yeXtkaXNwbGF5Om5vbmU7fVxyXG4uTW9kRE5OR094QmxvZ0Rhc2hCb2FyZEMgYXtjb2xvcjojRkZGO31cclxuLkFydGljbGVMaXN0X0RlZmF1bHQsIC52YWxpZGF0aW9uRW5naW5lQ29udGFpbmVyLCAuTW9kRE5OR094QmxvZ0Rhc2hCb2FyZEMgPiBkaXZ7aGVpZ2h0OjEwMCU7fVxyXG5cclxuXHJcbi8qIENPTlRBSU5FUiBIRUFERVJcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4jZG5uX1NpZGVQYW5lLCAjZG5uX0NUQ0ZpbHRlclBhbmV7d2lkdGg6MzAlOyBmbG9hdDpsZWZ0OyB6LWluZGV4OjEwOyBwb3NpdGlvbjpyZWxhdGl2ZTt9XHJcbiNkbm5fU2lkZVBhbmUgLnBjLWhlYWRlcntvdmVyZmxvdzpoaWRkZW47fVxyXG5cclxuXHJcbi5sb2NhdGlvbnt3aWR0aDoyNSU7IHBhZGRpbmc6MjUlIDAgMiU7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgZmxvYXQ6bGVmdDsgZm9udC1zaXplOjI0cHg7IGZvbnQtc3R5bGU6aXRhbGljOyBjb2xvcjojRkZGICFpbXBvcnRhbnQ7IHRleHQtYWxpZ246Y2VudGVyOyBkaXNwbGF5OmJsb2NrOyBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7IGJhY2tncm91bmQtc2l6ZTo0MDAlIGF1dG87IHRyYW5zaXRpb246dHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7IC1tb3otdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDsgLXdlYmtpdC10cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O31cclxuLmxvY2F0aW9uOmhvdmVye3RleHQtc2hhZG93OjAgMCA2cHggI0ZGRjsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7fVxyXG5cclxuXHJcblxyXG4jZG5uX0JvdHRvbUxpbmtzUGFuZSB7Zm9udC1zaXplOjEwcHg7IG1hcmdpbjoxMHB4IDAgMCA1cHg7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgb3ZlcmZsb3c6aGlkZGVuO31cclxuI2Rubl9Cb3R0b21MaW5rc1BhbmUgYSwgI2Rubl9Cb3R0b21MaW5rc1BhbmUgYTp2aXNpdGVkIHtmb250LXdlaWdodDo3MDA7fVxyXG4jZG5uX1NFT1BhbmUsICNkbm5fQm90dG9tTGlua3NQYW5lIHtsaW5lLWhlaWdodDpub3JtYWw7fVxyXG4jZG5uX1NFT1BhbmUge2ZvbnQtc2l6ZToxMHB4OyBmb250LXdlaWdodDo0MDA7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiNkbm5fU0VPUGFuZSBwe21hcmdpbi1ib3R0b206MTBweDsgcGFkZGluZzowIDdweCAwIDdweDsgZm9udC1zaXplOjEwcHggIWltcG9ydGFudDt9XHJcblxyXG5cclxuI25kLWJ1dHRvbnMuY29udGFjdCB7bWFyZ2luOjEwcHggMDt9XHJcblxyXG5cclxuLmNvdXBvbi1zZWN0aW9uIC5zZWUtb3VyLWNvdXBvbnN7bWFyZ2luOjEwJSAwOyB3aWR0aDoxMDAlOyBoZWlnaHQ6YXV0bzt9XHJcbi5jb3Vwb24tc2VjdGlvbiAuY291cG9uLXdyYXB7bWFyZ2luOjMuNSUgMDt9XHJcblxyXG4jZG5uX0Zvb3RlclBhbmU0ICNMb2NhdGlvbldpZGdldCAubG9jd2lkZ2V0bGlzdGluZyAubG9jd2lkZ2V0LW5hbWUsICNkbm5fRm9vdGVyUGFuZTQgI0xvY2F0aW9uV2lkZ2V0IC5sb2N3aWRnZXRsaXN0aW5nIC5sb2N3aWRnZXQtYWRkciwgI2Rubl9Gb290ZXJQYW5lNCAjTG9jYXRpb25XaWRnZXQgLmxvY3dpZGdldGxpc3RpbmcgLmxvY3dpZGdldC1mYXh7ZGlzcGxheTpub25lO31cclxuI2Rubl9Gb290ZXJQYW5lNCAubG9jd2lkZ2V0LWNzenttYXJnaW4tYm90dG9tOjA7fVxyXG5cclxuXHJcbiNuZC10b3BiYXJ7aGVpZ2h0OmF1dG87IHBhZGRpbmc6MjBweCAwO31cclxuXHJcblxyXG4ubW9iaWxlLWFuY2hvcnt3aWR0aDo5MCU7IG1hcmdpbjowIGF1dG87IHRyYW5zaXRpb246dG9wIDAuM3MgZWFzZS1pbi1vdXQ7IGxlZnQ6NCU7IGJvcmRlcjoxcHggc29saWQgIzQ0NDsgei1pbmRleDoxMCAhaW1wb3J0YW50OyBwb3NpdGlvbjpmaXhlZDsgLW1vei1ib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgLXdlYmtpdC1ib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgYm94LXNoYWRvdzowIDAgM3B4ICMwMDA7fVxyXG4ubW9iaWxlLWFuY2hvciArICNuZGF0YyAjYXRjc2VhcmNoc29ydHttYXJnaW4tdG9wOjgxcHg7fVxyXG4jbW9iaWxlLXNvY2lhbHtkaXNwbGF5Om5vbmU7fVxyXG5cclxuI3Bvd2VyZWRieW5kIHtjb2xvcjojZmZmOyBtYXJnaW46MzBweCBhdXRvIDA7IHdpZHRoOjE1N3B4OyBoZWlnaHQ6MzlweDsgcGFkZGluZzozcHggOHB4IDA7IGJvcmRlci1yYWRpdXM6NHB4OyBiYWNrZ3JvdW5kOiAjMTExO31cclxuI3Bvd2VyZWRieW5kICNsb2dpbnt9XHJcbiNwb3dlcmVkYnluZCAjbG9naW4gYS5uZGxvZ28ge2JhY2tncm91bmQ6IHVybCgvL2EyLm5kLWNkbi51cy9Ta2lubmluZy9ORF9CYWRnZS9uZF9sb2dvLnBuZykgbm8tcmVwZWF0IGNlbnRlciB0b3A7IHdpZHRoOjU3cHg7IGhlaWdodDozNXB4OyBmbG9hdDpsZWZ0OyB0ZXh0LWluZGVudDotOTk5OXB4O31cclxuI3Bvd2VyZWRieW5kICNsb2dpbiBhLm5kbG9nbzpob3ZlciB7YmFja2dyb3VuZC1wb3NpdGlvbjpib3R0b207fVxyXG4jcG93ZXJlZGJ5bmQgI2xvZ2luIHNwYW4ge2Zsb2F0OnJpZ2h0OyB0ZXh0LWFsaWduOmNlbnRlcjsgZm9udC1zaXplOjlweDsgbWFyZ2luLXRvcDo1cHg7fVxyXG4jcG93ZXJlZGJ5bmQgI2xvZ2luIHNwYW4gYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lICFpbXBvcnRhbnQ7IGNvbG9yOiNmZmY7fVxyXG4jcG93ZXJlZGJ5bmQgI2xvZ2luIHNwYW4gYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lICFpbXBvcnRhbnQ7IGNvbG9yOiNjY2M7fVxyXG5cclxuLnNlY29uZC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6dXJsKGltZy9jb250ZW50YmcucG5nKSBuby1yZXBlYXQgY2VudGVyIDI3NHB4O31cclxuXHJcbkBpbmNsdWRlIHBob25le1xyXG5cdCNwb3dlcmVkYnluZHtib3gtc2l6aW5nOiBib3JkZXItYm94O31cclxuXHQjcG93ZXJlZGJ5bmQgI2xvZ2luIHNwYW57Zm9udC1zaXplOjhweCAhaW1wb3J0YW50O30gXHJcbn1cclxuXHJcblxyXG4vKiBTVUJUSVRMRSBCQVJcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5zdWJ0aXRsZSB7Y29sb3I6ICNmZmY7ICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyBmb250LXdlaWdodDo3MDA7IHBhZGRpbmc6MTBweCAyMHB4OyB0ZXh0LXRyYW5zZm9ybTpub25lOyBib3JkZXI6MXB4IHNvbGlkICMzMzM7IGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjMxKSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUscmdiYSgwLDAsMCwwKSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDAsMCwwLDAuMzEpKSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjMxKSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwwLjMxKSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4zMSkgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC4zMSkgMTAwJSk7IFxyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjNGYwMDAwMDAnLEdyYWRpZW50VHlwZT0wICk7fVxyXG4gICAgLnN1YnRpdGxlIGEge2NvbG9yOiAjZmZmO31cclxuXHJcblxyXG5cclxuLyogU29jaWFsIE1lZGlhIC0gQ29ubmVjdCB3aXRoIHVzIHBhZ2VcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5zbS1jb25uZWN0IHt9XHJcbi5zbWZvbnQge2ZvbnQtd2VpZ2h0OjcwMDsgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO31cclxuLnNtLWNvbm5lY3QgLnNtLWZlZWQge2Zsb2F0OmxlZnQ7IHdpZHRoOjQ4JTt9XHJcbi5zbS1jb25uZWN0IC5zbS1idXR0b25zIHt9XHJcbi5zbS1jb25uZWN0IC5zbS1idXR0b25zIGEge2NvbG9yOiNmZmYgIWltcG9ydGFudDsgZGlzcGxheTpibG9jazsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGJvcmRlci1yYWRpdXM6MjBweDsgcGFkZGluZzozJSAxMCU7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgdGV4dC1hbGlnbjpjZW50ZXI7IG1hcmdpbjowIDVweCAzMHB4OyB0cmFuc2l0aW9uOmFsbCBlYXNlLWluLW91dCAuMnM7IC1tb3otdHJhbnNpdGlvbjphbGwgZWFzZS1pbi1vdXQgLjJzOyAtd2Via2l0LXRyYW5zaXRpb246YWxsIGVhc2UtaW4tb3V0IC4yczsgYm94LXNoYWRvdzowIDNweCAzcHggIzMzMzt9XHJcbi5zbS1jb25uZWN0IC5zbS1idXR0b25zIGE6aG92ZXIge2JhY2tncm91bmQ6Izk5OSAhaW1wb3J0YW50OyB0cmFuc2Zvcm06c2NhbGUoLjk1KTsgLW1vei10cmFuc2Zvcm06c2NhbGUoLjk1KTsgLXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjk1KTsgYm94LXNoYWRvdzppbnNldCAwIDNweCAzcHggIzMzMzt9XHJcbi5zbS1jb25uZWN0IC5zbS1idXR0b25zIGEgc3BhbiB7ZmxvYXQ6bGVmdDsgZm9udC1zaXplOjNlbTsgbWFyZ2luOjIwcHggMCAwO31cclxuLnNtLWNvbm5lY3QgLnNtLWJ1dHRvbnMgYSBoMiB7bWFyZ2luOjA7IGZvbnQtc2l6ZToyLjI1ZW07fVxyXG4uc20tY29ubmVjdCAuc20tYnV0dG9ucyBhIHAge2xpbmUtaGVpZ2h0Om5vcm1hbDsgZm9udC1zaXplOjEuMjVlbTsgbWFyZ2luOjAgIWltcG9ydGFudDt9XHJcblxyXG4uc20tY29ubmVjdCBoMi5mYi1iYXIge2JhY2tncm91bmQ6IzNCNTk5ODsgY29sb3I6I2ZmZjt9XHJcbi5zbS1jb25uZWN0IC5mYi1hcmVhIC5zbS1idXR0b25zIGEge2JhY2tncm91bmQ6IzNCNTk5ODt9XHJcblxyXG4uc20tY29ubmVjdCBoMi50dy1iYXIge2JhY2tncm91bmQ6IzVFQTlERDsgY29sb3I6I2ZmZjt9XHJcbi5zbS1jb25uZWN0IC50dy1hcmVhIC5zbS1idXR0b25zIGEge2JhY2tncm91bmQ6IzVFQTlERDt9XHJcblxyXG4uc20tY29ubmVjdCBoMi5ncC1iYXIge2JhY2tncm91bmQ6I0Q3M0QzMjsgY29sb3I6I2ZmZjt9XHJcbi5zbS1jb25uZWN0IC5ncC1hcmVhIC5zbS1idXR0b25zIGEge2JhY2tncm91bmQ6I0Q3M0QzMjt9XHJcblxyXG4uc20tY29ubmVjdCBoMi5wdC1iYXIge2JhY2tncm91bmQ6I0JEMDgxQzsgY29sb3I6I2ZmZjt9IFxyXG4uc20tY29ubmVjdCAucHQtYXJlYSAuc20tYnV0dG9ucyBhIHtiYWNrZ3JvdW5kOiNCRDA4MUM7fVxyXG5cclxuLnNtLWNvbm5lY3QgaDIueXAtYmFyIHtiYWNrZ3JvdW5kOiNEMzIzMjM7IGNvbG9yOiNmZmY7fVxyXG4uc20tY29ubmVjdCAueXAtYXJlYSAuc20tYnV0dG9ucyBhIHtiYWNrZ3JvdW5kOiNEMzIzMjM7fSBcclxuXHJcblxyXG4uc20tY29ubmVjdCBoMi5mYi1iYXIsIC5zbS1jb25uZWN0IGgyLnR3LWJhciwgLnNtLWNvbm5lY3QgaDIuZ3AtYmFyLCAuc20tY29ubmVjdCBoMi5wdC1iYXIsIC5zbS1jb25uZWN0IGgyLnlwLWJhciB7dGV4dC1hbGlnbjpjZW50ZXI7IGZvbnQtc2l6ZToyLjVlbTsgcGFkZGluZzoxJSAwO31cclxuXHJcbi5mYl9pZnJhbWVfd2lkZ2V0IHNwYW4sIC50d2l0dGVyLXRpbWVsaW5lLCAjX19fcGVyc29uXzAsICNfX19wZXJzb25fMCBpZnJhbWUsIC5QSU5fMTQ4MDcxNDg5MDQzNF9lbWJlZF9ncmlkIFBJTl8xNDgwNzE0ODkwNDM0X2MzIHt3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IG1heC13aWR0aDo0NzBweDt9XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkgYW5kIChtaW4td2lkdGg6NjQxcHgpIHtcclxuXHQuZmItcGFnZSwgLmZiLXBhZ2Ugc3BhbiwgLmZiLXBhZ2Ugc3BhbiBpZnJhbWVbc3R5bGVdIHt3aWR0aDogMTAwJSAhaW1wb3J0YW50O31cclxufSAvKiBUYXJnZXQgVGFibGV0IEV4Y2x1c2l2ZWx5ICovXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XHJcblx0LnNtLWNvbm5lY3QgLnNtLWZlZWQge2Rpc3BsYXk6bm9uZTt9XHJcblx0LnNtLWNvbm5lY3QgLnNtLWJ1dHRvbnMge2Zsb2F0Om5vbmU7IHdpZHRoOjEwMCU7fVxyXG5cdC5zbS1jb25uZWN0IGgyLmZiLWJhciwgLnNtLWNvbm5lY3QgaDIudHctYmFyLCAuc20tY29ubmVjdCBoMi5ncC1iYXIsIC5zbS1jb25uZWN0IGgyLnB0LWJhciwgLnNtLWNvbm5lY3QgaDIueXAtYmFyIHtwYWRkaW5nOjIlIDA7IGZvbnQtc2l6ZToxLjc1ZW07fVxyXG59IC8qIFRhcmdldCBQaG9uZSBFeGNsdXNpdmVseSAqL1xyXG5cclxuXHJcblxyXG5AaW5jbHVkZSB0YWJsZXR7XHJcblx0I3N1Yi1jb250ZW50e3BhZGRpbmc6MiUgMDt9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSB0YWJsZXQtcGhvbmV7IFxyXG5cdC5ob21lcGFnZSAuY29udGFpbmVye3BhZGRpbmc6MiU7IGJveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcblx0LmhvbWVwYWdlICNtYWluLWNvbnRlbnQgLmNvbnRhaW5lcntwYWRkaW5nOjA7fVxyXG5cdCNtYWluLWNvbnRlbnQgLmNvbnRhaW5lcntwYWRkaW5nOjIlOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7fVxyXG4gICAgLmNvbnRhaW5lci5tb2JpbGUtbm9wYWRkaW5ne3BhZGRpbmc6MCAhaW1wb3J0YW50O31cclxuICAgIFxyXG4gICAgLnBjLWhlYWRlcjo6YmVmb3Jle3dpZHRoOjEwNCU7IGxlZnQ6LTIlO31cclxuXHQubG9jYXRpb257Zm9udC1zaXplOjE4cHg7fVxyXG5cclxuXHRcclxuXHQubG9jYXRpb24tZHJvcGRvd24sIC5jYWxsLWRyb3Bkb3due2Rpc3BsYXk6bm9uZTsgYmFja2dyb3VuZDojMjcyNzI3ICFpbXBvcnRhbnQ7IHBhZGRpbmc6NSUgNSU7IGZvbnQtc2l6ZToxNnB4OyBjb2xvcjojRkZGOyBsZWZ0OjUlOyB3aWR0aDo5MCUgIWltcG9ydGFudDsgZm9udC13ZWlnaHQ6NzAwO31cclxuXHQubG9jYXRpb24tZHJvcGRvd257b3ZlcmZsb3cteTpzY3JvbGw7fVxyXG5cdC5sb2NhdGlvbi1jaG9pY2V7IG1hcmdpbi1ib3R0b206NSU7IG92ZXJmbG93OmhpZGRlbjsgYm9yZGVyLXJhZGl1czo2cHg7IC1tb3otYm9yZGVyLXJhZGl1czo2cHggNnB4IDAgMDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweCA2cHggMCAwOyBib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgLW1vei1ib3gtc2hhZG93OjAgMCAzcHggIzAwMDsgLXdlYmtpdC1ib3gtc2hhZG93OjAgMCAycHggIzAwMDt9XHJcblx0LmxvY2F0aW9uLWNob2ljZSAubG9jYXRpb24tbmFtZXtiYWNrZ3JvdW5kOiM0NDQ7IHBhZGRpbmc6MyU7fVxyXG5cdC5sb2NhdGlvbi1jaG9pY2UgLmxvY2F0aW9uLWJ1dHRvbnMgYXtkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjIlICFpbXBvcnRhbnQ7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyB0ZXh0LWFsaWduOmNlbnRlcjsgY29sb3I6I0ZGRjsgZm9udC1zaXplOjE0cHg7IHRleHQtZGVjb3JhdGlvbjpub25lO31cclxuXHQubG9jYXRpb24tY2hvaWNlIC5sb2NhdGlvbi1idXR0b25zIGE6Zmlyc3Qtb2YtdHlwZXtmbG9hdDpsZWZ0OyB3aWR0aDo1MCU7IGJvcmRlci1yaWdodDoxcHggc29saWQgIzMzMzsgYm9yZGVyLXJhZGl1czowIDAgMCA2cHg7IC1tb3otYm9yZGVyLXJhZGl1czowIDAgMCA2cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czowIDAgMCA2cHg7fVxyXG5cdFxyXG5cdC5jYWxsLWNob2ljZXttYXJnaW4tYm90dG9tOjUlOyBiYWNrZ3JvdW5kOiM0NDQ7IG92ZXJmbG93OmhpZGRlbjsgYm9yZGVyLXJhZGl1czo2cHg7IC1tb3otYm9yZGVyLXJhZGl1czo2cHggNnB4IDAgMDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweCA2cHggMCAwOyBkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjIlICFpbXBvcnRhbnQ7IGJveC1zaGFkb3c6MCAwIDNweCAjMDAwOyAtbW96LWJveC1zaGFkb3c6MCAwIDNweCAjMDAwOyAtd2Via2l0LWJveC1zaGFkb3c6MCAwIDJweCAjMDAwO31cclxuXHQuY2FsbC1jaG9pY2U6bGFzdC1vZi10eXBle21hcmdpbi1ib3R0b206MDt9XHJcblx0XHJcblx0LmNhbGwtY2hvaWNlIC5uYW1lLXBob25le2NvbG9yOiNGRkY7IGZvbnQtc2l6ZToxNHB4OyBmbG9hdDpsZWZ0OyB3aWR0aDo3MCU7fVxyXG5cdC5jYWxsLWNob2ljZSAuY2FsbC1idXR0b257ZmxvYXQ6cmlnaHQ7IHdpZHRoOjEwJTsgaGVpZ2h0OjEwMCU7IHRleHQtYWxpZ246Y2VudGVyOyBwYWRkaW5nOjIlOyBib3JkZXItcmFkaXVzOjZweDt9XHJcblx0LmxvY2F0aW9uLWNob2ljZSAubG9jYXRpb24tYnV0dG9ucyBhOmxhc3Qtb2YtdHlwZXtmbG9hdDpyaWdodDsgd2lkdGg6NTAlOyBib3JkZXItcmFkaXVzOjAgMCA2cHggMDsgLW1vei1ib3JkZXItcmFkaXVzOjAgMCA2cHggMDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgMCA2cHggMDt9XHJcblx0LmdhbGxlcnlfYm94cyAuYm94e3dpZHRoOjI0JSAhaW1wb3J0YW50OyBtYXJnaW46MC41JSAhaW1wb3J0YW50O31cclxuXHQubG9jYXRpb24tY2hvaWNlOmxhc3Qtb2YtdHlwZXttYXJnaW46MDt9XHJcblx0LmNsb3NlLWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjAuNSU7IHJpZ2h0OjAuNSU7IHRleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7IGNvbG9yOiNGRkY7IGZvbnQtc2l6ZToyNnB4ICFpbXBvcnRhbnQ7IGN1cnNvcjpwb2ludGVyO31cclxuXHQuY2FsbC1idXR0b24gLmZhe2ZvbnQtc2l6ZToyNnB4OyBjb2xvcjojRkZGICFpbXBvcnRhbnQ7fVxyXG5cdC5jbG9zZS1idXR0b246aG92ZXIsIC5jYWxsLWJ1dHRvbiAuZmE6aG92ZXJ7Y29sb3I6I0ZGRjt9XHJcblx0XHJcblx0I3F1b3RpbmctYnV0dG9uc1xyXG5cdCNxdW90aW5nLWJ1dHRvbnN7aGVpZ2h0OmF1dG87IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MTBweDt9XHJcbiAgICAjcXVvdGluZy1idXR0b25zIGEubmQtcXVvdGViYWRnZXt9XHJcbiAgICBcclxuICAgICNhdGNjbGlja3RvcmVmaW5lc2VhcmNoe2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDsgLW1vei10cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDsgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDsgdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7fVxyXG5cclxuXHQjZG5uX1NpZGVQYW5le2Rpc3BsYXk6bm9uZTt9XHJcblx0I2Rubl9DVENGaWx0ZXJQYW5le3dpZHRoOjEwMCU7IGZsb2F0Om5vbmU7fVxyXG5cdFxyXG5cdC5uZC1tb2JpbGUtcG9wdXB7b3BhY2l0eTowOyBwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50OyBsZWZ0OjEwJTsgd2lkdGg6ODAlICFpbXBvcnRhbnQ7IC8qaGVpZ2h0OjgwJTsqLyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGJveC1zaGFkb3c6IzAwMDsgYmFja2dyb3VuZDojRkZGOyB6LWluZGV4OjUwOyBib3gtc2hhZG93OjAgMCAxNXB4ICMwMDA7IC1tb3otYm94LXNoYWRvdzowIDAgMTVweCAjMDAwOyAtd2Via2l0LWJveC1zaGFkb3c6MCAwIDE1cHggIzAwMDsgYm9yZGVyLXJhZGl1czoxMHB4OyAtbW96LWJvcmRlci1yYWRpdXM6MTBweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHg7IG92ZXJmbG93OmhpZGRlbjsgfVx0XHJcblx0I2Rubl9TaWRlUGFuZSAucGMtaGVhZGVye3BhZGRpbmc6MiU7fVxyXG5cdCNkbm5fU2lkZVBhbmUgLnBjLWhlYWRlciBoMXttYXJnaW46MDsgY29sb3I6I0ZGRjt9XHJcblx0I2Rubl9TaWRlUGFuZSAucGMtYm9keXtwYWRkaW5nOjIlO31cclxuXHQjZG5uX1NpZGVQYW5lIC5jbG9zZS13aW5kb3d7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlOyBmbG9hdDpyaWdodDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGNvbG9yOiNGRkY7IGN1cnNvcjpwb2ludGVyO31cclxuXHJcblx0LnZpZXctdGVzdGltb25pYWxzLCAuY29tbXVuaXR5LWhlcm9lcywgLnNsaWRlci1pbWFnZXt3aWR0aDoxMDAlO31cclxuXHJcblx0LnRwbXN7bWF4LXdpZHRoOjIwJTt9XHJcblx0LnRhYmxldEJ1dHRvbnN7ZGlzcGxheTpibG9jazt9XHJcblx0I2NvbnRlbnRuYXZ7d2lkdGg6MTAwJTsgcGFkZGluZzowO31cclxuXHRcclxuXHRcclxuXHQjYnJhbmRzIGltZ3t3aWR0aDphdXRvOyBoZWlnaHQ6YXV0bzt9XHJcblx0LyogUGVybWFuZW50IFN0eWxlcyAqL1xyXG5cdC5jb250YWluZXJ7d2lkdGg6MTAwJTt9XHJcblx0I21haW4tY29udGVudCAuY29udGFpbmVye3BhZGRpbmctdG9wOjA7fVxyXG5cdCNuZXRkcml2ZW57d2lkdGg6MTAwJTsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcGFkZGluZzowIDIlIDEyJTt9XHJcblxyXG5cdC5uZGN1c3RvbWJ1dHRvbjEsIC5uZGN1c3RvbWJ1dHRvbjJ7ZGlzcGxheTpibG9jazsgbWFyZ2luLWJvdHRvbTo1cHg7IHRleHQtYWxpZ246Y2VudGVyOyBwYWRkaW5nLXRvcDo4cHggMDt9XHJcblx0XHJcblx0LmF0Y3R5cGVpbWFnZSwgLmF0Y2NhdGVnb3J5aW1hZ2V7ZGlzcGxheTpibG9jazt9XHJcblx0XHJcblx0I2xvY2F0aW9uc3tiYWNrZ3JvdW5kOnVybChpbWcvbG9jYXRpb25zLnBuZykgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6MTAwJSBhdXRvO31cclxuXHRcclxuXHQubmQtc2xpZGV3aW5kb3cgLmF0Y1NpZGVGaWx0ZXJ7Y29sb3I6I0ZGRjt9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBwaG9uZXtcclxuXHQvLyBTdWJ0aXRsZSBCYXJcclxuXHQuc3VidGl0bGV7cGFkZGluZzoxJTt9XHJcblx0LnN1YnRpdGxlICsgKntwYWRkaW5nOjElO31cclxuXHJcblx0Ly9Cb3R0b20gQ29udGFjdCBGb3JtIFN0eWxlc1xyXG5cdCNFbnRyeUZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sICNFbnRyeUZvcm0gc2VsZWN0LCAjRW50cnlGb3JtIHRleHRhcmVhe2ZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O31cclxuXHRcclxuXHQvKiBDT05UQUlORVIgSEVBREVSXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblx0LnBjLWhlYWRlciBoMSwgLnBjLXRpdGxlIGgxLCAucGMtaGVhZGVyOjpiZWZvcmUsIC5wYy10aXRsZTo6YmVmb3Jle2ZvbnQtc2l6ZToyMnB4O31cclxuXHRcclxuXHRpbWcubW9iaWxlLWltYWdlLWZ1bGx7d2lkdGg6NzUlOyBoZWlnaHQ6YXV0bzsgbWFyZ2luOjIlIGF1dG8gIWltcG9ydGFudDsgZGlzcGxheTpibG9jazsgY2xlYXI6Ym90aDsgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O31cclxuXHRcclxuXHQubmRtb2JpbGVoaWRle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O31cclxuXHQubmQtbW9iaWxlLW9ubHl7ZGlzcGxheTpibG9jazt9XHJcblx0LmdhbGxlcnlfYm94cyAuYm94e3dpZHRoOjQ4JSAhaW1wb3J0YW50OyBtYXJnaW46MC41JSAhaW1wb3J0YW50O31cclxuXHJcblxyXG5cclxuXHQjbmRhdGMgI3RpcmVzaWRld2FsbF9hbmltYXRpb24sICNuZGF0YyAuYXRjU2lkZUZpbHRlcntkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7fSAvKiBPdmVyd3JpdGUgaW4gbW9kdWxlLmNzcyAqL1xyXG5cdCNkbm5fU2lkZVBhbmU6bm90KC5ETk5FbXB0eVBhbmUpICsgI2Rubl9Db250ZW50UGFuZXtmbG9hdDpub25lOyB3aWR0aDphdXRvO31cclxuXHJcblxyXG5cdCNhdGNjbGlja3RvcmVmaW5lc2VhcmNoe3doaXRlLXNwYWNlOm5vcm1hbCAhaW1wb3J0YW50OyBkaXNwbGF5Om5vbmU7fVxyXG5cclxuXHQuc2xpZGVyLWltYWdle3dpZHRoOjEwMCU7fSBcclxuXHRcclxuXHJcblx0I2JvdHRvbS1jb250ZW50e2Rpc3BsYXk6bm9uZTt9XHJcblx0I25kLXRvcGJhcntkaXNwbGF5Om5vbmU7fVxyXG5cdC50cG1ze2Rpc3BsYXk6bm9uZTt9XHJcblx0LnZpZXctdGVzdGltb25pYWxzLCAuY29tbXVuaXR5LWhlcm9lc3tkaXNwbGF5Om5vbmU7fVxyXG5cdFxyXG5cclxuXHQuY291cG9uc2xpZGVydmlldzo6YWZ0ZXJ7Y29udGVudDpcIlwiOyBkaXNwbGF5OmJsb2NrO31cclxuXHJcblx0XHJcblx0LyogTmF2aWdhdGlvbiBTa2lubmVyIEVkaXRhYmxlICovXHJcblx0Lm5kLW1vYmlsZS1zZWFyY2gtd2luZG93e3Bvc2l0aW9uOmZpeGVkOyB0b3A6LTUwJTsgbGVmdDowOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAlOyBiYWNrZ3JvdW5kOiAjNDQ0OyB6LWluZGV4OjEwMDA7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgcGFkZGluZzoxJTt9XHJcblxyXG5cclxuXHQjbmQtdG9wYmFye2JveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcblx0Ki5uZC1tb2JpbGUtYXBwe2JhY2tncm91bmQ6I0M4QzhDODsgYm9yZGVyLXJhZGl1czowIDAgNnB4IDZweDsgLW1vei1ib3JkZXItcmFkaXVzOjAgMCA2cHggNnB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6MCAwIDZweCA2cHg7IGJvcmRlci1sZWZ0OjNweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjsgYm9yZGVyLWJvdHRvbTozcHggc29saWQgJHByaW1hcnktY29sb3I7IGJvcmRlci1yaWdodDozcHggc29saWQgJHByaW1hcnktY29sb3I7IHBhZGRpbmc6NCU7fVxyXG5cdHRhYmxlLm5kLW1vYmlsZS1hcHAsIHRhYmxlLm5kLW1vYmlsZS1hcHAgdHIsIHRhYmxlLm5kLW1vYmlsZS1hcHAgdGQsIHRhYmxlLm5kLW1vYmlsZS1hcHAgdG5kLW0sb2IsIHRhYmxlLm5kLW1vYmlsZS1hcHAgdGFibGV7ZGlzcGxheTpibG9jazt9XHJcblx0LyogRE5OIENvbnRyb2wgT3ZlcnJpZGVzICovXHJcblx0LkNvbnRyb2xQYW5lbHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9XHJcblx0I25kLXRvcGJhcntwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzoyJTt9XHJcblx0I2luZm97cGFkZGluZzoyJTsgbWFyZ2luLWJvdHRvbTowO31cclxuXHQubmQtc2xpZGV3aW5kb3d7cG9zaXRpb246Zml4ZWQ7IHdpZHRoOjgwJSAhaW1wb3J0YW50OyBmbG9hdDpub25lICFpbXBvcnRhbnQ7IGxlZnQ6LTgwJTsgei1pbmRleDoxMDA7IGJhY2tncm91bmQ6ICMyMjI7IHotaW5kZXg6MTAwMDsgb3ZlcmZsb3c6c2Nyb2xsOyBoZWlnaHQ6MTAwJTsgYm94LXNpemluZzpib3JkZXItYm94OyBib3gtc2hhZG93Oi0yMHB4IDAgMjBweCAjMDAwIGluc2V0OyAtbW96LWJveC1zaGFkb3c6LTIwcHggMCAyMHB4ICMwMDAgaW5zZXQ7IC13ZWJraXQtYm94LXNoYWRvdzotMjBweCAwIDIwcHggIzAwMCBpbnNldDsgZGlzcGxheTpibG9jayAhaW1wb3J0YW50OyB0b3A6MDt9XHJcblx0Lm5kLXNsaWRld2luZG93IC5hdGNTaWRlRmlsdGVye2NvbG9yOiNGRkY7fVxyXG5cclxuXHRcclxuXHQubmQtbW9iaWxlaGlkZXtkaXNwbGF5Om5vbmU7fVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xyXG5cdCNtYXB2aWV3e21pbi13aWR0aDphdXRvICFpbXBvcnRhbnQ7fVxyXG5cdCNtYXBsZWdlbmR3cmFwcGVyICNhdXRvY29tcGxldGV7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgaGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgcGFkZGluZzoyJSAhaW1wb3J0YW50O31cclxuXHQjbWFwbGVnZW5kd3JhcHBlciAjYnRuTWFwU2VhcmNoe2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgd2lkdGg6MTAwJSAhaW1wb3J0YW50OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGhlaWdodDphdXRvICFpbXBvcnRhbnQ7IG92ZXJmbG93OmhpZGRlbjsgcGFkZGluZzoxJSAhaW1wb3J0YW50O31cdFxyXG5cdFxyXG59XHJcblxyXG5cclxuXHJcblxyXG4ucG9zdF90aHVtX2ltZyBpbWd7dmVydGljYWwtYWxpZ246bWlkZGxlO31cclxuXHJcbiNIb3VzZU1lbnVOYXYsICNIb3VzZU1lbnVOYXYgdWwsICNIb3VzZU1lbnVOYXYgbGksICNIb3VzZU1lbnVOYXYgYSB7ei1pbmRleDo1NTU1NSAhaW1wb3J0YW50O31cclxuI2ZhbmN5Ym94LXdyYXAsICNmYW5jeWJveC10bXAsICNmYW5jeWJveC1sb2FkaW5nLCAjanF1ZXJ5LWxpZ2h0Ym94IHt6LWluZGV4Ojk5OTk5OSAhaW1wb3J0YW50O31cclxuXHJcbi5wYWRkaW5nLXJhZGlve21hcmdpbjowIDIwcHggMTBweDt9XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHsucGFkZGluZy1yYWRpb3ttYXJnaW46MCAwIDIlO319XHJcblxyXG5cclxuI25kLW1vYmlsZS1vbmx5e2Rpc3BsYXk6bm9uZTt9XHJcblxyXG4jZG5uX1NpZGVQYW5le3dpZHRoOjMwJTsgZmxvYXQ6bGVmdDt9XHJcblxyXG5cclxuI2RodG1scG9pbnRlcntkaXNwbGF5OiBub25lO31cclxuIFxyXG5cclxuXHJcblxyXG5cclxuXHJcbi5kbm5BY3Rpb25NZW51e3otaW5kZXg6MTAgIWltcG9ydGFudDt9XHJcblxyXG5cclxuXHJcbi8vIEhpZGVzIHJlc3BvbnNpdmUgdGVzdCBwYW5lbCBvbiBsb2dnZWQgb3V0IHNpdGVcclxuI3Jlc3BvbnNpdmUtdGVzdC1wYW5lbC1uZXd7ZGlzcGxheTpub25lO31cclxuXHJcblxyXG5cclxuQGluY2x1ZGUgZGVza3RvcHtcclxuXHQuc2hhcmVkLXdpZHRoe3dpZHRoOjY1JTsgZmxvYXQ6cmlnaHQ7fVxyXG59XHJcblxyXG4vLyB1bCBsaXN0IGZpeFxyXG4uY3ctdWx7XHJcbiAgICBsaXN0LXN0eWxlOiBkaXNjO1xyXG59XHJcblxyXG4uY3ctdWwuY2lyY2xle1xyXG4gICAgbGlzdC1zdHlsZTpjaXJjbGU7XHJcbn1cclxuXHJcbi5jdy11bC5zcXVhcmV7XHJcbiAgICBsaXN0LXN0eWxlOmNpcmNsZTtcclxufVxyXG5cclxuLmN3LW9se1xyXG4gICAgbGlzdC1zdHlsZTpudW1lcmljO1xyXG59XHJcblxyXG4uY3ctb2wucm9tYW57XHJcbiAgICBsaXN0LXN0eWxlOnVwcGVyLXJvbWFuO1xyXG59XHJcblxyXG4uY3ctb2wucm9tYW4gdWx7XHJcbiAgICBsaXN0LXN0eWxlOmxvd2VyLXJvbWFuO1xyXG59XHJcblxyXG4uY3ctb2wudXBwZXItYWxwaGF7XHJcbiAgICBsaXN0LXN0eWxlOnVwcGVyLWFscGhhXHJcbn1cclxuXHJcbi5jdy1vbC51cHBlci1hbHBoYSBvbHtcclxuICAgIGxpc3Qtc3R5bGU6bG93ZXItYWxwaGE7XHJcbn1cclxuXHJcbi5jdy1vbC5sb3dlci1hbHBoYXtcclxuICAgIGxpc3Qtc3R5bGU6bG93ZXItYWxwaGE7XHJcbn0iLCIkcGhvbmUtd2lkdGg6IDc2N3B4O1xyXG4kdGFibGV0LXdpZHRoOiAxMDIzcHg7XHJcblxyXG5cclxuQG1peGluIHBob25lIHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICN7JHBob25lLXdpZHRofSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gdGFibGV0IHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHBob25lLXdpZHRoICsgMXB4fSkgYW5kIChtYXgtd2lkdGg6ICN7JHRhYmxldC13aWR0aH0pIHtcclxuICAgIEBjb250ZW50OyBcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0YWJsZXQtcGhvbmUge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogI3skdGFibGV0LXdpZHRofSkgeyBcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRhYmxldC1kZXNrdG9wIHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHBob25lLXdpZHRoICsgMXB4fSkgeyBcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGRlc2t0b3Age1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skdGFibGV0LXdpZHRoICsgMXB4fSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59ICIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBBbmltYXRpb24gRWZmZWN0cyAgICAgICAgICAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbiB7dHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IC1tb3otdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7fVxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLSAgTGlmdHMgRWxlbWVudCAxMHB4ICAtLS0tLS0tLS0tKi9cclxuLmh2ci1saWZ0e0BpbmNsdWRlIHRyYW5zaXRpb24oKTt9XHJcbi5odnItbGlmdDpob3Zlcnstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7fVxyXG5cclxuLyotLS0tLS0tLS0tICBMb3dlcnMgRWxlbWVudCAxMHB4ICAtLS0tLS0tLS0tKi9cclxuLmh2ci1zaW5re0BpbmNsdWRlIHRyYW5zaXRpb24oKTt9XHJcbi5odnItc2luazpob3Zlcnstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO31cclxuIFxyXG4vKi0tLS0tLS0tLS0gIFNocmluayAmIFJvdGF0ZSBFbGVtZW50ICAtLS0tLS0tLS0tKi9cclxuYS5zaHJpbmssIGEucm90YXRlIHtAaW5jbHVkZSB0cmFuc2l0aW9uKCk7fVxyXG5hLnNocmluazpob3ZlciB7dHJhbnNmb3JtOiBzY2FsZSguOSk7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSguOSk7IC1tcy10cmFuc2Zvcm06IHNjYWxlKC45KTsgLW8tdHJhbnNmb3JtOiBzY2FsZSguOSk7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguOSk7fVxyXG5hLnJvdGF0ZTpob3ZlciB7dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSguOSk7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSguOSk7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKC45KTsgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSguOSk7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSguOSk7fVxyXG5cclxuIiwiLyogU09DSUFMIE1FRElBIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuI2Rubl9Tb2NpYWxQYW5le3Bvc2l0aW9uOmZpeGVkOyByaWdodDowOyB0b3A6MjAlOyB6LWluZGV4OjYwO31cclxuI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhLWZhY2Vib29rLCAjZG5uX1NvY2lhbFBhbmUgI3NvY2lhbCAuZmFiLmZhLWZhY2Vib29rLWYge2JhY2tncm91bmQ6IzNCNTk5ODt9XHJcbiNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYS10d2l0dGVyLCAjZG5uX1NvY2lhbFBhbmUgI3NvY2lhbCAuZmFiLmZhLXR3aXR0ZXIge2JhY2tncm91bmQ6IzVFQTlERDt9XHJcbiNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYS1nb29nbGUsICNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYWIuZmEtZ29vZ2xlIHtiYWNrZ3JvdW5kOiNENzNEMzI7fSBcclxuI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhLWxpbmtlZGluLCAjZG5uX1NvY2lhbFBhbmUgI3NvY2lhbCAuZmFiLmZhLWxpbmtlZGluLWluIHtiYWNrZ3JvdW5kOiMwMTc3QjU7fSBcclxuI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhLXllbHAsICNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYWIuZmEteWVscCB7YmFja2dyb3VuZDojQzQxMjAwO30gXHJcbiNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYS1pbnN0YWdyYW0sICNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYWIuZmEtaW5zdGFncmFtIHtiYWNrZ3JvdW5kOiM4YTNhYjk7fSBcclxuI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhLXlvdXR1YmUsICNkbm5fU29jaWFsUGFuZSAjc29jaWFsIC5mYWIuZmEteW91dHViZSB7YmFja2dyb3VuZDojQ0MxODFFO31cclxuI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhLXJzcywgI2Rubl9Tb2NpYWxQYW5lICNzb2NpYWwgLmZhcy5mYS1yc3Mge2JhY2tncm91bmQ6I2YyNjUyMjt9XHJcbiNkbm5fU29jaWFsUGFuZSAjc29jaWFsIGEge2ZvbnQtc2l6ZToyNnB4OyB3aWR0aDo0NXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGZsb2F0OnJpZ2h0OyBjbGVhcjpyaWdodDsgYm94LXNpemluZzpib3JkZXItYm94OyBjb2xvcjojRkZGOyBwYWRkaW5nOjhweDsgZGlzcGxheTpibG9jazsgdHJhbnNpdGlvbjphbGwgMC4zcyBlYXNlLWluLW91dDsgLW1vei10cmFuc2l0aW9uOmFsbCAwLjNzIGVhc2UtaW4tb3V0OyAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3MgZWFzZS1pbi1vdXQ7fSBcclxuXHJcblxyXG5AaW5jbHVkZSBkZXNrdG9we1xyXG5cdCNkbm5fU29jaWFsUGFuZSAjc29jaWFsIGE6aG92ZXJ7cGFkZGluZy1yaWdodDoyMHB4OyB3aWR0aDo2NXB4OyB0ZXh0LWRlY29yYXRpb246bm9uZTt9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpe1xyXG5cdCNkbm5fU29jaWFsUGFuZXtkaXNwbGF5Om5vbmU7fVxyXG59XHJcblxyXG5AaW5jbHVkZSBwaG9uZXtcclxuICAgIC5waG9uZVNvY2lhbEJhcntwb3NpdGlvbjpmaXhlZDsgYm90dG9tOjA7IGxlZnQ6MDsgaGVpZ2h0OjEwJTsgd2lkdGg6MTAwJTsgei1pbmRleDoxMDAwMDt9XHJcblxyXG4gICAgI2Rubl9Tb2NpYWxQYW5le2JvdHRvbTowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IHRvcDphdXRvO31cclxuXHQjZG5uX1NvY2lhbFBhbmUgI3NvY2lhbGZvbnQgYXtmbG9hdDpsZWZ0O31cclxuXHQjZG5uX1NvY2lhbFBhbmUgI3NvY2lhbGZvbnQub25lLXNldCBhe3dpZHRoOjEwMCU7fVxyXG5cdCNkbm5fU29jaWFsUGFuZSAjc29jaWFsZm9udC50d28tc2V0IGF7d2lkdGg6NTAlO31cdFxyXG5cdCNkbm5fU29jaWFsUGFuZSAjc29jaWFsZm9udC50aHJlZS1zZXQgYXt3aWR0aDozMyU7fVxyXG5cdCNkbm5fU29jaWFsUGFuZSAjc29jaWFsZm9udC50aHJlZS1zZXQgYTpudGgtb2YtdHlwZSgyKXt3aWR0aDozNCU7fVxyXG5cdCNkbm5fU29jaWFsUGFuZSAjc29jaWFsZm9udC5mb3VyLXNldCBhe3dpZHRoOjI1JTt9XHJcblx0I2Rubl9Tb2NpYWxQYW5lICNzb2NpYWxmb250LmZpdmUtc2V0IGF7d2lkdGg6MjAlO31cclxuXHJcblx0Ly9OZXcgU29jaWFsIEJ1dHRvbnNcclxuXHQjdG9wLXNvY2lhbHtkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC1mbG93OiByb3cgd3JhcDsgbWFyZ2luOjQlIDA7fVxyXG5cdCN0b3Atc29jaWFsIGF7ZmxleDowIDEgYXV0bzsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtc2l6ZToyLjJlbTsgbWFyZ2luOjEwcHggMjBweDt9XHJcblxyXG59XHJcbiIsIlxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgSGVhZGVyIEVsZW1lbnQgU3R5bGVzICAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4ubW9iaWxlLW1lbnUtc3BhY2V7ZGlzcGxheTpub25lO31cclxuXHJcbkBpbmNsdWRlIHRhYmxldHtcclxuXHQjY29udGVudGhlYWRlcntoZWlnaHQ6YXV0bzsgdGV4dC1hbGlnbjpjZW50ZXI7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgd2lkdGg6MTAwJTt9XHRcclxufVxyXG5cclxuLy9UYWJsZXQgYW5kIFBob25lXHJcbkBpbmNsdWRlIHRhYmxldC1waG9uZXtcclxuXHQjZG5uX0hlYWRlckNvbnRhY3RQYW5le2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgbWFyZ2luOjAgYXV0bzsgZGlzcGxheTpibG9jazt9XHJcblx0I2Rubl9kbm5Mb2dvX2ltZ0xvZ297ZmxvYXQ6bm9uZSAhaW1wb3J0YW50OyBtYXJnaW46MCBhdXRvOyBkaXNwbGF5OmJsb2NrO31cclxuXHRcclxufVxyXG5cclxuLy9QaG9uZSBPbmx5XHJcbkBpbmNsdWRlIHBob25le1xyXG5cdCNjb250ZW50aGVhZGVye3BhZGRpbmctdG9wOjc1cHggIWltcG9ydGFudDt9XHJcblx0I2Rubl9kbm5Mb2dvX2ltZ0xvZ297bWF4LXdpZHRoOjYwJTsgcGFkZGluZy10b3A6OTBweDt9XHJcblx0I2hlYWRlcmNvbnRhY3R7ZGlzcGxheTogbm9uZTt9XHJcbn0gICIsIiRhY3Rpb25iYXItd2lkdGg6IDk4MHB4ICFkZWZhdWx0O1xyXG5cclxuI2Rubl9BY3Rpb25CYXJQYW5lIC5ETk5Nb2R1bGVDb250ZW50IHtvdmVyZmxvdzogdmlzaWJsZTt9XHJcblxyXG4jbmQtYWN0aW9uYmFye2JhY2tncm91bmQ6JHByaW1hcnktY29sb3I7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHotaW5kZXg6IDE1OyBwb3NpdGlvbjogZml4ZWQ7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7fVxyXG4jbmQtYWN0aW9uYmFyIC5jb250YWluZXJ7bWF4LXdpZHRoOiRhY3Rpb25iYXItd2lkdGg7IHdpZHRoOjEwMCU7IG1hcmdpbjowIGF1dG87IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHBhZGRpbmc6MTBweCAyMHB4O30gXHJcbiNkbm5fQWN0aW9uQmFyUGFuZXtkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGZsZXgtZGlyZWN0aW9uOiByb3c7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7fSBcclxuI25kLWFjdGlvbmJhciAjZG5uX0FjdGlvbkJhclBhbmUgLkRubk1vZHVsZXtmbGV4OjAgMSBhdXRvO31cclxuXHJcbkBpbmNsdWRlIHRhYmxldHtcclxuXHQjbmQtYWN0aW9uYmFye21hcmdpbi10b3A6NTBweDsgcGFkZGluZzowOyBib3JkZXItdG9wOiBzb2xpZCAjZmZmIDJweDt9IFxyXG5cdCNuZC1hY3Rpb25iYXIgLmNvbnRhaW5lcntwYWRkaW5nOjEwcHggMzBweCAhaW1wb3J0YW50O31cclxufSBcclxuXHJcbkBpbmNsdWRlIHBob25leyBcclxuXHQjbmQtYWN0aW9uYmFye2Rpc3BsYXk6bm9uZTt9IFxyXG59IiwiLy8gTWFpbiBOYXYgQmFyXHJcbiRuYXYtd2lkdGg6IDk4MHB4ICFkZWZhdWx0O1xyXG4gXHJcbiRuYXYtZHJvcGRvd24tYmc6ICNmZmY7XHJcblxyXG4jaGVhZGVyIHt3aWR0aDoxMDAlOyBtYXgtd2lkdGg6OTgwcHg7IG1hcmdpbjowIGF1dG87fVxyXG5cclxuI2NvbnRlbnRuYXYge2hlaWdodDo1MHB4OyB3aWR0aDokbmF2LXdpZHRoOyB6LWluZGV4OiAxMDsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuI2NvbnRlbnRuYXYgI2Rubk1lbnUgdWwudG9wTGV2ZWx7ZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7fVxyXG4jY29udGVudG5hdiAjZG5uTWVudSBhIHt0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjojZmZmOyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOjFlbTsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IHRyYW5zaXRpb246IGFsbCAuMjVzIGVhc2U7IGZvbnQtd2VpZ2h0OjcwMDt9XHJcbiNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaSB7bGluZS1oZWlnaHQ6NTBweDsgbGlzdC1zdHlsZS10eXBlOiBub25lOyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6YmxvY2s7IHRleHQtYWxpZ246IGNlbnRlcjsgZmxleDogMSAxIGF1dG87fVxyXG4jY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGl7dGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O31cclxuXHJcbiNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbHtiYWNrZ3JvdW5kOiRuYXYtZHJvcGRvd24tYmc7fVxyXG4jY29udGVudG5hdiAjZG5uTWVudSAuc2luZ2xlLWNvbHVtbiBsaSBhLCAjY29udGVudG5hdiAjZG5uTWVudSAuZG91YmxlLWNvbHVtbiBsaSBhe2JveC1zaXppbmc6IGJvcmRlci1ib3g7IHBhZGRpbmc6MCAxMHB4O31cclxuXHJcblxyXG4jY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwsICNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodCB1bCB7ZGlzcGxheTogbm9uZTsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogYXV0bzsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB6LWluZGV4OiAxMjEwOyBsZWZ0OjA7IC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpOyAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgYm94LXNoYWRvdzogMHB4IDBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpO31cclxuXHJcblxyXG4vLyBUYXJnZXQgRGVza3RvcCBFeGNsdXNpdmVseVxyXG5AaW5jbHVkZSBkZXNrdG9wIHtcclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgdWwgbGl7dGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7fVxyXG5cclxuXHQjY29udGVudG5hdiB7bWFyZ2luOjAgYXV0bzt9IFxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IHVsLnRvcExldmVse2Rpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjt9XHJcbiAgICAjY29udGVudG5hdiAjZG5uTWVudSB1bC50b3BMZXZlbCBsaXtmbGV4OjEgMSBhdXRvOyB0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG5cclxuXHQvLyAvKiBEZWZhdWx0IEhvdmVyIEVmZmVjdHMgKi9cclxuXHQvLyAjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGk6aG92ZXIgPiBhe2NvbG9yOiNDOTE5MTk7fVxyXG5cdC8vICNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaSBhOmhvdmVye2NvbG9yOiNDOTE5MTk7fVxyXG5cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwsICNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodCB1bHtkaXNwbGF5OiBub25lOyBvcGFjaXR5OiAwOyB0b3A6MzVweDsgdHJhbnNpdGlvbjogYWxsIC4yNXMgZWFzZTsgd2lkdGg6MjgwcHg7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodCB1bHt0b3A6MDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpLmhhc2NoaWxkOmhvdmVyIC5zdWJMZXZlbCwgI2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpLmhhc2NoaWxkOmFjdGl2ZSAuc3ViTGV2ZWwsICNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaS5oYXNjaGlsZDpmb2N1cyAuc3ViTGV2ZWwge29wYWNpdHk6IDE7IHRvcDo1MHB4OyBkaXNwbGF5OmJsb2NrO31cclxuIFxyXG5cdC8qIFNpbmdsZSBDb2x1bW4gU3R5bGVzICovXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnNpbmdsZS1jb2x1bW57d2lkdGg6MjYwcHg7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zaW5nbGUtY29sdW1uIGxpIGF7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzg4ODt9XHJcblx0LyogRG91YmxlIENvbHVtbiBTdHlsZXMgKi8gXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLmRvdWJsZS1jb2x1bW57fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbC5kb3VibGUtY29sdW1uIHVse2Rpc3BsYXk6IGZsZXg7IGZsZXgtZmxvdzogcm93IHdyYXA7IHdpZHRoOjQzMHB4O31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwuZG91YmxlLWNvbHVtbiBsaXtmbGV4OjAgMSA1MCUgIWltcG9ydGFudDt9IFxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbC5kb3VibGUtY29sdW1uIGxpIGF7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzg4ODsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjODg4O31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuZG91YmxlLWNvbHVtbiBsaSBhOm50aC1vZi10eXBlKGV2ZW4pe2JvcmRlcjowO31cclxuXHQvKiBUcmlwbGUgQ29sdW1uIFN0eWxlcyAqL1xyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50cmlwbGUtY29sdW1ue3dpZHRoOjYxMHB4O30gXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRyaXBsZS1jb2x1bW4gdWwgbGl7ZmxleDowIDEgYXV0bzt9IFxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50cmlwbGUtY29sdW1uIGxpIGF7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzg4ODsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjODg4O31cclxuXHRcclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGkuaGFzY2hpbGQ6aG92ZXIgPiAuc3ViTGV2ZWxSaWdodCB1bHtkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzogcm93IHdyYXA7IHZpc2liaWxpdHk6IHZpc2libGU7IG9wYWNpdHk6IDE7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaS5oYXNjaGlsZCAuc3ViTGV2ZWxSaWdodHtwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MTAwJTt9XHJcblx0IFxyXG5cdC5uYXYtc2l6ZXJ7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50OyBsZWZ0Oi05OTk5cHggIWltcG9ydGFudDt9XHJcblx0ICBcclxuXHQjbmQtbWVudWJhci5maXhlZHtwb3NpdGlvbjpmaXhlZDsgd2lkdGg6MTAwJTsgdG9wOjA7IGxlZnQ6MDt9XHJcblxyXG4gXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIHVse3dpZHRoOmF1dG87fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaSBhe2JveC1zaXppbmc6Ym9yZGVyLWJveDt9XHJcblxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zaW5nbGUtY29sdW1uIGxpOmxhc3Qtb2YtdHlwZSBhe2JvcmRlcjpub25lO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc2luZ2xlLWNvbHVtbiBsaXt3aWR0aDoxMDAlO31cclxuXHRcdFxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5kb3VibGUtY29sdW1uIGxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBjbGVhcjpub25lOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHRcclxuXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLnRyaXBsZS1jb2x1bW4gbGl7ZGlzcGxheTp0YWJsZS1jZWxsOyBjbGVhcjpub25lOyB0ZXh0LWFsaWduOmNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94O31cclxuXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIC5zdWJMZXZlbFJpZ2h0LnRyaXBsZS1jb2x1bW4gIHVse3dpZHRoOjEwMCU7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodC50cmlwbGUtY29sdW1uIGxpIGF7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCAuc3ViTGV2ZWxSaWdodC50cmlwbGUtY29sdW1uIGxpe3dpZHRoOjMzJTt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIC5zdWJMZXZlbFJpZ2h0LnRyaXBsZS1jb2x1bW4gbGk6bnRoLW9mLXR5cGUoM24rMil7d2lkdGg6MzQlO31cclxuXHJcblxyXG5cclxuXHQuY2xvc2Utd2luZG93e2Rpc3BsYXk6bm9uZTt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpLmhhc2NoaWxkOmhvdmVyIC5zdWJMZXZlbHtkaXNwbGF5OmJsb2NrO31cclxuXHJcblx0Ly8gRml4IGZvciBsYXN0IG1lbnUgaXRlbSBkcm9wZG93bnMgZ2V0dGluZyBjdXQgb2ZmXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgPiB1bCBsaTpudGgtbGFzdC1vZi10eXBlKC1uKzMpIC5zdWJMZXZlbCB7cmlnaHQ6MDsgbGVmdDphdXRvO31cclxuXHRcclxufVxyXG5cclxuQGluY2x1ZGUgdGFibGV0e1xyXG5cdCNjb250ZW50bmF2e2Rpc3BsYXk6IGJsb2NrOyBjbGVhcjpib3RoOyB3aWR0aDoxMDAlOyBiYWNrZ3JvdW5kOiMyNzI3Mjc7IHBvc2l0aW9uOiBmaXhlZDsgdG9wOjA7IGxlZnQ6MDsgei1pbmRleDo5OTk5OTk7fVxyXG5cdC8vI2NvbnRlbnRuYXYuZml4ZWR7cG9zaXRpb246IGZpeGVkOyB0b3A6MDsgbGVmdDowO31cclxuXHJcblx0dWwudG9wTGV2ZWx7ZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaTpob3ZlciA+IGF7dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbHt3aGl0ZS1zcGFjZTogbm93cmFwO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgdWwsIC5zdWJMZXZlbFJpZ2h0LmRvdWJsZS1jb2x1bW4gdWx7ZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWluLXdpZHRoOiAxMDBweDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLCAjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgdWx7ZGlzcGxheTogbm9uZTsgdHJhbnNpdGlvbjogYWxsIC4ybXMgZWFzZTsgd2lkdGg6MTYwcHg7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaS5oYXNjaGlsZDpob3ZlciAuc3ViTGV2ZWwsICNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaS5oYXNjaGlsZDphY3RpdmUgLnN1YkxldmVsLCAjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuaGFzY2hpbGQ6Zm9jdXMgLnN1YkxldmVse2Rpc3BsYXk6IGJsb2NrO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuZG91YmxlLWNvbHVtbiBsaXt3aWR0aDphdXRvO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGkuaGFzY2hpbGQgPiAuc3ViTGV2ZWxSaWdodCB1bHtsZWZ0OjEzMHB4OyB0b3A6MDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIGxpLmhhc2NoaWxkOmhvdmVyID4gLnN1YkxldmVsUmlnaHQgdWx7ZGlzcGxheTpmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBiYWNrZ3JvdW5kOiMyYTJhMmE7IGxlZnQ6MTQ2cHg7fVxyXG5cclxuXHQjYm90dG9tbmF2IHVsLnRvcExldmVsLCAjbWVudUJyYW5kcyB1bC50b3BMZXZlbHtkaXNwbGF5OmJsb2NrO31cclxuXHJcblx0Ly8gRml4IGZvciBsYXN0IG1lbnUgaXRlbSBkcm9wZG93bnMgZ2V0dGluZyBjdXQgb2ZmXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgPiB1bCBsaTpudGgtbGFzdC1vZi10eXBlKC1uKzMpIC5zdWJMZXZlbCB7cmlnaHQ6MDsgbGVmdDphdXRvO31cclxufVxyXG5cclxuLy8gVGFyZ2V0IFRhYmxldCBhbmQgUGhvbmUgRXhjbHVzaXZlbHlcclxuQGluY2x1ZGUgdGFibGV0LXBob25leyBcclxuXHQubmF2LXNwYWNlcntkaXNwbGF5Om5vbmU7fVxyXG5cdC8vI25kLWJhY2tncm91bmR7cGFkZGluZy10b3A6NjBweDt9XHJcblxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zaW5nbGUtY29sdW1uLCAjY29udGVudG5hdiAjZG5uTWVudSAuZG91YmxlLWNvbHVtbiwgI2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRyaXBsZS1jb2x1bW57d2lkdGg6YXV0bzt9IFxyXG5cclxufVxyXG5cclxuLy8gVGFyZ2V0IFBob25lIE9ubHlcclxuQGluY2x1ZGUgcGhvbmV7XHJcblx0I25kLWJhY2tncm91bmR7cGFkZGluZy10b3A6MDt9XHJcblx0Ly9QcmV2ZW50cyBOYXYgRnJvbSBMb2FkaW5nIEZpcnN0XHJcblx0I2NvbnRlbnRuYXZ7ZGlzcGxheTpub25lO31cclxuXHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgdWwudG9wTGV2ZWx7ZGlzcGxheTogYmxvY2s7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaXt0ZXh0LWFsaWduOiBsZWZ0O31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuZG91YmxlLWNvbHVtbiBsaSBhe2JvcmRlci1yaWdodDogbm9uZTt9XHJcblxyXG5cdC5uZC1tb2JpbGUtd2luZG93ICNjb250ZW50bmF2e2Rpc3BsYXk6YmxvY2s7fSBcclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWx7bGlzdC1zdHlsZTpub25lO21hcmdpbjowIDAgLTFweDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpe2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7ZmxvYXQ6bm9uZX1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuc2VsZWN0ZWQ6Zmlyc3QtY2hpbGQgYXt0ZXh0LXNoYWRvdzowIDAgMnB4ICNGRkZ9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsLCAjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgdWx7ZGlzcGxheTpub25lO2xpbmUtaGVpZ2h0OjEuMmVtO2JvcmRlcjpub25lO3BhZGRpbmc6MTBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmU7bGVmdDphdXRvIWltcG9ydGFudDt0b3A6aW5oZXJpdDt3aWR0aDppbmhlcml0O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOmF1dG87cGFkZGluZzowO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWw6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDowOyB0b3A6MDsgYmFja2dyb3VuZDojRkZGOyBvcGFjaXR5Oi4yOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgei1pbmRleDotMTsgY29udGVudDpcIlwiO31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGkgYXtwYWRkaW5nLWxlZnQ6MTVweH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgdWwsI2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIC5zdWJMZXZlbFJpZ2h0IHVse2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7d2lkdGg6aW5oZXJpdDtkaXNwbGF5OmJsb2NrIWltcG9ydGFudH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgbGkgYXtwYWRkaW5nLWxlZnQ6NTBweH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgLnN1YkxldmVsUmlnaHQgbGkgYXtwYWRkaW5nLWxlZnQ6NzBweH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgLnN1YkxldmVsUmlnaHQgLnN1YkxldmVsUmlnaHQgLnN1YkxldmVsUmlnaHQgbGkgYXtwYWRkaW5nLWxlZnQ6OTBweH1cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkgYSwjY29udGVudG5hdiAjZG5uTWVudSAudG9wTGV2ZWwgbGkuc2VsZWN0ZWQgPiBhe3RleHQtc2hhZG93Om5vbmUhaW1wb3J0YW50fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC50b3BMZXZlbCBsaSBhOmZpcnN0LW9mLXR5cGV7Ym9yZGVyLXRvcDpub25lfVx0XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgYXtmb250LXNpemU6MS41ZW07IGNvbG9yOiNGRkY7fVxyXG5cdFxyXG4gICAgI2NvbnRlbnRuYXYgI2Rubk1lbnUgLnRvcExldmVsIGxpIGE6bm90KC5tb2JpbGUtbmF2LWV4cGFuZCl7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGRkY7IHBhZGRpbmc6IDE1cHggMTBweCAhaW1wb3J0YW50OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDpub3JtYWw7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbFJpZ2h0IGxpIGE6bm90KC5tb2JpbGUtbmF2LWV4cGFuZCl7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGRkY7IHBhZGRpbmc6IDE1cHggMjBweCAhaW1wb3J0YW50OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDpub3JtYWw7fVxyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5zdWJMZXZlbCBsaSBhOm5vdCgubW9iaWxlLW5hdi1leHBhbmQpOjpiZWZvcmV7Y29udGVudDpcIuKAolwiOyBtYXJnaW4tcmlnaHQ6MTBweDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLm1vYmlsZS1uYXYtZXhwYW5ke2ZvbnQtc2l6ZToxLjVlbSAhaW1wb3J0YW50OyBwb3NpdGlvbjphYnNvbHV0ZTsgcmlnaHQ6MDsgYm9yZGVyOm5vbmUgIWltcG9ydGFudDsgcGFkZGluZzowIDE1cHggIWltcG9ydGFudDsgei1pbmRleDoxMDsgZm9udC13ZWlnaHQ6NDAwICFpbXBvcnRhbnQ7IGN1cnNvcjpwb2ludGVyOyB0b3A6MDsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6NjRweDt9XHJcblx0XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLm1vYmlsZS1uYXYtZXhwYW5kIC5mYXtsaW5lLWhlaWdodDo2NHB4O31cclxuXHRcclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAubW9iaWxlLW5hdi1leHBhbmQuZmEtYW5nbGUtZG93bntvcGFjaXR5Oi44O31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAubW9iaWxlLW5hdi1leHBhbmQuZmEtYW5nbGUtdXB7b3BhY2l0eToxO31cclxuXHQvKiNjb250ZW50bmF2OjpiZWZvcmV7Y29udGVudDpcIk1lbnVcIjsgZm9udC1zaXplOjEuMjVlbTsgYm9yZGVyLWJvdHRvbToycHggc29saWQgI0ZGRjsgY29sb3I6I0ZGRjsgZm9udC13ZWlnaHQ6NzAwOyBwYWRkaW5nOjIlOyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IGRpc3BsYXk6YmxvY2s7IG1hcmdpbi10b3A6MiU7IH0qL1xyXG5cdCNjb250ZW50bmF2ICNkbm5NZW51IC5tb2JpbGUtbmF2LWV4cGFuZDo6YmVmb3Jle31cclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuZmEtYW5nbGUtdXB7Y29sb3I6I0ZGRiAhaW1wb3J0YW50OyBib3JkZXItcmFkaXVzOjZweCA2cHggMCAwOyAtbW96LWJvcmRlci1yYWRpdXM6NnB4IDZweCAwIDA7IC13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHggNnB4IDAgMDt9XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIC5zdWJMZXZlbFJpZ2h0e2Rpc3BsYXk6bm9uZTt9XHJcblx0XHJcblx0Lm1vYmlsZS1uYXYtZXhwYW5ke2NvbG9yOiNGRkYgIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6NTBweDt9XHJcblx0Lm1vYmlsZS1uYXYtZXhwYW5kLmljb24tYW5nbGUtdXA6OmFmdGVye3dpZHRoOjEwMCU7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IGJvdHRvbTotMjBweDsgaGVpZ2h0OjMwcHg7IGNvbnRlbnQ6XCJcIjt9XHJcblx0XHJcblx0I2NvbnRlbnRuYXYgI2Rubk1lbnUgLnN1YkxldmVsIC5zdWJMZXZlbFJpZ2h0IHVse2JhY2tncm91bmQ6IzM3MzczNyAhaW1wb3J0YW50O31cclxuXHRcclxuXHQjY29udGVudG5hdiAjZG5uTWVudSAuc3ViTGV2ZWwgbGkgYSB7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGRkY7IGNvbG9yOiNGRkY7fVxyXG5cclxuXHQubW9iaWxlLW1lbnUtdGl0bGV7Zm9udC1zaXplOjI0cHg7IGNvbG9yOiNGRkY7IGZvbnQtd2VpZ2h0OjcwMDsgcGFkZGluZzo1LjUlIDAgNS41JSAyMCVcdDsgYmFja2dyb3VuZDojNjY2OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7IH1cclxuXHJcblx0I3RhYmxldE1lbnVCdG4gLmZhe2ZvbnQtc2l6ZToyMHB4OyBjb2xvcjojQUFBO31cdFxyXG5cdFxyXG5cdC5tbS1jbGlja2VkI3RhYmxldE1lbnVCdG57b3BhY2l0eToxO31cclxuXHQubW0tY2xpY2tlZCN0YWJsZXRNZW51QnRuIC5mYXtjb2xvcjojRkZGO31cclxuXHJcblx0I2NvbnRlbnRuYXZ7aGVpZ2h0OjEwMCU7fVxyXG5cdCNjb250ZW50bmF2IGF7Y29sb3I6I0ZGRjt9XHJcbn0iLCJcclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuPSAgICAgICAgICAgIEhvbWVwYWdlIENvbnRlbnQgU3R5bGVzICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuI2hvbWV0ZXh0e31cclxuI2hvbWV0ZXh0LnNlY29uZGFyeUhQVCB7fVxyXG5cclxuI2hvbWV0ZXh0IGgxLCAjaG9tZXRleHQgaDIge2NvbG9yOiNGRkY7IGZvbnQtc2l6ZToyZW07IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiNob21ldGV4dCwgI2hvbWV0ZXh0IGE6aG92ZXIge2NvbG9yOiNGRkY7fVxyXG4jaG9tZXRleHQgcCB7bWFyZ2luOjAgMCAxMHB4OyBjbGVhcjpib3RoOyBsaW5lLWhlaWdodDoyMHB4O31cclxuI2hvbWV0ZXh0IGEge2ZvbnQtd2VpZ2h0OjcwMDt9XHJcbiNob21ldGV4dCB1bCB7bWFyZ2luOjAgMCAwIDUwcHg7IGNsZWFyOmJvdGg7fVxyXG4jaG9tZXRleHQgdWwgbGkge21hcmdpbi1ib3R0b206MTBweDt9XHJcbiNob21ldGV4dCB1bC50d28tcm93IGxpIHt3aWR0aDo0NSU7IGZsb2F0OmxlZnQ7IG1hcmdpbi1yaWdodDoyJX1cclxuI2hvbWV0ZXh0IHVsLnRocmVlLXJvdyBsaSB7d2lkdGg6MzElOyBmbG9hdDpsZWZ0OyBtYXJnaW4tcmlnaHQ6MiU7fVxyXG4jaG9tZXRleHQgdWwuZm91ci1yb3cgbGkge3dpZHRoOjIzJTsgZmxvYXQ6bGVmdDsgbWFyZ2luLXJpZ2h0OjIlO31cclxuI2hvbWV0ZXh0IHVsLmZpdmUtcm93IGxpIHt3aWR0aDoxOCU7IGZsb2F0OmxlZnQ7IG1hcmdpbi1yaWdodDoyJTt9XHJcblxyXG5cclxuLyogRGVmdWFsdCBCdXR0b24gSG92ZXIgTWl4aW4gKi9cclxuQG1peGluIGJ1dHRvbi1iZygkYmcpIHtcclxuXHRiYWNrZ3JvdW5kOiAkYmc7XHJcblx0Jjpob3ZlciB7XHJcblx0ICBiYWNrZ3JvdW5kOmRhcmtlbigkYmcsOCUpO1xyXG5cdCAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHR9XHJcblx0JjphY3RpdmUge1xyXG5cdCAgYmFja2dyb3VuZDpkYXJrZW4oJGJnLDI1JSk7XHJcblx0fSBcclxuICB9XHJcblxyXG5cclxuLy9UYWJsZXQgT25seVxyXG5AaW5jbHVkZSB0YWJsZXR7XHJcblx0I2hvbWV0ZXh0e3BhZGRpbmc6MiU7IGZsb2F0Om5vbmU7IHdpZHRoOmF1dG99XHJcbn1cclxuXHJcblxyXG4vL1Bob25lIE9ubHlcclxuQGluY2x1ZGUgcGhvbmV7XHJcblx0I2hvbWV0ZXh0e3BhZGRpbmc6MDsgbWFyZ2luOjA7IHdpZHRoOmF1dG87IGZsb2F0Om5vbmU7fVxyXG5cdCNob21ldGV4dCB1bCBsaSwgI2hvbWV0ZXh0IHVsLnR3by1yb3cgbGksICNob21ldGV4dCB1bC50aHJlZS1yb3cgbGksICNob21ldGV4dCB1bC5mb3VyLXJvdyBsaSwgI2hvbWV0ZXh0IHVsLmZpdmUtcm93IGxpe3dpZHRoOmF1dG87IGZsb2F0Om5vbmU7fVxyXG59XHJcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBGb290ZXIgRWxlbWVudCBTdHlsZXMgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbiNCb3R0b21Gb290ZXJ7Zm9udC1zaXplOi43NWVtOyBjb2xvcjojRkZGOyBkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyBmbGV4LWRpcmVjdGlvbjogcm93OyBmbGV4LXdyYXA6IHdyYXA7fVxyXG4jRm9vdGVyUGFuZTFDb250YWluZXIsICNGb290ZXJQYW5lMkNvbnRhaW5lciwgI0Zvb3RlclBhbmUzQ29udGFpbmVyLCAjRm9vdGVyUGFuZTRDb250YWluZXIge2ZsZXg6MCAxIGF1dG87IHBhZGRpbmc6MTBweCAwOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IG1hcmdpbjoxJSAxJSAxJSAwO31cclxuXHJcbiNCb3R0b21Gb290ZXIgI0VudHJ5Rm9ybSAuY2FwdGNoYSBpbnB1dHttYXJnaW4tcmlnaHQ6MTBweDt9XHJcblxyXG4jQm90dG9tRm9vdGVyIGEsICNCb3R0b21Gb290ZXIgYTpob3Zlcntjb2xvcjojRkZGOyB0ZXh0LWRlY29yYXRpb246bm9uZTt9XHJcblxyXG4jQm90dG9tRm9vdGVyIGgyIHsgY29sb3I6I0ZGRjsgZm9udC1zaXplOjEuMTI1ZW07IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgbWFyZ2luLWJvdHRvbToxMHB4OyBmb250LXdlaWdodDo3MDA7fVxyXG4jTG9jYXRpb25XaWRnZXQgaDJ7ZGlzcGxheTpub25lO31cclxuI0JvdHRvbUZvb3RlciBwIHsgbWFyZ2luLWJvdHRvbTo1cHggIWltcG9ydGFudDt9XHJcblxyXG4jQm90dG9tRm9vdGVyIC5mb290ZXJzZW8gcCB7IGxpbmUtaGVpZ2h0OjE4cHggIWltcG9ydGFudDt9IFxyXG5cclxuI0JvdHRvbUZvb3RlciB1bCB7bWFyZ2luOjAgIWltcG9ydGFudDt9XHJcbiNCb3R0b21Gb290ZXIgdWwgbGksIC5leHRyYS1saW5rcyBsaXtsaXN0LXN0eWxlOm5vbmUgIWltcG9ydGFudDsgbWFyZ2luLWJvdHRvbTo1cHggIWltcG9ydGFudDt9XHJcblxyXG4jQm90dG9tRm9vdGVyICNzb2NpYWxmb250IHtmbG9hdDpsZWZ0OyBjbGVhcjpib3RoOyB9XHJcbiNCb3R0b21Gb290ZXIgI3NvY2lhbGZvbnQgLmZhLCAjQm90dG9tRm9vdGVyICNzb2NpYWxmb250IC5mYWJ7ZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBpbmhlcml0OyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgbWFyZ2luLXJpZ2h0OjVweDsgZm9udC1zaXplOjIycHggIWltcG9ydGFudDsgdmVydGljYWwtYWxpZ246dGV4dC10b3A7IGxpbmUtaGVpZ2h0OjIycHggIWltcG9ydGFudDsgd2lkdGg6MzBweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmc6NXB4IDA7IH1cclxuI0JvdHRvbUZvb3RlciB1bCBsaSwgLmV4dHJhLWxpbmtzIGxpe2xpc3Qtc3R5bGU6bm9uZSAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOjVweCAhaW1wb3J0YW50O31cclxuI0JvdHRvbUZvb3RlciAubG9jd2lkZ2V0LWVtYWlse2Rpc3BsYXk6bm9uZTt9IFxyXG5cclxuXHJcblxyXG4vL0Zvb3RlciBDb250YWN0IEZvcm1cclxuI0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIHRhYmxle3dpZHRoOjEwMCU7fSBcclxuaW5wdXQubW9iaWxlLWM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiNmZmYgIWltcG9ydGFudDsgb3BhY2l0eTogLjY7fSBcclxudGV4dGFyZWEubW9iaWxlLWM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6I2ZmZiAhaW1wb3J0YW50OyBvcGFjaXR5OiAuNjt9XHJcbmlucHV0Lm1vYmlsZS1jLCB0ZC5tb2JpbGUtYywgdGV4dGFyZWEubW9iaWxlLWMsIHNlbGVjdC5tb2JpbGUtY3t3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IHBhZGRpbmc6MSUgMDsgYm94LXNpemluZzpib3JkZXItYm94O31cclxudGQubW9iaWxlLWN7ZGlzcGxheTpibG9jazsgbWFyZ2luOjAuNSUgMDt9XHJcbmlucHV0Lm1vYmlsZS1jLCB0ZXh0YXJlYS5tb2JpbGUtYywgI0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIC5jYXB0Y2hhIGlucHV0e3BhZGRpbmc6MSU7IGJvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpOyBjb2xvcjojZmZmO31cclxuLk5vcm1hbFJlZCBhW2hyZWYqPVwiY3RsL2xpY2Vuc2VcIl17ZGlzcGxheTpub25lO31cclxuI0JvdHRvbUZvb3RlciB0ZXh0YXJlYXtmb250LWZhbWlseTpBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOjEzcHg7fVxyXG4jQm90dG9tRm9vdGVyIGFbaWQqPVwibG5rU2F2ZVwiXXtkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjIlOyBvdXRsaW5lOjFweCBzb2xpZCAjOTk5OyBjb2xvcjojNjY2OyBvdXRsaW5lLW9mZnNldDozcHg7IHdpZHRoOjQyJTsgdGV4dC1hbGlnbjpjZW50ZXI7IHBvc2l0aW9uOnJlbGF0aXZlOyBsZWZ0OjNweDsgYmFja2dyb3VuZDojRkZGOyB0cmFuc2l0aW9uOmFsbCAzMDBtcyBlYXNlLWluLW91dDt9XHJcbiNCb3R0b21Gb290ZXIgLkR5bmFtaWNGb3Jtc19TYXZlRm9ybURpdnt3aWR0aDo2MCU7IHdoaXRlLXNwYWNlLWNvbGxhcHNlOmRpc2NhcmQ7IG1hcmdpbi10b3A6MSU7fVxyXG4jQm90dG9tRm9vdGVyIGFbaWQqPVwibG5rU2F2ZVwiXTpob3Zlcntjb2xvcjojRkZGOyBvdXRsaW5lOjFweCBzb2xpZCAjRkZGOyBvdXRsaW5lLW9mZnNldDowO31cclxuI0JvdHRvbUZvb3RlciAuRHluYW1pY0Zvcm1zX1N1bW1hcnl7YmFja2dyb3VuZDojOTkwMDAwOyBjb2xvcjojRkZGOyBwYWRkaW5nOjEwcHg7fVxyXG4jQm90dG9tRm9vdGVyIC5EeW5hbWljRm9ybXNfU3VtbWFyeSB1bHtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTt9XHJcbiNCb3R0b21Gb290ZXIgLk5vcm1hbFJlZHtjb2xvcjojOTkwMDAwOyBmb250LXdlaWdodDo3MDA7fVxyXG5cclxuLnRpbnQgZGl2W2lkKj1cIl9Nb2R1bGVDb250ZW50XCJde3Bvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4OjU7fVxyXG4udGludDpiZWZvcmUge2NvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgYmFja2dyb3VuZDogcmdiYSgwLDI1NSwyNTUsIDAuNSk7IHRyYW5zaXRpb246IGFsbCAuM3MgbGluZWFyO31cclxuLnQyOmJlZm9yZSB7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDk1LCAwLjkpOyB9XHJcbiNCb3R0b21Gb290ZXIgLmNhcHRjaGF7Y29sb3I6I0ZGRjt9XHJcblxyXG4vKiBCT1RUT00gQ09OVEFDVCBGT1JNXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4ubG9jd2lkZ2V0LWZheCB7ZGlzcGxheTpub25lO31cclxuI0JvdHRvbUZvb3RlciAjRW50cnlGb3JtIC5jYXB0Y2hhIGlucHV0e3RvcDowICFpbXBvcnRhbnQ7fVxyXG4jQm90dG9tRm9vdGVyICNFbnRyeUZvcm0gLmNhcHRjaGEgaW1nW3NyYyo9XCIvSW1hZ2VDaGFsbGVuZ2UuY2FwdGNoYS5hc3B4P1wiXSArIGRpdnt2aXNpYmlsaXR5OmhpZGRlbiAhaW1wb3J0YW50OyBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9XHJcbiNCb3R0b21Gb290ZXIgZGl2W2lkKj1cImxibEFscmVhZHlFeGlzdHNcIl0uTm9ybWFsUmVke2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O31cclxuXHJcbi8vIERlc2t0b3AgT25seVxyXG5AaW5jbHVkZSBkZXNrdG9we1xyXG5cdCNGb290ZXJQYW5lMUNvbnRhaW5lciwgI0Zvb3RlclBhbmUyQ29udGFpbmVyLCAjRm9vdGVyUGFuZTNDb250YWluZXIsICNGb290ZXJQYW5lNENvbnRhaW5lcnttaW4taGVpZ2h0OjM3NXB4O31cclxuXHQubW9iaWxlT3ZlcmxheXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9XHJcblx0I25ldGRyaXZlbiB7IHdpZHRoOiA5ODBweDsgbWFyZ2luOjAgYXV0bzsgb3ZlcmZsb3c6aGlkZGVuO30gXHJcbn1cclxuXHJcblxyXG4vL1RhYmxldCBPbmx5XHJcbkBpbmNsdWRlIHRhYmxldHtcclxuXHQjRm9vdGVyUGFuZTFDb250YWluZXJ7bWFyZ2luOjElIDAuNSUgMCAxJTt9XHJcblx0I0Zvb3RlclBhbmUyQ29udGFpbmVyLCAjRm9vdGVyUGFuZTNDb250YWluZXIsICNGb290ZXJQYW5lNENvbnRhaW5lcnttYXJnaW46MSUgMSUgMCAwLjUlO31cclxuXHQjRm9vdGVyUGFuZTRDb250YWluZXJ7fVxyXG5cdC5zb2NpYWxoMntkaXNwbGF5Om5vbmU7fVxyXG5cdCNwb3dlcmVkYnluZHtjbGVhcjpib3RoO30gXHJcblx0I0JvdHRvbUZvb3RlciAjc29jaWFsZm9udHt9XHJcblx0I0JvdHRvbUZvb3RlciAuRHluYW1pY0Zvcm1zX1NhdmVGb3JtRGl2e21hcmdpbi10b3A6MyU7fVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgdGFibGV0LXBob25le1xyXG5cdCNCb3R0b21Gb290ZXIgaDJ7Zm9udC1zaXplOjE2cHg7fVxyXG59XHJcblxyXG5cclxuLy8gUGhvbmUgT25seVxyXG5AaW5jbHVkZSBwaG9uZXtcclxuXHQjQm90dG9tRm9vdGVye2Rpc3BsYXk6ZmxleDsgZmxleC13cmFwOiB3cmFwOyBwYWRkaW5nLXRvcDo4MHB4O31cclxuXHQjRm9vdGVyUGFuZTFDb250YWluZXJ7ZmxleC1ncm93OjE7IHdpZHRoOjEwMCU7fVxyXG59ICIsIlxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG49ICAgICAgICAgICAgTW9iaWxlIEJ1dHRvbiBTdHlsZXMgICAgICAgICAgICA9XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbi5tb2JpbGVCdXR0b25ze2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuI0dlb0NvbnRhaW5lcntmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7fVxyXG4uR2VvVGV4dHtmb250LWZhbWlseTogaW5oZXJpdDt9XHJcblxyXG5AaW5jbHVkZSBwaG9uZXtcclxuXHJcblx0Lm1vYmlsZUJHe2Rpc3BsYXk6YmxvY2s7IG9wYWNpdHk6MDsgd2lkdGg6MTAwJTsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IGhlaWdodDo3NXB4OyBiYWNrZ3JvdW5kOiRwcmltYXJ5LWNvbG9yOyB6LWluZGV4Oi0xOyAtbW96LXRyYW5zaXRpb246YWxsIDIwMG1zIGVhc2UtaW4tb3V0OyAtd2Via2l0LXRyYW5zaXRpb246YWxsIDIwMG1zIGVhc2UtaW4tb3V0OyB0cmFuc2l0aW9uOmFsbCAyMDBtcyBlYXNlLWluLW91dDt9XHJcblx0Lm1vYmlsZUJHLmRpc3BsYXllZHtvcGFjaXR5OjE7fVxyXG5cdFxyXG5cdFxyXG5cdC5uZC1tb2JpbGUtd2luZG93e3Bvc2l0aW9uOmZpeGVkOyB3aWR0aDoxMDAlOyB6LWluZGV4OjEwMDsgb3ZlcmZsb3cteTpzY3JvbGw7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgYmFja2dyb3VuZDokcHJpbWFyeS1jb2xvcjsgZGlzcGxheTpub25lOyBoZWlnaHQ6MTAwJTt9XHJcblx0XHJcblx0Lm5kLW1vYmlsZS1idXR0b257Ym94LXNpemluZzpib3JkZXItYm94OyBmb250LXNpemU6MTJweDsgcGFkZGluZzoyMHB4OyBmb250LXdlaWdodDo3MDA7IGNvbG9yOiNGRkY7IGN1cnNvcjpwb2ludGVyOyB0ZXh0LWFsaWduOmNlbnRlcjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBkaXNwbGF5OmJsb2NrOyBvdmVyZmxvdzpoaWRkZW47IHRleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTt9XHJcbiBcclxuXHJcblx0Lm5kLW1vYmlsZS1idXR0b24ubWVudS1waG9uZSwgLm5kLW1vYmlsZS1idXR0b24ubWVudS1sb2NhdGlvbntkaXNwbGF5Om5vbmU7fVxyXG5cdFxyXG5cdC8qIE5FVyBGSU5EIFVTIEFORCBDQUxMIFVTIEJVVFRPTlMgKi9cclxuXHQuRmluZFVzUGFuZWwsIC5DYWxsVXNQYW5lbHtkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGZpeGVkOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwb3NpdGlvbjpmaXhlZDsgdG9wOjA7fVxyXG5cdC5GaW5kVXNQYW5lbCAuZmEsIC5DYWxsVXNQYW5lbCAuZmEsIC5tZW51LXF1b3Rpbmcgc3Bhbi5mYXN7Zm9udC1zaXplOjM1cHg7IGN1cnNvcjpwb2ludGVyOyBjb2xvcjojRkZGICFpbXBvcnRhbnQ7IG1hcmdpbjowOyBwYWRkaW5nOjIwcHg7IGRpc3BsYXk6YmxvY2s7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9XHJcblx0XHJcblx0LkZpbmRVc1BhbmVsIC5mYS5jbGlja2VkLCAuQ2FsbFVzUGFuZWwgLmZhLmNsaWNrZWR7YmFja2dyb3VuZDojRjVGNUY1OyBib3JkZXItcmFkaXVzOjZweCA2cHggMCAwOyBjb2xvcjokcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O30gICBcclxuXHQgXHJcblx0I0NhbGxVc0NvbnRhaW5lciBhe2NvbG9yOiNGRkY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9XHJcblx0LkZpbmRVc1BhbmVse3JpZ2h0OjYwcHggIWltcG9ydGFudDt9XHJcblx0LkNhbGxVc1BhbmVse3JpZ2h0OjA7fVxyXG5cdC5tZW51LXF1b3RpbmcubmQtbW9iaWxlLWJ1dHRvbntwYWRkaW5nOjA7IGhlaWdodDogYXV0byAhaW1wb3J0YW50OyByaWdodDoxMjhweCAhaW1wb3J0YW50O31cclxuXHQjR2VvUGhvbmVNb2JpbGV7ZGlzcGxheTpibG9jazt9XHJcblxyXG5cclxuXHRcclxuXHQjR2VvQ29udGFpbmVyTW9iaWxle3dpZHRoOjEwMHZ3OyBwb3NpdGlvbjogZml4ZWQ7IGxlZnQ6MDsgdG9wOjYwcHg7IGJhY2tncm91bmQ6I0Y1RjVGNTsgcGFkZGluZzoyMHB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7IGJveC1zaGFkb3c6IDBweCA3cHggOHB4IHJnYmEoNjgsNjgsNjgsMC42KX1cclxuXHQuR2VvVGV4dHtmb250LWZhbWlseTogaW5oZXJpdDt9XHJcblx0I0dlb0luZm9Cb3hNb2JpbGUsIC5HZW9Ib3VyczpsYXN0LW9mLXR5cGV7Ym9yZGVyLWJvdHRvbTogc29saWQgI2QxZDFkMSAxcHg7IHBhZGRpbmctYm90dG9tOiAxNXB4OyBtYXJnaW4tYm90dG9tOiAxNXB4O31cclxuXHRcclxuXHJcblx0XHJcblx0I21vYmlsZS1idXR0b25zIC5mYS5zdWJ7cG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbToxMHB4OyByaWdodDo1cHg7IGZvbnQtc2l6ZToxMnB4O31cclxuXHRcclxuXHQubmQtbW9iaWxlLWJ1dHRvbiAubW9iaWxlLWljb257Zm9udC1zaXplOjMwcHg7IGhlaWdodDozNnB4OyB3aWR0aDphdXRvOyBmbG9hdDpsZWZ0O31cclxuXHRcclxuXHQubW9iaWxlQnV0dG9uc3twb3NpdGlvbjpmaXhlZDsgdG9wOjA7IGxlZnQ6MDsgd2lkdGg6MTAwJTsgYm94LXNpemluZzpib3JkZXItYm94OyBib3gtc2hhZG93OjAgMSUgIzAwMDsgei1pbmRleDoxMDAwMDA7fVxyXG5cdC5zb2NpYWx7YmFja2dyb3VuZDojMjgyODI4OyBwb3NpdGlvbjpmaXhlZDsgYm90dG9tOjA7IGxlZnQ6MDsgd2lkdGg6MTAwJTsgYm94LXNpemluZzpib3JkZXItYm94OyB6LWluZGV4OjEwO31cclxuXHQubW9iaWxlQnV0dG9ucyBsaSBhe21hcmdpbi10b3A6MCAhaW1wb3J0YW50O31cclxuXHQubW9iaWxlT3ZlcmxheXtkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmZpeGVkOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgb3ZlcmZsb3cteTpzY3JvbGw7IHotaW5kZXg6NTAwO31cclxuXHQubW9iaWxlT3ZlcmxheTo6YmVmb3Jle2JhY2tncm91bmQ6IzAwMDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBvcGFjaXR5Oi41OyBjb250ZW50OlwiXCI7IGRpc3BsYXk6YmxvY2s7fVxyXG5cdFxyXG5cdC8qIE1vYmlsZSBCdXR0b25zIGluIEhlYWRlciAqL1xyXG5cdC5tb2JpbGVCdXR0b25zey8qYm94LXNoYWRvdzowIDJweCA1cHggIzAwMDsqL31cclxuXHQubW9iaWxlQnV0dG9ucyB7ZGlzcGxheTogYmxvY2t9XHJcblx0LyogU3R5bGUgdG8gaGF2ZSB0aGUgY29ubmVjdCB0ZXh0IGJlIGxlZnQgb2YgZm9vdGVyIHNvY2lhbCBpY29ucyovXHJcblx0LyogI0JvdHRvbUZvb3RlciAjc29jaWFsZm9udCB7ZmxvYXQ6cmlnaHQ7IH0gKi9cclxuXHQjbW9iaWxlLXNvY2lhbCAuZmEsICNtb2JpbGUtYnV0dG9ucyAuZmEgeyBmb250LXNpemU6MzVweDsgfVxyXG5cdCNtb2JpbGUtc29jaWFsIC5mYSwgI21vYmlsZS1idXR0b25zIC5mYSB7ZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXdlaWdodDogaW5oZXJpdDsgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IHRleHQtZGVjb3JhdGlvbjpub25lO31cclxuXHQjbW9iaWxlLWJ1dHRvbnMgLm1lbnUtbWVudSAuZmF7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9XHJcblx0I21vYmlsZS1idXR0b25zIC5tZW51LW1lbnUgLmZhLmZhLXRpbWVze3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTsgdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7fVxyXG5cdCNtb2JpbGUtYnV0dG9ucyBzcGFue31cclxuXHQjbW9iaWxlLWJ1dHRvbnMgbGFiZWx7Zm9udC1mYW1pbHk6J09wZW4gU2FucyBDb25kZW5zZWQnLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDo3MDA7IGN1cnNvcjpwb2ludGVyOyBtYXJnaW4tdG9wOjVweDt9XHJcblx0I21vYmlsZS1idXR0b25zIC5uZC1tb2JpbGUtYnV0dG9uLm5kY3VzdG9tY29sb3JjbGFzc3tib3gtc2hhZG93OjAgMCAycHggIzAwMCBpbnNldDsgLW1vei1ib3gtc2hhZG93OjAgMCAycHggIzAwMCBpbnNldDsgLXdlYmtpdC1ib3gtc2hhZG93OjAgMCAycHggIzAwMCBpbnNldDt9XHJcblxyXG5cdCNtb2JpbGUtYnV0dG9ucyBhOmhvdmVye2NvbG9yOiNGRkY7IHRleHQtZGVjb3JhdGlvbjpub25lO31cclxuXHJcblxyXG5cdC5tb2JpbGVvbmhvdmVye3Bvc2l0aW9uOmFic29sdXRlOyBib3R0b206LTdweDsgbGVmdDowOyBoZWlnaHQ6MDsgYm9yZGVyLXJhZGl1czoxMHB4IDEwcHggMCAwOyAtbW96LWJvcmRlci1yYWRpdXM6MTBweCAxMHB4IDAgMDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHggMTBweCAwIDA7fVxyXG5cdFxyXG5cdC5tbS1jbGlja2Vke31cclxuXHJcblx0I21vYmlsZU1lbnVCdG57fVxyXG5cdC5mYS1waG9uZXtwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDoxMDAwMDt9XHJcblxyXG5cclxuXHQubGVmdC1idXR0b257ZmxvYXQ6bGVmdDt9XHJcblx0LnJpZ2h0LWJ1dHRvbntmbG9hdDpyaWdodDt9XHJcblxyXG5cdFxyXG59XHJcblxyXG5cclxuIiwiXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBHZW8gTG9jYXRvciBFbGVtZW50IFN0eWxlcyAgICAgID1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKiBHRU8gTE9DQVRPUiAqL1xyXG4jZG5uX0V4cHJlc3NQYW5le2Zsb2F0OnJpZ2h0O31cclxuXHJcbi5HZW9QYW5lbCwgLlBvc3RhbFBhbmVse3Bvc2l0aW9uOnJlbGF0aXZlOyBmb250LXNpemU6MTZweDt9XHJcbiNHZW9Db250YWluZXJPdXRzaWRle3otaW5kZXg6MTAwOyBmbG9hdDpub25lOyB0b3A6MDt9XHJcbiNHZW9Db250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7IHRvcDozMHB4OyBmbG9hdDpub25lOyB3aWR0aDoxMDAlOyB6LWluZGV4OjEwMCAhaW1wb3J0YW50O31cclxuI0dlb0hvdXJzLCAjR2VvSW5mb0JveHtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBib3R0b207fVxyXG5cclxuLlBvc3RhbFBhbmVsLCAuR2VvUGFuZWx7bWFyZ2luOjEwcHg7IGJhY2tncm91bmQ6IzI3MjcyNzsgcGFkZGluZzo0cHg7IGJvcmRlci1yYWRpdXM6MjBweDt9XHJcbi5Qb3N0YWxQYW5lbDo6YWZ0ZXIsIC5HZW9QYW5lbDo6YWZ0ZXJ7ZGlzcGxheTpibG9jazsgaGVpZ2h0OjA7IGNvbnRlbnQ6XCIuXCI7IHZpc2liaWxpdHk6aGlkZGVuOyBjbGVhcjpib3RoO31cclxuLkdlb0JveExhYmVse21hcmdpbi1sZWZ0OjVweDsgZm9udC1zaXplOmluaGVyaXQ7IHBvc2l0aW9uOnJlbGF0aXZlO31cclxuI2Rubl9jdHIzMDQwX1ZpZXdfUG9zdGFsQ29kZUxvb2t1cDo6YmVmb3Jle2NvbnRlbnQ6XCJGaW5kIFlvdXIgTmVhcmVzdCBMb2NhdGlvblwiOyBjb2xvcjojRkZGOyBmb250LXNpemU6MTZweDsgbWFyZ2luOjZweCA1cHggMHB4IDVweDsgZmxvYXQ6bGVmdDsgZGlzcGxheTpibG9jazt9XHJcblxyXG4uUG9zdGFsUGFuZWx7d2lkdGg6MzcwcHg7fVxyXG4ucG9zdGFsY29kZS12YWxpZGF0b3Ige2Rpc3BsYXk6YmxvY2s7IGJhY2tncm91bmQ6I0ZFMDAwMDsgdGV4dC1hbGlnbjpjZW50ZXI7IGNvbG9yOiNmZmY7IG1hcmdpbjowIDAgNSU7IGZvbnQtd2VpZ2h0OjcwMDsgcGFkZGluZzoyJSAxJTsgd2lkdGg6MTAwJTsgYm94LXNpemluZzpib3JkZXItYm94OyBmb250LXNpemU6MWVtO31cclxuLnBvc3RhbGNvZGUtZW50cnlib3gge3RleHQtYWxpZ246Y2VudGVyOyBib3JkZXI6bm9uZTsgYmFja2dyb3VuZDojRkZGRkZGOyBjb2xvcjojMDAwOyBmbG9hdDpsZWZ0OyBmb250LXNpemU6MWVtOyBmb250LXdlaWdodDo3MDA7IGxpbmUtaGVpZ2h0OjEuNWVtOyBib3JkZXItcmFkaXVzOjIwcHggMCAwIDIwcHg7fVxyXG4ucG9zdGFsY29kZS1saW5rIHtkaXNwbGF5OiBibG9jazsgd2lkdGg6NTBweDsgaGVpZ2h0OjI2cHg7IGJhY2tncm91bmQ6IzAxNTZCMTsgZmxvYXQ6bGVmdDsgYm9yZGVyLXJhZGl1czowIDIwcHggMjBweCAwOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50OyBjb2xvcjojRkZGOyB0ZXh0LWFsaWduOmNlbnRlcjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBmb250LXdlaWdodDo3MDA7IGNvbG9yOiNGRkYgIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6MjZweDt9XHJcbi5wb3N0YWxjb2RlLWxpbms6aG92ZXJ7Ym94LXNoYWRvdzowIDAgMXB4ICNGRkYgaW5zZXQ7fVxyXG5cclxuQGluY2x1ZGUgdGFibGV0e1xyXG5cdC5HZW9QYW5lbCwgLlBvc3RhbFBhbmVse3Bvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50OyBtYXJnaW46MCBhdXRvIDIlOyB3aWR0aDoyODBweDsgZmxvYXQ6bm9uZTt9XHJcbn0gXHJcbiBcclxuQGluY2x1ZGUgdGFibGV0LXBob25lIHtcclxuXHQjZG5uX0V4cHJlc3NQYW5le2Zsb2F0Om5vbmUgIWltcG9ydGFudDsgcG9zaXRpb246cmVsYXRpdmU7fVxyXG59XHJcblxyXG5AaW5jbHVkZSBwaG9uZSB7XHJcblx0I2Rubl9IZWFkZXJDb250YWN0UGFuZXt6LWluZGV4OjEwMDAwMDsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuXHQuR2VvUGFuZWx7Zm9udC1zaXplOjE4cHg7IHBvc2l0aW9uOnJlbGF0aXZlOyB3aWR0aDo3MCU7IG1hcmdpbjowIGF1dG87IGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O31cclxuXHQuUG9zdGFsUGFuZWx7d2lkdGg6MjM3cHg7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW46MCBhdXRvO30gXHJcblx0XHJcblx0Lkdlb0JveHt9XHJcblx0Lkdlb0JveExhYmVse2Zsb2F0Om5vbmU7IHRleHQtYWxpZ246Y2VudGVyOyBkaXNwbGF5OmJsb2NrO31cclxuXHQjR2VvQ29udGFpbmVye3RvcDoxMDAlO31cclxuXHQuUG9zdGFsUGFuZWx7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fVxyXG59IiwiLyogTEFORElORyBQQUdFIEJPRFkgRklYICovXHJcbiNuZHNjIC5MYW5kaW5nUGFnZUJvZHkgcCB7XHJcbiAgICBmb250LXNpemU6IDEuMmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFNlcnZpY2UgQ2VudGVyICovXHJcbiNuZHNjIGltZ1tzcmMqPVwiL25kc2MtbGluay5wbmdcIl17d2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGRpc3BsYXk6YmxvY2s7IG1hcmdpbjowIGF1dG87fVxyXG5cclxuLyogRFJJVkVDQVNUIEJBTk5FUiAqL1xyXG4uZHJpdmVjYXN0LWJhbm5lcntwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jazt9XHJcbi5kcml2ZWNhc3QtYmFubmVyIGltZ3twb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDoxOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IHdpZHRoOjEwMCU7IG1heC13aWR0aDo5ODBweDt9XHJcbi5kcml2ZWNhc3QtYmFubmVyIC5uZGN1c3RvbWNvbG9yY2xhc3N7cG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyB6LWluZGV4OjA7fVxyXG4uZHJpdmVjYXN0LWJhbm5lciAubmRjdXN0b21jb2xvcmNsYXNzOjphZnRlcntiYWNrZ3JvdW5kOiNGRkY7IG9wYWNpdHk6MDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4OjE7IHRvcDowOyBsZWZ0OjA7IC1tb3otdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IHRyYW5zaXRpb246YWxsIDIwMG1zIGVhc2UtaW4tb3V0OyBjb250ZW50OlwiXCI7IGRpc3BsYXk6YmxvY2s7fVxyXG4uZHJpdmVjYXN0LWJhbm5lcjpob3ZlciAubmRjdXN0b21jb2xvcmNsYXNzOjphZnRlcntvcGFjaXR5Oi4yO31cclxuYS5kcml2ZWNhc3QtYmFubmVye21hcmdpbjoyJSAwO31cclxuLnZpZGVvLWJ1dHRvbi1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7IHRleHQtc2hhZG93OjAgMnB4IDFweCAjMDAwOyB0ZXh0LWFsaWduOmNlbnRlcjsgei1pbmRleDoxOyBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMzMzO31cclxuI25kc2MgLnZpZGVvLWJ1dHRvbi1jb250YWluZXJ7bWluLXdpZHRoOjUwJTsgZm9udC1zaXplOjE0cHg7fVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpe1xyXG5cdCNmYW5jeWJveC13cmFwe3BhZGRpbmc6MCAhaW1wb3J0YW50OyBsZWZ0OjUwJSAhaW1wb3J0YW50OyAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOyAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOyB0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt9XHJcblx0I2ZhbmN5Ym94LWlubmVye3dpZHRoOjEwMCUgIWltcG9ydGFudDt9XHJcblx0I2ZhbmN5Ym94LWltZ3t3aWR0aDphdXRvICFpbXBvcnRhbnQ7fVxyXG59XHJcblxyXG4vKiBTZXJ2aWNlIFF1b3RlcyBQVVQgSU4gVEhFIE1PRFVMRS5DU1MgRklMRSAqL1xyXG4jbmRzYyAueW1tb3t3aWR0aDphdXRvICFpbXBvcnRhbnQ7fVxyXG4jbmRzYyAueW1tbyAuRHJvcFdyYXBwZXJ7d2lkdGg6NDglOyBtYXJnaW46MSU7IGZsb2F0OmxlZnQ7fVxyXG4jbmRzYyAueW1tbyAuRHJvcFdyYXBwZXIgc3BhbntkaXNwbGF5OmJsb2NrO31cclxuI25kc2MgLnltbW8gLkRyb3BXcmFwcGVyIHNlbGVjdHt3aWR0aDoxMDAlO31cclxuI25kc2MgLmNoZWNrQm94TGlzdHttYXJnaW4tYm90dG9tOjIlO31cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcclxuICAgICNuZHNjIC55bW1vIC5Ecm9wV3JhcHBlcnt3aWR0aDphdXRvOyBtYXJnaW46MSU7IGZsb2F0Om5vbmU7fVxyXG5cclxuXHQjbmRzYyBpbnB1dFtpZCo9XCJWaWV3X2FkdlF1b3RlX1N1Ym1pdFwiXXt3aWR0aDoxMDAlOyBwYWRkaW5nOjIlOyBmb250LXNpemU6MTRweDt9XHJcbn1cclxuXHJcbiIsIi8qIEFUQyAqL1xyXG4jbmRhdGMgLmF0Y2JyYW5kYm94eyBtYXJnaW46MSUgIWltcG9ydGFudDsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MzQwcHg7fVxyXG4jbmRhdGMgI2F0Y2JyYW5kYm94Ym9keXtwYWRkaW5nOjIlO31cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aCA6IDc2OHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGggOiAxMDI0cHgpLCAobWF4LXdpZHRoOiA5ODBweCkge1xyXG5cdCNuZGF0YyAuYXRjYnJhbmRib3h7d2lkdGg6MjMlICFpbXBvcnRhbnQ7IG1hcmdpbjoxJSAhaW1wb3J0YW50OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGhlaWdodDozMjBweDsgbWluLXdpZHRoOmluaGVyaXQgIWltcG9ydGFudDt9XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjY0MHB4KXtcclxuXHQjbmRhdGMgLmF0Y2JyYW5kYm94e3dpZHRoOjQ4JSAhaW1wb3J0YW50OyBtYXJnaW46MSUgIWltcG9ydGFudDsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MzIwcHg7IG1pbi13aWR0aDppbmhlcml0ICFpbXBvcnRhbnQ7fVxyXG5cdCNhdGN0aXJlcG9pbnRzYnJhbmR2aWV3IGxpe21hcmdpbjoyJTsgZm9udC1zaXplOjE0cHg7fSAvKiBNb3ZlIHRvIEFUQyAqL1xyXG59IFxyXG5cclxuI25kYXRjICNhdGNicmFuZGJveGJvZHkgLmF0Y3RpcmVpbWFnZXtkaXNwbGF5OmJsb2NrOyBtYXJnaW46MCBhdXRvO31cclxuI25kYXRjIC5hdGNBdmdSYXRpbmcgcHtsaW5lLWhlaWdodDoxOHB4O31cclxuI25kYXRjICN0aXJlc2lkZXdhbGxfYW5pbWF0aW9uICNidWJibGV7d2lkdGg6NDUlO31cclxuI25kYXRjIC5hdGNicmFuZGJveHt3aWR0aDoyMyUgIWltcG9ydGFudDt9XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XHJcblx0I25kYXRjIHNlbGVjdHtmb250LXNpemU6MThweDt9XHJcbn0iLCIvKiBMb2NhdGlvbldpZGdldCAqL1xyXG4jTG9jYXRpb25XaWRnZXQgKntsaW5lLWhlaWdodDoxOHB4O31cclxuXHJcbi8qIExPQ0FUSU9OUyBQQUdFXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uSUNHX01vZHVsZXNfTG9jYWxGb2NhbF9Mb2NhdGlvbnNDb250ZW50IC5Db21tYW5kQnV0dG9uLCAuTW9kSUNHTW9kdWxlc0xvY2FsRm9jYWxMb2NhdGlvbnNDIC5Db21tYW5kQnV0dG9uIHtmb250LXNpemU6MTBweDsgLW1vei1ib3JkZXItcmFkaXVzOjZweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweDsgYm9yZGVyLXJhZGl1czo2cHg7IHBhZGRpbmc6NHB4IDhweDsgbWFyZ2luOjVweDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGJhY2tncm91bmQ6I2MzMTUxYzsgY29sb3I6I2ZmZiAhaW1wb3J0YW50OyBib3JkZXI6bm9uZTsgY3Vyc29yOnBvaW50ZXI7IGZvbnQtZmFtaWx5OmluaGVyaXQ7IGZvbnQtd2VpZ2h0OmJvbGQ7fVxyXG4uSUNHX01vZHVsZXNfTG9jYWxGb2NhbF9Mb2NhdGlvbnNDb250ZW50IC5Db21tYW5kQnV0dG9uOmhvdmVyLCAuTW9kSUNHTW9kdWxlc0xvY2FsRm9jYWxMb2NhdGlvbnNDIC5Db21tYW5kQnV0dG9uOmhvdmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7IGNvbG9yOiNmZmYgIWltcG9ydGFudDt9XHJcbi5sb2NsaXN0aW5nIHttYXJnaW46NXB4IDAgMDt9XHJcblxyXG4ubG9jZmF4IHttYXJnaW4tdG9wOjEwcHg7IG92ZXJmbG93OmhpZGRlbjt9XHJcbi5sb2NmYXggLmZheExhYmVsIHtkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246dG9wOyBvdmVyZmxvdzpoaWRkZW47IHdpZHRoOjMycHg7fVxyXG5cclxuLmxvY19pbWcge19mbG9hdDpyaWdodCAhaW1wb3J0YW50O31cclxuLklDR19Nb2R1bGVzX0xvY2FsRm9jYWxfTG9jYXRpb25zQ29udGVudCAjbWFwLCAuTW9kSUNHTW9kdWxlc0xvY2FsRm9jYWxMb2NhdGlvbnNDICNtYXAge2NsZWFyOmJvdGg7fVxyXG5cclxuLmxmTG9jTWVudSwgLmxmTG9jTWVudSBsaSwgLmxmTG9jTWVudSBhIHtsaXN0LXN0eWxlOm5vbmUgb3V0c2lkZSBub25lICFpbXBvcnRhbnQ7IG1hcmdpbjowICFpbXBvcnRhbnQ7fVxyXG4ubGZMb2NNZW51IHtiYWNrZ3JvdW5kOiMwMDA7IGJvcmRlcjpub25lOyBoZWlnaHQ6NDZweDsgbWFyZ2luLWJvdHRvbTo1cHg7IG92ZXJmbG93OmhpZGRlbjsgcGFkZGluZzowO31cclxuLmxmTG9jTWVudSBsaSB7ZGlzcGxheTpibG9jazsgZmxvYXQ6bGVmdDsgaGVpZ2h0OjM2cHg7IHBhZGRpbmc6NXB4IDEwcHg7fVxyXG4ubGZMb2NNZW51IGEge2JhY2tncm91bmQ6IzMzMzsgY29sb3I6I0ZGRiAhaW1wb3J0YW50OyBmb250LXNpemU6MTRweDsgZm9udC13ZWlnaHQ6NzAwOyBsaW5lLWhlaWdodDozNnB4OyBwYWRkaW5nOjVweCAxMHB4O31cclxuLmxmTG9jTWVudSBhOmhvdmVyIHtiYWNrZ3JvdW5kOiNDQ0M7IGNvbG9yOiNGMDAgIWltcG9ydGFudDt9XHJcblxyXG4ubG9jUmVmaW5lU2VhcmNoIHtiYWNrZ3JvdW5kOnVybCgvL2EubmRydi5pbi9pbWcvbG9jYXRpb25zL0xvYy1CdXR0b24ucG5nKSBuby1yZXBlYXQgY2VudGVyIHRvcDsgY29sb3I6I0ZGRiAhaW1wb3J0YW50OyBkaXNwbGF5OmJsb2NrOyBmb250LXNpemU6MTZweDsgZm9udC13ZWlnaHQ6NzAwOyBmbG9hdDpsZWZ0OyBoZWlnaHQ6MjBweDsgbGluZS1oZWlnaHQ6MjBweDsgbWFyZ2luOjAgMCAxMHB4OyBwYWRkaW5nOjZweCA1cHggNHB4IDE1cHg7IHRleHQtYWxpZ246bGVmdDsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyB3aWR0aDoxNjJweDt9XHJcblxyXG4uTG9jU3ViSGVhZCB7Y2xlYXI6Ym90aDsgZGlzcGxheTpibG9jazsgZmxvYXQ6bGVmdDsgZm9udC1zaXplOjE0cHg7IGZvbnQtd2VpZ2h0OjcwMDsgcGFkZGluZy1ib3R0b206NXB4O31cclxuLnR4dFppcFNlYXJjaCB7d2lkdGg6MTY2cHg7IG1hcmdpbi1ib3R0b206NXB4O31cclxuI2RkbFN0YXRlcyB7ZmxvYXQ6bGVmdDsgd2lkdGg6NDVweDsgbWFyZ2luOjAgNXB4IDAgMDt9XHJcbiNkZGxDaXRpZXMge2Zsb2F0OmxlZnQ7IHdpZHRoOjEyMHB4OyBtYXJnaW46MDt9XHJcbiNtYXBfY2FudmFzIHtib3JkZXI6IzAwMCAxcHggc29saWQ7IGZsb2F0OnJpZ2h0OyBoZWlnaHQ6NDAwcHg7IG92ZXJmbG93OmhpZGRlbjsgd2lkdGg6NDAwcHg7fVxyXG4uTWFwTGVnZW5kLCAjTG9jU2VhcmNoLCAjTG9jVHlwZXMge2JhY2tncm91bmQ6I0ZGRjsgYm9yZGVyOiMwMDAgMXB4IHNvbGlkOyBjbGVhcjpsZWZ0OyBmbG9hdDpsZWZ0OyBtYXJnaW46MCAwIDEwcHg7IG92ZXJmbG93OmhpZGRlbjsgcGFkZGluZzo1cHggNXB4IDNweDsgd2lkdGg6MTcwcHg7fVxyXG4uTWFwTGVnZW5kIGRpdiB7Y2xlYXI6bGVmdDsgb3ZlcmZsb3c6aGlkZGVuO31cclxuLk1hcExlZ2VuZCBpbWcsIC5NYXBMZWdlbmQgLm5vUGluSW1nIHtkaXNwbGF5OmlubGluZS1ibG9jazsgZmxvYXQ6bGVmdDsgaGVpZ2h0OjI4cHg7IHBhZGRpbmctcmlnaHQ6NXB4OyB3aWR0aDoxNnB4O31cclxuLk1hcExlZ2VuZCAuY2hrTGVnZW5kIHtmbG9hdDpsZWZ0OyBwYWRkaW5nOjJweCA1cHggMCAwO31cclxuLk1hcExlZ2VuZCAubGVnZW5kdGV4dCB7ZGlzcGxheTpibG9jazsgZmxvYXQ6cmlnaHQ7IGhlaWdodDozMHB4OyBsaW5lLWhlaWdodDoxNHB4OyBwYWRkaW5nOjRweCA1cHggMCAwOyB0ZXh0LWFsaWduOmxlZnQ7IHdpZHRoOjExOHB4O31cclxuI0xvY1NlYXJjaCBhLCAjTG9jVHlwZXMgYXtjbGVhcjpyaWdodDsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGZsb2F0OnJpZ2h0O31cclxuXHJcbiNtYXBfYnViYmxlIHtoZWlnaHQ6MTM1cHg7IG92ZXJmbG93OmhpZGRlbjsgcG9zaXRpb246cmVsYXRpdmU7IHdpZHRoOjEwMCU7fVxyXG4jbWFwX2J1YmJsZSAjbWFwVHRsIHtmb250LXdlaWdodDo3MDA7IG1hcmdpbi1ib3R0b206NXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgd2lkdGg6MTAwJTt9XHJcbiNtYXBfYnViYmxlICNtYXBBZHIge292ZXJmbG93OmhpZGRlbjt9XHJcbiNtYXBfYnViYmxlICNtYXBBZHIgI3N0cmVldCB7ZGlzcGxheTpibG9jazsgZmxvYXQ6bGVmdDt9XHJcbiNtYXBfYnViYmxlICNtYXBBZHIgI2NpdHlzdGF0ZXppcCB7ZGlzcGxheTpibG9jazsgY2xlYXI6bGVmdDsgZmxvYXQ6bGVmdDsgbWFyZ2luLWJvdHRvbTo1cHg7fVxyXG4jbWFwX2J1YmJsZSAjbWFwUGhuLCAjbWFwX2J1YmJsZSAjbWFwRW1sLCAjbWFwX2J1YmJsZSAjbWFwRGVzYyB7bWFyZ2luLWJvdHRvbTo1cHg7fVxyXG4jbWFwX2J1YmJsZSAjbWFwRHRsIHtib3R0b206MXB4OyBsZWZ0OjA7IHBvc2l0aW9uOmFic29sdXRlO31cclxuI21hcF9idWJibGUgI21hcEltZyBpbWcge2JvdHRvbTowOyBoZWlnaHQ6NDBweDsgcG9zaXRpb246YWJzb2x1dGU7IHJpZ2h0OjA7IHdpZHRoOjYwcHg7fVxyXG5cclxuLyogTE9DQVRJT05TIFdJREdFVFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuI0xvY2F0aW9uV2lkZ2V0IHtwb3NpdGlvbjpyZWxhdGl2ZTsgb3ZlcmZsb3c6aGlkZGVuO31cclxuLmxvY3dpZGdldGxpc3Rpbmcge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46MTBweDsgd2lkdGg6Mjc1cHg7IHBvc2l0aW9uOnJlbGF0aXZlOyBvdmVyZmxvdzpoaWRkZW47IGZsb2F0OmxlZnQ7fVxyXG4ubG9jd2lkZ2V0bGlzdGluZz5kaXYge2Zsb2F0OmxlZnQ7IGNsZWFyOmJvdGg7fVxyXG4vKi5sb2N3aWRnZXQtYWRkciB7bWFyZ2luLXRvcDoxMHB4O30qL1xyXG4ubG9jd2lkZ2V0LWNzeiB7bWFyZ2luLWJvdHRvbToxMHB4O30iLCIvKiBJTlNUQU5UIFFVT1RFXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4jaW5zdGFudFF1b3RlMiB7cG9zaXRpb246cmVsYXRpdmU7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiNlbWFpbE1TRyB7Y29sb3I6I0YwMDsgZm9udC1zaXplOjI0cHg7IGZvbnQtd2VpZ2h0OmJvbGQ7IHRleHQtYWxpZ246Y2VudGVyOyBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlOyBmaWx0ZXI6YWxwaGEob3BhY2l0eT01MCk7IC1tb3otb3BhY2l0eTowLjUwOyBvcGFjaXR5OjAuNTsgei1pbmRleDoyMDsgaGVpZ2h0OjEwMCU7IHdpZHRoOjEwMCU7IGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBsZWZ0OjBweDt9XHJcbi5zdHlsZTEgdGQsIC5zdHlsZTEgdGgge2hlaWdodDoyM3B4OyBsaW5lLWhlaWdodDoyM3B4O31cclxuLmluc3RhbnRRdW90ZUhkciAjcHJpbnRNZSB7Zm9udC1zaXplOjE0cHg7IGZvbnQtd2VpZ2h0OjcwMDsgdGV4dC1hbGlnbjpjZW50ZXI7IG1hcmdpbjoxMHB4IGF1dG87fVxyXG4uaW5zdGFudFF1b3RlSGRyIC5kaXNjbGFpbWVyIHtmb250LXNpemU6OXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgd2lkdGg6NDAwcHg7IG1hcmdpbjowIGF1dG8gIWltcG9ydGFudDt9XHJcbiNpbnN0YW50UXVvdGVUYmwgdGFibGUge2JvcmRlcjpub25lOyB3aWR0aDoxMDAlOyBjb2xvcjojMDAwMDAwOyBiYWNrZ3JvdW5kOiNEREY7fVxyXG4jaW5zdGFudFF1b3RlVGJsIHRhYmxlIC5ib3JkZXJCb3R0b20ge2JvcmRlci1ib3R0b206IzY2NiAxcHggc29saWQ7fVxyXG4jaW5zdGFudFF1b3RlVGJsIHRhYmxlIC5zdWJ0aXRsZSB7YmFja2dyb3VuZDojRjIyOyBib3JkZXItdG9wOiM2NjYgMXB4IHNvbGlkOyBib3JkZXItYm90dG9tOiM2NjYgMXB4IHNvbGlkOyBkaXNwbGF5OnRhYmxlLXJvdyAhaW1wb3J0YW50O30gXHJcbiNpbnN0YW50UXVvdGVUYmwgdGFibGUgLnN1YnRvdGFsIHtiYWNrZ3JvdW5kOiNEQ0M7fVxyXG4jaW5zdGFudFF1b3RlVGJsIHRhYmxlIC50b3RhbCB7YmFja2dyb3VuZDojOUY5O31cclxuI3ByaW50IHtmbG9hdDpsZWZ0OyBiYWNrZ3JvdW5kLWNvbG9yOiNEREY7IH1cclxuI2VtYWlsLCAjdHh0RW1haWwge2Zsb2F0OnJpZ2h0OyBiYWNrZ3JvdW5kLWNvbG9yOiNEREY7IH0iLCIvLyBDb3Vwb25zXHJcbi5jb3Vwb24td3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTt9XHJcbi5jb3Vwb24td3JhcCA+IGltZ1tzcmMqPVwic3BhY2VyXCJde3dpZHRoOjEwMCU7IGhlaWdodDphdXRvO31cclxuLmNvdXBvbnNsaWRlcnZpZXd7dG9wOjA7IGxlZnQ6MDsgei1pbmRleDoyO31cclxuLmNvdXBvbnNsaWRlcnZpZXd7fVxyXG4uc2xpZGVySW1hZ2UgaW1ne3dpZHRoOjEwMCU7IGhlaWdodDphdXRvOyBtYXgtd2lkdGg6NjMwcHg7fVxyXG5kaXZbaWQqPVwiVmlld19TY3JvbGxlcl9zbGlkZXIxXCJde2hlaWdodDphdXRvICFpbXBvcnRhbnQ7fVxyXG4uc2xpZGVySW1hZ2Ugc3BhbntkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9XHJcbi5jb3Vwb25saXN0dmlldyAjaXRlbSBpbWd7d2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IG1heC13aWR0aDo1OTBweDt9XHJcbi5jb3Vwb25MaXN0SFJ7ZGlzcGxheTpub25lO31cclxuXHJcbiNzbGlkZXJDb250ZW50e21hcmdpbjowICFpbXBvcnRhbnQ7fVxyXG5cclxuIC8qIERlc2t0b3AgT25seSAqL1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTgwcHgpe1xyXG5cdFxyXG5cdC8qICQoJyNjb250ZW50bmF2Jykud3JhcCBQQUdFICovXHJcblx0LmNvdXBvbkxpc3RJTUdze3dpZHRoOjEwMCU7IGhlaWdodDphdXRvO31cclxuXHQuY291cG9uLWNvbnRhaW5lcnt9XHJcblx0ZGl2W2lkKj1cIlZpZXdfTGlzdFZpZXdfT3V0ZXJMaXN0Vmlld1wiXSB0YWJsZSB0cntkaXNwbGF5OmlubGluZS1ibG9jazsgd2lkdGg6NDglOyBtYXJnaW46MSU7IG1pbi1oZWlnaHQ6MjM1cHg7fVxyXG5cdFxyXG59IiwiLyogTUFJTlRFTkFOQ0UgQURWSVNFUiBCQU5ORVIgKi9cclxuLm1hLWJhbm5lcntwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jazt9XHJcbi5tYS1iYW5uZXIgaW1ne3Bvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4OjE7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgd2lkdGg6MTAwJTsgbWF4LXdpZHRoOjk4MHB4O31cclxuLm1hLWJhbm5lciAubmRjdXN0b21jb2xvcmNsYXNzOjphZnRlcntiYWNrZ3JvdW5kOiNGRkY7IG9wYWNpdHk6MDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4OjE7IHRvcDowOyBsZWZ0OjA7IC1tb3otdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IHRyYW5zaXRpb246YWxsIDIwMG1zIGVhc2UtaW4tb3V0OyBjb250ZW50OlwiXCI7IGRpc3BsYXk6YmxvY2s7fVxyXG4ubWEtYmFubmVyOmhvdmVyIC5uZGN1c3RvbWNvbG9yY2xhc3M6OmFmdGVye29wYWNpdHk6LjI7fVxyXG4ubWEtYmFubmVyIC5uZGN1c3RvbWNvbG9yY2xhc3N7cG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyB6LWluZGV4OiAwO30iLCIjbmR0ZXN0aW1vbmlhbHMgLnJldmlldy1jb250YWluZXIuYXZlcmFnZS1yYXRpbmd7Y2xlYXI6bGVmdDt9XHJcblxyXG4jbmR0ZXN0aW1vbmlhbHMgZGl2Lm92ZXJsYXkgaWZyYW1le21pbi1oZWlnaHQ6NjAwcHg7fSIsIiNqc0xvY0Ryb3BEb3duUGxhY2VIb2xkZXJ7Y2xlYXI6Ym90aDt9XHJcbiNqc0xvY0Ryb3BEb3duUGxhY2VIb2xkZXIgc2VsZWN0e3dpZHRoOjUwJTt9XHJcbi8qICNuZGRjIGRpdi5sYXJnZS1vdmVybGF5e21hcmdpbi10b3A6MCAhaW1wb3J0YW50O30gKi9cclxuLmJ0bi1jeHR7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpe1xyXG5cdCNqc0xvY0Ryb3BEb3duUGxhY2VIb2xkZXIgc2VsZWN0e3dpZHRoOjEwMCU7fVxyXG59XHJcblxyXG4uc3NtYXB7Ym9yZGVyOiMwMDAgMXB4IHNvbGlkO3BhZGRpbmc6M3B4O21hcmdpbjoycHg7ZmxvYXQ6cmlnaHQ7aGVpZ2h0OjIwMHB4ICFpbXBvcnRhbnR9XHJcbi5sb2NTZWFyY2hCb3ggLnJlZC1ncmFke2JhY2tncm91bmQtY29sb3I6I0NGMDAwMDtjb2xvcjojRkZGO2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjMwcHg7bWFyZ2luOjVweCAwIDA7cGFkZGluZzoxcHggMSU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7d2lkdGg6MjglfVxyXG4uYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb257cGFkZGluZzoycHggNXB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47Y3Vyc29yOnBvaW50ZXJ9XHJcbi5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlMmUyZTJ9XHJcbi5hdXRvY29tcGxldGUtc3VnZ2VzdGlvbiBzdHJvbmd7Y29sb3I6IzExMTE3M31cclxuLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9uc3tiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjMDAwO2NvbG9yOiMwMDA7IC8qbWFyZ2luLXRvcDotMzBweCovfVxyXG4jYXV0b2NvbXBsZXRlLXdyYXBwZXIgPiBzcGFue2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjcwMH1cclxuLmxvY1NlYXJjaEJveCAuc2VhcmNoVGV4dEZpZWxke2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjcwMDttaW4taGVpZ2h0OjI0cHg7bWFyZ2luOjVweCAwIDEwcHg7cGFkZGluZzoycHggMDt3aWR0aDo2OCU7ZmxvYXQ6bGVmdDttYXJnaW4tcmlnaHQ6M3B4fVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpe1xyXG5cdC5sb2NTZWFyY2hCb3ggLnNlYXJjaFRleHRGaWVsZHt3aWR0aDoxMDAlOyBmbG9hdDpub25lOyBtYXJnaW4tYm90dG9tOjJweDt9XHJcblx0LmxvY1NlYXJjaEJveCAucmVkLWdyYWR7d2lkdGg6MTAwJTsgZmxvYXQ6bm9uZTsgbWFyZ2luOjVweCAwO31cclxuXHQuTW9kU2NoZWR1bGVTZXJ2aWNlQyBzZWxlY3R7d2lkdGg6MTAwJTt9XHJcblx0Lk1vZFNjaGVkdWxlU2VydmljZUMgLm1hcC5tYXB7ZmxvYXQ6bm9uZTsgd2lkdGg6YXV0bzt9XHJcblx0LmxvY1NlYXJjaEJveCAuc2VhcmNoVGV4dEZpZWxkLCAubG9jU2VhcmNoQm94IC5yZWQtZ3JhZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7fVxyXG59XHJcbi5sb2NhdGlvbi1pbmZvLmxvY2F0aW9uU2VsZWN0b3JBZGRyZXNze21hcmdpbi1ib3R0b206MTBweH1cclxuLmxvYy1zZWxlY3QtaW5mb3t3aWR0aDo0MiU7ZmxvYXQ6bGVmdDtjbGVhcjpsZWZ0fVxyXG4ubG9jLXNlbGVjdC1pbmZvIC5sb2NhdGlvbi1pbmZve2xpbmUtaGVpZ2h0OjEuNH1cclxuLnJlZC1ncmFkIGltZ3tkaXNwbGF5OmJsb2NrO2Zsb2F0OnJpZ2h0O21hcmdpbjo1cHggMCAwfVxyXG4ucmVkLWdyYWQgc3BhbnttYXJnaW46NXB4IDAgMDtkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnR9XHJcbiNqc0xvY2F0aW9uSW5mb1BsYWNlSG9sZGVye2NvbG9yOmluaGVyaXQ7YmFja2dyb3VuZDppbmhlcml0fSJdfQ== */
