/* -------------------------------------------------------------
  Sass CSS3 Mixins! The Cross-Browser CSS3 Sass Library
  By: Matthieu Aussaguel, http://www.mynameismatthieu.com, @matthieu_tweets
  List of CSS3 Sass Mixins File to be @imported and @included as you need
  The purpose of this library is to facilitate the use of CSS3 on different browsers avoiding HARD TO READ and NEVER
  ENDING css files
  note: All CSS3 Properties are being supported by Safari 5
  more info: http://www.findmebyip.com/litmus/#css3-properties
  Mixins available:
    -   css3-prefix             - arguments: Property, Value
    -   background-gradient     - arguments: Start Color: #3C3C3C, End Color: #999999
    -   background-horizontal   - arguments: Start Color: #3C3C3C, End Color: #999999
    -   background-radial       - arguments: Start Color: #FFFFFF, Start position: 0%, End Color: #000000, End position: 100%
    -   background-size         - arguments: Width: 100%, Height: 100%
    -   background-opacity      - arguments: Color: #000, Opacity: .85
    -   border-radius           - arguments: Radius: 5px
    -   border-radius-separate  - arguments: Top Left: 5px, Top Right: 5px, Bottom Left: 5px, Bottom Right: 5px
    -   box                     - arguments: Orientation: horizontal, Pack: center, Align: center
    -   box-rgba                - arguments: R: 60, G: 3, B: 12, Opacity: 0.23, Color: #3C3C3C
    -   box-shadow              - arguments: X: 2px, Y: 2px, Blur: 5px, Color: rgba(0,0,0,.4)
    -   box-sizing              - arguments: Type: border-box
    -   columns                 - arguments: Count: 3, Gap: 10
    -   double-borders          - arguments: Color One: #3C3C3C, Color Two: #999999, Radius: 0
    -   flex                    - arguments: Value: 1
    -   flip                    - arguments: ScaleX: -1
    -   font-face               - arguments: Font Family: myFont, Eot File Src: myFont.eot, Woff File Src: myFont.woff, Ttf File Src: myFont.ttf
    -   opacity                 - arguments: Opacity: 0.5
    -   outline radius          - arguments: Radius: 5px
    -   resize                  - arguments: Direction: both
    -   rotate                  - arguments: Degree: 0, M11: 0, M12: 0, M21: 0, M22: 0
    CSS Matrix Rotation Calculator http://www.boogdesign.com/examples/transforms/matrix-calculator.html
    -   text-shadow             - arguments: X: 2px, Y: 2px, Blur: 5px, Color: rgba(0,0,0,.4)
    -   transform               - arguments: Parameters: null
    -   transform-style         - arguments: Style: preserve-3d
    -   transition              - Default arguments: What: all, Length: 1s, Easing: ease-in-out
    -                            - Examples: @include transition (all 2s ease-in-out);
    -                                        @include transition (opacity 1s ease-in 2s, width 2s ease-out);
    -   triple-borders          - arguments: Color One: #3C3C3C, Color Two: #999999, Color Three: #000000, Radius: 0
    -   keyframes               - arguments: Animation name
                                - content:   Animation css
    -   animation               - arguments: name duration timing-function delay iteration-count direction fill-mode play-state
                                             (http://www.w3schools.com/cssref/css3_pr_animation.asp)
------------------------------------------------------------- */
/* ADDS A BROWSER PREFIX TO THE PROPERTY */
/* BACKGROUND GRADIENT */
/* BACKGROUND HORIZONTAL */
/* BACKGROUND RADIAL */
/* BACKGROUND SIZE */
/* BACKGROUND COLOR OPACITY */
/* BORDER RADIUS */
/* BOX */
/* BOX RGBA */
/* BOX SHADOW */
/* BOX SIZING */
/* COLUMNS */
/* DOUBLE BORDERS */
/* FLEX */
/* FLIP */
/* FONT FACE */
/* OPACITY */
/* OUTLINE RADIUS */
/* RESIZE */
/* ROTATE*/
/* TEXT SHADOW */
/* TRANSFORM  */
/* TRANSFORM STYLE */
/* TRANSITION */
/* TRIPLE BORDERS */
/* KEYFRAMES */
/* ANIMATION */
/*=====================================
=            Custom mixins            =
=====================================*/
/*-----  End of Custom mixins  ------*/
.hide {
  display: none;
}

body h1, body h1 a, body h1 a:focus, body h1 a:visited, body h2, body h2 a, body h2 a:focus, body h2 a:visited, body h3, body h3 a, body h3 a:focus, body h3 a:visited, body h4, body h4 a, body h4 a:focus, body h4 a:visited, body h5, body h5 a, body h5 a:focus, body h5 a:visited, body h6, body h6 a, body h6 a:focus, body h6 a:visited {
  color: #006699;
}

body h1 a:hover, body h2 a:hover, body h3 a:hover, body h4 a:hover, body h5 a:hover, body h6 a:hover {
  color: #0088cc;
}

body table th {
  text-align: left;
  background-color: #cceeff;
  color: #333333;
  padding: 5px 10px;
}

body table td {
  padding: 0 10px;
}

body table tr.odd {
  background-color: rgba(204, 238, 255, 0.5);
}

body > header {
  height: 200px;
  background-image: url("../img/bolts.jpg");
  background-position: center top;
}

body > header .container {
  position: relative;
}

body > header #lang_sel_list, body > header #lang_sel_click {
  position: absolute;
  right: 0;
  top: 0;
}

body > header #lang_sel_list ul, body > header #lang_sel_click ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}

body > header #lang_sel_list li, body > header #lang_sel_click li {
  display: inline-block;
}

body > header #lang_sel_list li a, body > header #lang_sel_click li a {
  font-size: 12px;
}

body > header #lang_sel_list li a, body > header #lang_sel_list li a:visited, body > header #lang_sel_list li a:focus, body > header #lang_sel_click li a, body > header #lang_sel_click li a:visited, body > header #lang_sel_click li a:focus {
  text-transform: uppercase;
  background-color: #006699;
  color: #ffffff;
  padding: 10px;
  border: 1px solid #ffffff;
  border-top: 0;
  border-right: 0;
  font-weight: 600;
}

body > header #lang_sel_list li a.lang_sel_sel, body > header #lang_sel_click li a.lang_sel_sel {
  background-color: #ffcc33;
  color: #006699;
}

body > header #lang_sel_list li:last-child a, body > header #lang_sel_click li:last-child a {
  border-right: 1px solid #ffffff;
}

body > header form.woocommerce-product-search {
  position: absolute;
  bottom: 20px;
  right: 0;
  width: 30%;
  font-size: 0;
  border: 1px solid #333333;
  background-color: #ffffff;
}

body > header form.woocommerce-product-search input, body > header form.woocommerce-product-search button {
  font-size: 14px;
  display: inline-block;
  border: 0;
  margin: 0;
  border-radius: 0;
  box-sizing: border-box;
  line-height: 24px;
  height: 35px;
  vertical-align: top;
}

body > header form.woocommerce-product-search input {
  width: 90%;
}

body > header form.woocommerce-product-search button {
  background: #ffffff;
  box-shadow: none;
  text-shadow: none;
  padding: 5px;
  width: 10%;
  font-size: 21px;
}

body > header form.woocommerce-product-search button i {
  vertical-align: top;
  color: #333333;
}

body > header form.woocommerce-product-search input[type="submit"], body > header form.woocommerce-product-search label {
  display: none;
}

body > header a.site-title {
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  color: transparent;
  background: url("../img/logo.jpg");
  width: 100%;
  max-width: 150px;
  height: 150px;
  background-repeat: no-repeat;
  background-size: contain;
  margin: 25px 0;
}

body > nav.main-navigation {
  background-color: #006699;
  height: 48px;
  border-top: 1px solid #ffffff;
  font-size: 0;
}

body > nav.main-navigation ul {
  font-size: 0;
}

body > nav.main-navigation ul li {
  font-size: 14px;
}

body > nav.main-navigation a {
  color: #ffffff;
  padding: 10px 15px;
  border-bottom: 2px solid #ffffff;
  font-weight: 600;
  font-size: 14px;
}

body > nav.main-navigation a i.fa {
  margin: 0 10px 0 0;
}

body > nav.main-navigation li.current_page_item a, body > nav.main-navigation li a:hover {
  box-shadow: 0px 5px 0px #ffcc33;
  background-color: #0088cc;
  border-right: 1px solid #ffffff;
  border-left: 1px solid #ffffff;
}

body > nav.main-navigation li.current_page_item a:hover {
  border-right: 1px solid #ffffff;
  border-left: 1px solid #ffffff;
}

body > nav.main-navigation li a:hover {
  border-right: 0;
  border-left: 0;
}

body > nav.main-navigation .menu-main-menu-container,
body > nav.main-navigation .menu-rechtermenu-container {
  margin: 0;
  display: inline-block;
  font-size: 14px;
}

body > nav.main-navigation .menu-main-menu-container {
  width: 70%;
  max-width: 70%;
}

body > nav.main-navigation .menu-rechtermenu-container {
  width: 30%;
}

body > nav.main-navigation #right-menu {
  text-align: right;
}

body #content aside {
  margin-top: 30px;
}

body #content aside h2 {
  color: #006699;
  margin: 0 0 5px 0;
}

body #content aside p {
  margin: 0;
  line-height: 28px;
}

body #content aside .widget_black_studio_tinymce {
  background-color: #cceeff;
  padding: 20px;
  background-repeat: no-repeat;
  background-size: contain;
}

body #content aside .widget_black_studio_tinymce .tel {
  display: block;
  font-size: 36px;
  font-weight: 800;
  text-align: right;
  line-height: 1;
}

body #content aside .widget_black_studio_tinymce .mail {
  display: block;
  text-align: right;
  color: #006699;
  font-weight: 600;
  line-height: 18px;
  margin-top: 10px;
}

body #content aside .widget_black_studio_tinymce .mail span {
  display: block;
}

body #content aside .widget_black_studio_tinymce .mail a {
  text-decoration: underline;
  color: #006699;
}

body #content aside .widget_black_studio_tinymce:first-child {
  background-image: url("../img/belons.png");
  background-position: bottom left;
}

body #content aside .widget_black_studio_tinymce:first-child h2 {
  margin-left: 70px;
  font-size: 28px;
}

body #content aside .widget_black_studio_tinymce:last-child {
  background-image: url("../img/service.png");
  background-position: bottom right;
}

body #content aside ul.menu, body #content aside ul.menu li {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: block;
}

body #content aside ul.menu li a {
  color: #ffffff;
  background-color: #006699;
  border-bottom: 2px solid #ffffff;
  box-shadow: 0px 5px 0px #ffcc33;
  margin-bottom: 20px;
  display: block;
  text-align: center;
  font-size: 21px;
  text-transform: uppercase;
  padding: 8px 15px;
  font-weight: 600;
}

body #content aside ul.menu li a:hover {
  box-shadow: 0px 5px 0px #cc9900;
}

body #content aside ul.menu li a i {
  margin-right: 10px;
  display: inline-block;
}

body #content aside ul.menu li:nth-child(even) a {
  background-color: #0088cc;
}

body > footer {
  background-color: #006699;
  color: #ffffff;
  min-height: 20px;
}

body > footer .footer-widget > aside {
  width: 49%;
}

body > footer .footer-widget > aside h3 {
  color: #ffffff;
}

body > footer .footer-widget > aside br {
  display: block;
}

body > footer .footer-widget > aside:last-child {
  margin-left: 2%;
  text-align: right;
}

body > footer .footer-widget > aside form > label {
  display: none;
}

body > footer .footer-widget > aside form {
  font-size: 0;
}

body > footer .footer-widget > aside form > label {
  display: none;
}

body > footer .footer-widget > aside form input {
  border-radius: 0;
  font-size: 14px;
  padding: 5px 10px;
  height: auto;
  display: inline-block;
  width: 50%;
  height: 40px;
  vertical-align: middle;
  border: 1px solid #006699;
}

body > footer .footer-widget > aside form input[type="submit"] {
  box-shadow: none;
  text-shadow: none;
  background-color: #ffcc33;
  color: #006699;
  text-transform: uppercase;
  font-weight: 600;
  width: 20%;
  border-left: 0;
}

body > footer .footer-widget > aside h3 {
  margin: 0;
}

body > footer .footer-widget > aside p {
  margin: 0 0 5px 0;
}

body > footer .footer-widget > aside a {
  color: #ffcc33;
}

body > footer .footer-widget > aside a:hover {
  color: #ffe699;
  text-decoration: underline;
}

body > .subfooter {
  background-image: url("../img/bolts.jpg");
  background-position: center bottom;
  height: 100px;
}

body .credits {
  background-color: #333333;
  color: white;
  padding: 10px 0;
  text-align: center;
}

body .credits a {
  color: #ffcc33;
}

body .credits a:hover {
  color: #ffe699;
}

body .img-container {
  height: 200px;
  width: 100%;
  overflow: hidden;
}

body .img-container img {
  height: 100%;
  width: auto;
}

body .img-container img.object-fit {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body .blocks .block {
  padding-right: 20px;
}

body .blocks .block h2 {
  margin: 10px 0;
}

body .blocks .block p {
  margin-top: 0;
}

body main {
  margin-top: 30px;
}

body header h1 {
  margin: 0;
}

input.woordenlijst {
  width: 100%;
}

table.woordenlijst tr th:first-child, table.woordenlijst tr td:first-child {
  width: 200px;
}

.entry-meta, .entry-footer {
  display: none;
}

ul.faqs {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

ul.faqs li.faq {
  border: 1px solid #cceeff;
}

ul.faqs li.faq span {
  display: block;
  padding: 5px 10px;
}

ul.faqs li.faq span.question {
  cursor: pointer;
  background-color: #cceeff;
  color: #333333;
  border-bottom: 1px solid #ffffff;
  font-size: 18px;
}

ul.faqs li.faq span.question i.fa {
  float: right;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  margin-top: 5px;
}

ul.faqs li.faq span.question.hide i.fa {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

ul.faqs li.faq span.answer {
  display: block;
  height: auto;
  opacity: 1;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

ul.faqs li.faq span.answer.hide {
  height: 0 !important;
  opacity: 0;
  overflow: hidden;
  padding: 0 10px;
}

ul.faqs li.faq:last-child span.question {
  border-bottom: 0;
}

input#straat, input#gemeente {
  width: 65%;
}

input#nummer, input#postcode {
  width: 14%;
}

input#nummer {
  margin-left: 1%;
}

input#postcode {
  margin-right: 1%;
}

body form.wpcf7-form label {
  vertical-align: bottom;
  margin-bottom: 10px;
}

body form.wpcf7-form label[for="vertegenwoordiger"] {
  margin-bottom: 2px;
}

form.wpcf7-form input[type="submit"], form.wpcf7-form button {
  box-shadow: 0;
  text-shadow: 0;
  border-radius: 0;
  text-transform: uppercase;
  padding: 10px 15px;
  color: #ffffff;
  border-bottom: 2px solid #ffffff;
  background-color: #006699;
  box-shadow: 0px 5px 0px #ffcc33;
}

form.wpcf7-form input[type="submit"]:hover, form.wpcf7-form button:hover {
  color: #ffffff;
  border-bottom: 2px solid #ffffff;
  background-color: #0088cc;
  box-shadow: 0px 5px 0px #ffbf00;
}

nav.breadcrumbs {
  margin-bottom: 10px;
}

ul.categories, ul.categories > li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 0;
}

ul.categories li, ul.categories li.product {
  width: 23.5%;
  margin-right: 2%;
  font-size: 14px;
  display: inline-block;
  vertical-align: top;
}

ul.categories li:nth-child(4n), ul.categories li.product:nth-child(4n) {
  margin-right: 0;
}

ul.categories li h3, ul.categories li.product h3 {
  word-wrap: break-word;
  text-align: center;
}

body.woocommerce .container.woocommerce {
  font-size: 0;
}

body.woocommerce .content aside {
  width: 23%;
  margin-right: 2%;
  display: inline-block;
  font-size: 14px;
}

body.woocommerce .content section.woocommerce-content {
  display: inline-block;
  width: 75%;
  font-size: 14px;
}

body.woocommerce ul.products, body.woocommerce ul.products > li {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 0;
}

body.woocommerce ul.products li.product {
  font-size: 14px;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 60px;
  text-align: center;
}

body.woocommerce ul.products li.product.first {
  clear: none;
}

body.woocommerce ul.products li.product.last {
  margin: 0 3.8% 2.992em 0;
}

body.woocommerce ul.products li.product:nth-child(4n) {
  margin-right: 0;
}

body.woocommerce ul.products li.product:nth-child(4n+1) {
  clear: both;
}

body.woocommerce ul.products li.product h3 {
  word-wrap: break-word;
  text-align: center;
}

.woocommerce .product {
  font-size: 14px;
}

table.shop_attributes {
  border: 0;
  width: 100%;
}

table.shop_attributes tr:nth-child(odd), table.shop_attributes tr:nth-child(odd) td, table.shop_attributes tr:nth-child(odd) th, table.shop_attributes tr:nth-child(even), table.shop_attributes tr:nth-child(even) td, table.shop_attributes tr:nth-child(even) th, table.shop_attributes tr.odd, table.shop_attributes tr.odd td, table.shop_attributes tr.odd th, table.shop_attributes tr.even, table.shop_attributes tr.even td, table.shop_attributes tr.even th, table.shop_attributes th, table.shop_attributes th td, table.shop_attributes th th {
  background-color: transparent;
}

table.shop_attributes tr:nth-child(1), table.shop_attributes tr:nth-child(2), table.shop_attributes tr:nth-child(3) {
  display: none;
}

table.shop_attributes td, table.shop_attributes th {
  padding: 5px 0;
  border: 0;
  width: auto;
}

table.shop_attributes p {
  margin: 0;
  padding: 0;
}

body.archive.woocommerce ul.products li.product h3 {
  height: 80px;
}

body.archive.woocommerce ul.products li.product table.shop_attributes tr, body.archive.woocommerce ul.products li.product table.shop_attributes tr td, body.archive.woocommerce ul.products li.product table.shop_attributes tr th {
  font-size: 14px;
  line-height: 1;
  padding: 0 5px;
}

body.archive.woocommerce ul.products li.product table.shop_attributes tr td:last-child, body.archive.woocommerce ul.products li.product table.shop_attributes tr td:last-child p {
  text-align: right;
}

body.archive ul.products li .img-container {
  height: 140px;
}

body.single-product .container.woocommerce {
  margin-top: 10px;
}

body.single-product .container.woocommerce .related.products {
  display: none;
}

body.single-product.woocommerce #content .type-product {
  font-size: 0;
}

body.single-product.woocommerce #content .type-product h1 {
  font-size: 21px;
}

body.single-product.woocommerce #content .type-product > .basic, body.single-product.woocommerce #content .type-product > .specs, body.single-product.woocommerce #content .type-product > .images {
  width: 20%;
  margin-right: 14%;
  display: inline-block;
  font-size: 14px;
  vertical-align: top;
  float: none !important;
}

body.single-product.woocommerce #content .type-product > .basic > .images, body.single-product.woocommerce #content .type-product > .specs > .images, body.single-product.woocommerce #content .type-product > .images > .images {
  width: 100%;
}

body.single-product.woocommerce #content .type-product > .images {
  margin-right: 0;
  width: 90%;
  margin: 0 auto;
}

body.single-product.woocommerce #content .type-product > .specs {
  margin-right: 0;
  width: 66%;
}

body.single-product.woocommerce #content .type-product table {
  border: 0;
  width: 100%;
}

body.single-product.woocommerce #content .type-product table tr:nth-child(odd), body.single-product.woocommerce #content .type-product table tr:nth-child(odd) td, body.single-product.woocommerce #content .type-product table tr:nth-child(even), body.single-product.woocommerce #content .type-product table tr:nth-child(even) td, body.single-product.woocommerce #content .type-product table tr.odd, body.single-product.woocommerce #content .type-product table tr.odd td, body.single-product.woocommerce #content .type-product table tr.even, body.single-product.woocommerce #content .type-product table tr.even td, body.single-product.woocommerce #content .type-product table th, body.single-product.woocommerce #content .type-product table th td {
  background-color: transparent;
}

body.single-product.woocommerce #content .type-product table td, body.single-product.woocommerce #content .type-product table th {
  padding: 2px 5px;
  border: 0;
  width: auto;
}

body.single-product.woocommerce #content .type-product table p {
  margin: 0;
  padding: 0;
}

body.single-product.woocommerce #content .type-product .specs table {
  border: 1px solid #006699;
}

body.single-product.woocommerce #content .type-product .specs table p {
  font-size: 14px;
}

body.single-product.woocommerce #content .type-product .basic table tr:nth-child(1), body.single-product.woocommerce #content .type-product .basic table tr:nth-child(2), body.single-product.woocommerce #content .type-product .basic table tr:nth-child(3) {
  display: none;
}

body.single-product.woocommerce #content .type-product .basic table td, body.single-product.woocommerce #content .type-product .basic table th {
  padding: 5px 0;
}

body.single-product.woocommerce #content .type-product .sku_wrapper {
  display: none;
}

.variations {
  font-size: 0;
}

.variations .variation-chunk {
  display: inline-block;
  width: 32%;
  margin-right: 2%;
  font-size: 14px;
  vertical-align: top;
}

.variations .variation-chunk:last-child {
  margin-right: 0;
}

.variations .variation-chunk table {
  width: 100%;
}

.variations .variation-chunk table tr.odd, .variations .variation-chunk table tr.even, .variations .variation-chunk table tr:nth-child(odd), .variations .variation-chunk table tr:nth-child(even) {
  background-color: transparent;
}

.variations .variation-chunk table tr:nth-child(even) {
  background-color: rgba(204, 238, 255, 0.5);
}

.variations .variation-chunk table td {
  padding: 2px 10px;
}

.specs table td h2 {
  color: #404040;
  font-size: 14px;
  margin: 0;
  display: block;
  text-align: center;
}

@media (max-width: 1024px) {
  body > nav.main-navigation .menu-main-menu-container {
    width: 100%;
    max-width: 100%;
  }
  body > nav.main-navigation .menu-rechtermenu-container {
    display: none;
  }
  body > header form.woocommerce-product-search button {
    width: 15%;
  }
  body > header form.woocommerce-product-search input {
    width: 85%;
  }
  body form.wpcf7-form > p > label {
    margin-bottom: 5px;
    margin-top: 10px;
    display: block;
    width: 100%;
  }
  body.archive ul.products li .img-container {
    height: 90px;
  }
}

@media (max-width: 768px) {
  html body .container.has-sidebar main {
    width: 100%;
    margin: 0;
  }
  html body .content aside {
    width: 100%;
  }
  html body .content aside section {
    width: 100%;
  }
  html body .content aside section#black-studio-tinymce-5 h2 {
    text-align: right;
  }
  html body .content aside section#black-studio-tinymce-4 {
    padding-right: 200px;
  }
  html body > header form.woocommerce-product-search button {
    width: 20%;
  }
  html body > header form.woocommerce-product-search input {
    width: 80%;
  }
  html body > footer .footer-widget > aside {
    display: block;
    text-align: left;
    width: 100%;
    margin: 10px 0;
  }
  html body > footer .footer-widget > aside:last-child {
    margin: 10px 0;
    text-align: left;
  }
  ul.categories li, ul.categories li.product {
    width: 49%;
    margin-right: 2%;
  }
  ul.categories li:nth-child(2n), ul.categories li.product:nth-child(2n) {
    margin-right: 0;
  }
  body.archive ul.products li .img-container {
    height: 140px;
  }
  body nav.main-navigation ul li a {
    font-size: 14px;
    line-height: 28px;
  }
  body.single-product.woocommerce #content .type-product > .basic, body.single-product.woocommerce #content .type-product > .specs, body.single-product.woocommerce #content .type-product > .images {
    width: 100%;
    display: block;
    float: none;
    margin: 0;
  }
  .variations .variation-chunk {
    width: 100%;
    display: block;
    float: none;
    margin: 0;
  }
  .variations .variation-chunk td, .variations .variation-chunk th {
    width: 33.333%;
  }
}

@media (max-width: 600px) {
  body > header .container {
    text-align: center;
  }
  body > header .container .site-branding {
    margin-top: 20px;
  }
  body > header #lang_sel_list, body > header #lang_sel_click {
    width: 100%;
    text-align: center;
  }
  body > header #lang_sel_list > ul, body > header #lang_sel_click > ul {
    display: inline-block;
  }
  body > header form.woocommerce-product-search {
    position: static;
    width: 100%;
    margin-top: -15px;
  }
  body > nav.main-navigation {
    height: 47px;
  }
  html body .content aside section#black-studio-tinymce-4 {
    padding-right: 20px;
  }
  body > footer .footer-widget > aside form input {
    width: 60%;
  }
  body > footer .footer-widget > aside form input[type="submit"] {
    width: 40%;
  }
  html body .container.has-sidebar main {
    margin-top: 30px;
  }
  body nav.main-navigation #primary-menu {
    background-color: #006699;
  }
  body nav.main-navigation #primary-menu a {
    box-shadow: none !important;
    font-weight: 300;
  }
  ul.categories li, ul.categories li.product {
    width: 100%;
    margin-right: 0;
  }
  body.woocommerce .content aside {
    display: none;
  }
  body.woocommerce .content section.woocommerce-content {
    display: block;
    width: 100%;
  }
  body.woocommerce .content section.woocommerce-content h1 {
    overflow: hidden;
    max-width: 100%;
    font-size: 21px;
  }
  body.archive ul.products li .img-container {
    height: 80px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXMiOlsic3R5bGVzLnNjc3MiLCJtaXhpbnMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibWl4aW5zLnNjc3NcIjtcclxuXHJcbiRjUHJpbWFyeTpcdFx0XHQjMDA2Njk5O1xyXG4kY1NlY29uZGFyeTpcdFx0I2ZmY2MzMztcclxuJGNUZXJ0aWFyeTpcdFx0XHQjY2NlMGViO1xyXG4kY1F1YXRlcm5hcnk6XHRcdCMzMzMzMzM7XHJcbiRjRGVmYXVsdDpcdFx0XHQjZmZmZmZmO1xyXG5cclxuQG1peGluIGphcmlidXR0b24oJGFtb3VudCkge1xyXG5cdGNvbG9yOiAkY0RlZmF1bHQ7XHJcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjRGVmYXVsdDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjUHJpbWFyeSwgJGFtb3VudCk7XHJcblx0Ym94LXNoYWRvdzogMHB4IDVweCAwcHggZGFya2VuKCRjU2Vjb25kYXJ5LCAkYW1vdW50KTtcclxufVxyXG5cclxuLmhpZGUge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbmJvZHkge1xyXG5cdGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG5cdFx0JiwgYSwgYTpmb2N1cywgYTp2aXNpdGVkIHtcclxuXHRcdFx0Y29sb3I6ICRjUHJpbWFyeTtcclxuXHRcdH1cclxuXHJcblx0XHRhOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGNQcmltYXJ5LCAxMCUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHR0YWJsZSB7XHJcblxyXG5cdFx0dGgge1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjUHJpbWFyeSwgNjAlKTtcclxuXHRcdFx0Y29sb3I6ICRjUXVhdGVybmFyeTtcclxuXHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XHJcblx0XHR9XHJcblx0XHR0ZCB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTBweDtcclxuXHRcdH1cclxuXHJcblx0XHR0ciB7XHJcblx0XHRcdCYub2RkIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGxpZ2h0ZW4oJGNQcmltYXJ5LCA2MCUpLCAwLjUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gJi5zZWFyY2hpbmcge1xyXG5cdFx0Ly8gXHR0cjpub3QoLmhpZGUpOm50aC1jaGlsZChvZGQpIHtcclxuXHRcdC8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGxpZ2h0ZW4oJGNQcmltYXJ5LCA2MCUpLCAwLjUpO1xyXG5cdFx0Ly8gXHR9XHJcblx0XHQvLyBcdHRyOm5vdCguaGlkZSk6bnRoLWNoaWxkKGV2ZW4pIHtcclxuXHRcdC8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0RlZmF1bHQ7XHJcblx0XHQvLyBcdH1cclxuXHRcdC8vIH1cclxuXHR9XHJcblx0PiBoZWFkZXIge1xyXG5cdFx0aGVpZ2h0OiAyMDBweDtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2JvbHRzLmpwZycpO1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcclxuXHRcdFxyXG5cdFx0LmNvbnRhaW5lciB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdH1cclxuXHJcblx0XHQjbGFuZ19zZWxfbGlzdCwgI2xhbmdfc2VsX2NsaWNrIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0dG9wOiAwO1xyXG5cclxuXHRcdFx0dWwge1xyXG5cdFx0XHQgICAgcGFkZGluZzogMDtcclxuXHRcdFx0ICAgIG1hcmdpbjogMDtcclxuXHRcdFx0ICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bGkge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bGkgYSB7XHJcblxyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHJcblx0XHRcdFx0JiwgJjp2aXNpdGVkLCAmOmZvY3VzIHtcclxuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1ByaW1hcnk7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNEZWZhdWx0O1xyXG5cdFx0XHRcdFx0cGFkZGluZzogMTBweDtcclxuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRjRGVmYXVsdDtcclxuXHRcdFx0XHRcdGJvcmRlci10b3A6IDA7XHJcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmLmxhbmdfc2VsX3NlbCB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1NlY29uZGFyeTtcclxuXHRcdFx0XHRcdGNvbG9yOiAkY1ByaW1hcnk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRsaTpsYXN0LWNoaWxkIGEge1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRjRGVmYXVsdDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGZvcm0ud29vY29tbWVyY2UtcHJvZHVjdC1zZWFyY2gge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogMjBweDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdHdpZHRoOiAzMCU7XHJcblx0XHRcdGZvbnQtc2l6ZTogMDtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNRdWF0ZXJuYXJ5O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0RlZmF1bHQ7XHJcblxyXG5cdFx0XHRpbnB1dCwgYnV0dG9uIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMzVweDtcclxuICAgIFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGlucHV0IHtcclxuXHRcdFx0XHR3aWR0aDogOTAlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRidXR0b24ge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjRGVmYXVsdDtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHRcdHRleHQtc2hhZG93OiBub25lO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDVweDtcclxuXHRcdFx0XHR3aWR0aDogMTAlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjFweDtcclxuXHJcblx0XHRcdFx0aSB7XHJcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjUXVhdGVybmFyeTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIGxhYmVsIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0YS5zaXRlLXRpdGxlIHtcclxuXHRcdFx0QGluY2x1ZGUgaW1hZ2VSZXBsYWNlbWVudCh1cmwoJy4uL2ltZy9sb2dvLmpwZycpLCAxNTBweCwgMTUwcHgpO1xyXG5cdFx0XHRtYXJnaW46IDI1cHggMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdD4gbmF2IHtcclxuXHRcdCYubWFpbi1uYXZpZ2F0aW9uIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNQcmltYXJ5O1xyXG5cdFx0XHRoZWlnaHQ6IDQ4cHg7XHJcblx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY0RlZmF1bHQ7XHJcblx0XHRcdGZvbnQtc2l6ZTogMDtcclxuXHJcblx0XHRcdHVsIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDA7XHJcblxyXG5cdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGNvbG9yOiAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0cGFkZGluZzogMTBweCAxNXB4O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblxyXG5cdFx0XHRcdGkuZmEge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwIDEwcHggMCAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bGkge1xyXG5cdFx0XHRcdCYuY3VycmVudF9wYWdlX2l0ZW0gYSwgYTpob3ZlciB7XHJcblx0XHRcdFx0XHRib3gtc2hhZG93OiAwcHggNXB4IDBweCAkY1NlY29uZGFyeTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNQcmltYXJ5LCAxMCUpO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNEZWZhdWx0O1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLmN1cnJlbnRfcGFnZV9pdGVtIGE6aG92ZXIge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNEZWZhdWx0O1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRhOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogMDtcclxuXHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lcixcclxuXHRcdFx0Lm1lbnUtcmVjaHRlcm1lbnUtY29udGFpbmVyIHtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciB7XHJcblx0XHRcdFx0d2lkdGg6IDcwJTtcclxuXHRcdFx0XHRtYXgtd2lkdGg6IDcwJTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm1lbnUtcmVjaHRlcm1lbnUtY29udGFpbmVyIHtcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQjcmlnaHQtbWVudSB7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNjb250ZW50IGFzaWRlIHtcclxuXHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0XHRcclxuXHRcdGgyIHtcclxuXHRcdFx0Y29sb3I6ICRjUHJpbWFyeTtcclxuXHRcdFx0bWFyZ2luOiAwIDAgNXB4IDA7XHJcblx0XHR9XHJcblx0XHRwIHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMjhweDtcclxuXHRcdH1cclxuXHRcdC53aWRnZXRfYmxhY2tfc3R1ZGlvX3RpbnltY2Uge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjUHJpbWFyeSwgNjAlKTtcclxuXHRcdFx0cGFkZGluZzogMjBweDtcclxuXHJcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHJcblx0XHRcdC50ZWwge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMzZweDtcclxuXHRcdFx0XHRmb250LXdlaWdodDogODAwO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubWFpbCB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdFx0Y29sb3I6ICRjUHJpbWFyeTtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblxyXG5cdFx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRhIHtcclxuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjUHJpbWFyeTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2JlbG9ucy5wbmcnKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gbGVmdDtcclxuXHJcblx0XHRcdFx0aDIge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDcwcHg7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDI4cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NlcnZpY2UucG5nJyk7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0dWwubWVudSB7XHJcblx0XHRcdCYsIGxpIHtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGxpIGEge1xyXG5cdFx0XHRcdGNvbG9yOiAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNQcmltYXJ5O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY0RlZmF1bHQ7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDVweCAwcHggJGNTZWNvbmRhcnk7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAyMXB4O1xyXG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0cGFkZGluZzogOHB4IDE1cHg7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRib3gtc2hhZG93OiAwcHggNXB4IDBweCBkYXJrZW4oJGNTZWNvbmRhcnksIDIwJSk7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRpIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0XHRcdC8vZm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bGk6bnRoLWNoaWxkKGV2ZW4pIGEge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNQcmltYXJ5LCAxMCUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQ+IGZvb3RlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1ByaW1hcnk7XHJcblx0XHRjb2xvcjogJGNEZWZhdWx0O1xyXG5cdFx0bWluLWhlaWdodDogMjBweDtcclxuXHJcblx0XHQuZm9vdGVyLXdpZGdldCA+IGFzaWRlIHtcclxuXHRcdFx0d2lkdGg6IDQ5JTtcclxuXHJcblx0XHRcdGgzIHtcclxuXHRcdFx0XHRjb2xvcjogJGNEZWZhdWx0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRiciB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIlO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRmb3JtID4gbGFiZWwge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGZvcm0ge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMDtcclxuXHJcblx0XHRcdFx0PiBsYWJlbCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0aW5wdXQge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4O1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRcdGhlaWdodDogNDBweDtcclxuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkY1ByaW1hcnk7XHJcblxyXG5cdFx0XHRcdFx0Jlt0eXBlPVwic3VibWl0XCJdIHtcclxuXHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0XHRcdFx0dGV4dC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjU2Vjb25kYXJ5O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJGNQcmltYXJ5O1xyXG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMjAlO1xyXG5cdFx0XHRcdFx0XHRib3JkZXItbGVmdDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGgzIHtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHAge1xyXG5cdFx0XHRcdG1hcmdpbjogMCAwIDVweCAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRjb2xvcjogJGNTZWNvbmRhcnk7XHJcblxyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGNTZWNvbmRhcnksIDIwJSk7XHJcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdD4gLnN1YmZvb3RlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ib2x0cy5qcGcnKTtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XHJcblx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdH1cclxuXHJcblx0LmNyZWRpdHMge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdHBhZGRpbmc6IDEwcHggMDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6ICRjU2Vjb25kYXJ5O1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGNTZWNvbmRhcnksIDIwJSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5pbWctY29udGFpbmVyIHtcclxuXHRcdGhlaWdodDogMjAwcHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdFx0aW1nIHtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHR3aWR0aDogYXV0bztcclxuXHJcblx0XHRcdCYub2JqZWN0LWZpdCB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5ibG9ja3MgLmJsb2NrIHtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblxyXG5cdFx0aDIge1xyXG5cdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdH1cclxuXHJcblx0XHRwIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG1haW4ge1xyXG5cdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHR9XHJcblxyXG5cdGhlYWRlciB7XHJcblx0XHRoMSB7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbmlucHV0Lndvb3JkZW5saWpzdCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbnRhYmxlLndvb3JkZW5saWpzdCB0ciB7XHJcblx0dGg6Zmlyc3QtY2hpbGQsIHRkOmZpcnN0LWNoaWxkIHtcclxuXHRcdHdpZHRoOiAyMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5lbnRyeS1tZXRhLCAuZW50cnktZm9vdGVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG51bC5mYXFzIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG5cdGxpLmZhcSB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCRjUHJpbWFyeSwgNjAlKTtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBhZGRpbmc6IDVweCAxMHB4OyBcclxuXHRcdH1cclxuXHJcblx0XHRzcGFuLnF1ZXN0aW9uIHtcclxuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjUHJpbWFyeSwgNjAlKTtcclxuXHRcdFx0Y29sb3I6ICRjUXVhdGVybmFyeTtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjRGVmYXVsdDtcclxuXHRcdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cclxuXHRcdFx0aS5mYSB7XHJcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLmhpZGUgaS5mYSB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0XHRcdH1cclxuXHJcblxyXG5cdFx0fVxyXG5cdFx0c3Bhbi5hbnN3ZXIge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XHJcblxyXG5cdFx0XHQmLmhpZGUge1xyXG5cdFx0XHRcdGhlaWdodDogMCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0XHRwYWRkaW5nOiAwIDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmOmxhc3QtY2hpbGQgc3Bhbi5xdWVzdGlvbiB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5pbnB1dCNzdHJhYXQsIGlucHV0I2dlbWVlbnRlIHtcclxuXHR3aWR0aDogNjUlO1xyXG59XHJcblxyXG5pbnB1dCNudW1tZXIsIGlucHV0I3Bvc3Rjb2RlIHtcclxuXHR3aWR0aDogMTQlO1xyXG59XHJcblxyXG5pbnB1dCNudW1tZXIge1xyXG5cdG1hcmdpbi1sZWZ0OiAxJTtcclxufVxyXG5cclxuaW5wdXQjcG9zdGNvZGUge1xyXG5cdG1hcmdpbi1yaWdodDogMSU7XHJcbn1cclxuXHJcbmJvZHkgZm9ybS53cGNmNy1mb3JtIGxhYmVsIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG5ib2R5IGZvcm0ud3BjZjctZm9ybSBsYWJlbFtmb3I9XCJ2ZXJ0ZWdlbndvb3JkaWdlclwiXSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbn1cclxuXHJcbmZvcm0ud3BjZjctZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBmb3JtLndwY2Y3LWZvcm0gYnV0dG9uIHtcclxuXHRib3gtc2hhZG93OiAwO1xyXG5cdHRleHQtc2hhZG93OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nOiAxMHB4IDE1cHg7XHJcblxyXG5cdEBpbmNsdWRlIGphcmlidXR0b24oMCUpO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdEBpbmNsdWRlIGphcmlidXR0b24oMTAlKTtcclxuXHR9XHJcbn1cclxuXHJcbm5hdi5icmVhZGNydW1icyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxudWwuY2F0ZWdvcmllcyB7XHJcblx0JiwgPiBsaSB7XHJcblx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0Zm9udC1zaXplOiAwO1xyXG5cdH1cclxuXHJcblx0bGksIGxpLnByb2R1Y3Qge1xyXG5cdFx0d2lkdGg6IDIzLjUlO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAyJTtcclxuXHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoNG4pIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdGgzIHtcclxuXHRcdCAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuYm9keS53b29jb21tZXJjZSB7XHJcblx0LmNvbnRhaW5lci53b29jb21tZXJjZSB7XHJcblx0XHRmb250LXNpemU6IDA7XHJcblx0fVxyXG5cclxuXHQuY29udGVudCBhc2lkZSB7XHJcblx0ICAgIHdpZHRoOiAyMyU7XHJcblx0ICAgIG1hcmdpbi1yaWdodDogMiU7XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cdH1cclxuXHJcblx0LmNvbnRlbnQgc2VjdGlvbi53b29jb21tZXJjZS1jb250ZW50IHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHdpZHRoOiA3NSU7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0fVxyXG5cclxuXHR1bC5wcm9kdWN0cyB7XHJcblx0XHQmLCA+IGxpIHtcclxuXHRcdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdGZvbnQtc2l6ZTogMDtcclxuXHRcdH1cclxuXHJcblx0XHRsaS5wcm9kdWN0IHtcclxuXHRcdFx0Ly93aWR0aDogMzElO1xyXG5cdFx0XHQvL21hcmdpbi1yaWdodDogMi4zMzMzJTtcclxuXHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHRcdCYuZmlyc3Qge1xyXG5cdFx0XHRcdGNsZWFyOiBub25lO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLmxhc3Qge1xyXG5cdFx0XHRcdCAgICBtYXJnaW46IDAgMy44JSAyLjk5MmVtIDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bnRoLWNoaWxkKDRuKSB7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCg0bisxKSB7XHJcblx0XHRcdFx0Y2xlYXI6IGJvdGg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGgzIHtcclxuXHRcdFx0ICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuXHRcdFx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoM24pIHtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlIC5wcm9kdWN0IHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbnRhYmxlLnNob3BfYXR0cmlidXRlcyB7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHR0cjpudGgtY2hpbGQob2RkKSwgdHI6bnRoLWNoaWxkKGV2ZW4pLCB0ci5vZGQsIHRyLmV2ZW4sIHRoIHtcclxuXHRcdCYsIHRkLCB0aCB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dHI6bnRoLWNoaWxkKDEpLCB0cjpudGgtY2hpbGQoMiksIHRyOm50aC1jaGlsZCgzKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0dGQsIHRoIHtcclxuXHRcdHBhZGRpbmc6IDVweCAwO1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0fVxyXG5cclxuXHRwIHtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0fVxyXG59XHJcblxyXG5ib2R5LmFyY2hpdmUud29vY29tbWVyY2Uge1xyXG5cdHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xyXG5cdFx0aDMge1xyXG5cdFx0XHRoZWlnaHQ6IDgwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0dGFibGUuc2hvcF9hdHRyaWJ1dGVzIHtcclxuXHRcdFx0dHIge1xyXG5cdFx0XHRcdCYsIHRkLCB0aCB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDAgNXB4O1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0dGQ6bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0XHQmLCBwIHtcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5ib2R5LmFyY2hpdmUgdWwucHJvZHVjdHMgbGkgLmltZy1jb250YWluZXIge1xyXG5cdGhlaWdodDogMTQwcHg7XHJcbn1cclxuXHJcbmJvZHkuc2luZ2xlLXByb2R1Y3QgLmNvbnRhaW5lci53b29jb21tZXJjZSB7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHJcblx0LnJlbGF0ZWQucHJvZHVjdHMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbmJvZHkuc2luZ2xlLXByb2R1Y3Qud29vY29tbWVyY2UgI2NvbnRlbnQgLnR5cGUtcHJvZHVjdCB7XHJcblx0Zm9udC1zaXplOiAwO1xyXG5cclxuXHRoMSB7XHJcblx0XHRmb250LXNpemU6IDIxcHg7XHJcblx0fVxyXG5cclxuXHQ+IC5iYXNpYywgPiAuc3BlY3MsID4gLmltYWdlcyB7XHJcblx0XHR3aWR0aDogMjAlO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxNCU7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0ZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcblx0XHQ+IC5pbWFnZXMge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdD4gLmltYWdlcyB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogOTAlO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG5cclxuXHQ+IC5zcGVjcyB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogNjYlO1xyXG5cdFx0Ly9kaXNwbGF5OiBibG9jaztcclxuXHR9XHJcblxyXG5cdHRhYmxlIHtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRcdHRyOm50aC1jaGlsZChvZGQpLCB0cjpudGgtY2hpbGQoZXZlbiksIHRyLm9kZCwgdHIuZXZlbiwgdGgge1xyXG5cdFx0XHQmLCB0ZCB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHR0ZCwgdGgge1xyXG5cdFx0XHRwYWRkaW5nOiAycHggNXB4O1xyXG5cdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0fVxyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc3BlY3MgdGFibGUge1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGNQcmltYXJ5O1xyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuYmFzaWMgdGFibGUge1xyXG5cdFx0dHI6bnRoLWNoaWxkKDEpLCB0cjpudGgtY2hpbGQoMiksIHRyOm50aC1jaGlsZCgzKSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0dGQsIHRoIHtcclxuXHRcdFx0cGFkZGluZzogNXB4IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc2t1X3dyYXBwZXIge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi52YXJpYXRpb25zIHtcclxuXHRmb250LXNpemU6IDA7XHJcblxyXG5cdC52YXJpYXRpb24tY2h1bmsge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0d2lkdGg6IDMyJTtcclxuXHRcdG1hcmdpbi1yaWdodDogMiU7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdH1cclxuXHJcblx0XHR0YWJsZSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRcdFx0dHIub2RkLCB0ci5ldmVuLCB0cjpudGgtY2hpbGQob2RkKSwgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGxpZ2h0ZW4oJGNQcmltYXJ5LCA2MCUpLCAwLjUpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHR0ZCB7XHJcblx0XHRcdFx0cGFkZGluZzogMnB4IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5zcGVjcyB0YWJsZSB0ZCBoMiB7XHJcbiAgICBjb2xvcjogIzQwNDA0MDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vLyBpUGFkIC0gTGFuZHNjYXBlXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHRib2R5ID4gbmF2Lm1haW4tbmF2aWdhdGlvbiB7XHJcblx0XHQubWVudS1tYWluLW1lbnUtY29udGFpbmVyIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHRcdC5tZW51LXJlY2h0ZXJtZW51LWNvbnRhaW5lciB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cdGJvZHkgPiBoZWFkZXIgZm9ybS53b29jb21tZXJjZS1wcm9kdWN0LXNlYXJjaCB7XHJcblx0XHRidXR0b24ge1xyXG5cdFx0XHR3aWR0aDogMTUlO1xyXG5cdFx0fVxyXG5cdFx0aW5wdXQge1xyXG5cdFx0XHR3aWR0aDogODUlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ym9keSBmb3JtLndwY2Y3LWZvcm0gPiBwID4gbGFiZWwge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHRib2R5LmFyY2hpdmUgdWwucHJvZHVjdHMgbGkgLmltZy1jb250YWluZXIge1xyXG5cdFx0aGVpZ2h0OiA5MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLy8gaVBhZCAtIFBvcnRyYWl0XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdGh0bWwgYm9keSB7XHJcblx0XHQuY29udGFpbmVyLmhhcy1zaWRlYmFyIG1haW4ge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5jb250ZW50IGFzaWRlIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0XHRzZWN0aW9uIHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRcdFx0JiNibGFjay1zdHVkaW8tdGlueW1jZS01IHtcclxuXHRcdFx0XHRcdGgyIHtcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmI2JsYWNrLXN0dWRpby10aW55bWNlLTQge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMjAwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0PiBoZWFkZXIgZm9ybS53b29jb21tZXJjZS1wcm9kdWN0LXNlYXJjaCB7XHJcblx0XHRcdGJ1dHRvbiB7XHJcblx0XHRcdFx0d2lkdGg6IDIwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpbnB1dCB7XHJcblx0XHRcdFx0d2lkdGg6IDgwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdD4gZm9vdGVyIC5mb290ZXItd2lkZ2V0PmFzaWRlIHtcclxuXHRcdCAgICBkaXNwbGF5OiBibG9jaztcclxuXHRcdCAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0ICAgIG1hcmdpbjogMTBweCAwO1xyXG5cclxuXHRcdCAgICAmOmxhc3QtY2hpbGQge1xyXG5cdFx0ICAgIFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHQgICAgXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0ICAgIH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHVsLmNhdGVnb3JpZXMge1xyXG5cdFx0bGksIGxpLnByb2R1Y3Qge1xyXG5cdFx0XHR3aWR0aDogNDklO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIlO1xyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoMm4pIHtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGJvZHkuYXJjaGl2ZSB1bC5wcm9kdWN0cyBsaSAuaW1nLWNvbnRhaW5lciB7XHJcblx0XHRoZWlnaHQ6IDE0MHB4O1xyXG5cdH1cclxuXHJcblx0Ym9keSBuYXYubWFpbi1uYXZpZ2F0aW9uIHVsIGxpIGEge1xyXG5cdCAgICBmb250LXNpemU6IDE0cHg7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG5cdH1cclxuXHJcblx0Ym9keS5zaW5nbGUtcHJvZHVjdC53b29jb21tZXJjZSAjY29udGVudCAudHlwZS1wcm9kdWN0IHtcclxuXHRcdD4gLmJhc2ljLCA+IC5zcGVjcywgPiAuaW1hZ2VzIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRmbG9hdDogbm9uZTtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnZhcmlhdGlvbnMgLnZhcmlhdGlvbi1jaHVuayB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRtYXJnaW46IDA7XHJcblxyXG5cdFx0dGQsIHRoIHtcclxuXHRcdFx0d2lkdGg6IDMzLjMzMyU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyBNb2JpbGVcclxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcblx0Ym9keSA+IGhlYWRlciB7XHJcblx0XHQuY29udGFpbmVyIHtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcdFx0LnNpdGUtYnJhbmRpbmcge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCNsYW5nX3NlbF9saXN0LCAjbGFuZ19zZWxfY2xpY2sge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcdFx0PiB1bCB7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRmb3JtLndvb2NvbW1lcmNlLXByb2R1Y3Qtc2VhcmNoIHtcclxuXHRcdFx0cG9zaXRpb246IHN0YXRpYztcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbi10b3A6IC0xNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ym9keSA+IG5hdi5tYWluLW5hdmlnYXRpb24ge1xyXG5cdFx0aGVpZ2h0OiA0N3B4O1xyXG5cdH1cclxuXHJcblx0aHRtbCBib2R5IC5jb250ZW50IGFzaWRlIHNlY3Rpb24jYmxhY2stc3R1ZGlvLXRpbnltY2UtNCB7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdH1cclxuXHJcblx0Ym9keT5mb290ZXIgLmZvb3Rlci13aWRnZXQ+YXNpZGUgZm9ybSBpbnB1dCB7XHJcblx0XHR3aWR0aDogNjAlO1xyXG5cclxuXHRcdCZbdHlwZT1cInN1Ym1pdFwiXSB7XHJcblx0XHRcdHdpZHRoOiA0MCU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRodG1sIGJvZHkgLmNvbnRhaW5lci5oYXMtc2lkZWJhciBtYWluIHtcclxuXHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0fVxyXG5cclxuXHRib2R5IG5hdi5tYWluLW5hdmlnYXRpb24gI3ByaW1hcnktbWVudSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1ByaW1hcnk7XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHVsLmNhdGVnb3JpZXMge1xyXG5cdFx0bGksIGxpLnByb2R1Y3Qge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ym9keS53b29jb21tZXJjZSAuY29udGVudCBhc2lkZSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0Ym9keS53b29jb21tZXJjZSAuY29udGVudCBzZWN0aW9uLndvb2NvbW1lcmNlLWNvbnRlbnQge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRoMSB7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0Zm9udC1zaXplOiAyMXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ym9keS5hcmNoaXZlIHVsLnByb2R1Y3RzIGxpIC5pbWctY29udGFpbmVyIHtcclxuXHQgICAgaGVpZ2h0OiA4MHB4O1xyXG5cdH1cclxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBTYXNzIENTUzMgTWl4aW5zISBUaGUgQ3Jvc3MtQnJvd3NlciBDU1MzIFNhc3MgTGlicmFyeVxyXG4gIEJ5OiBNYXR0aGlldSBBdXNzYWd1ZWwsIGh0dHA6Ly93d3cubXluYW1laXNtYXR0aGlldS5jb20sIEBtYXR0aGlldV90d2VldHNcclxuICBMaXN0IG9mIENTUzMgU2FzcyBNaXhpbnMgRmlsZSB0byBiZSBAaW1wb3J0ZWQgYW5kIEBpbmNsdWRlZCBhcyB5b3UgbmVlZFxyXG4gIFRoZSBwdXJwb3NlIG9mIHRoaXMgbGlicmFyeSBpcyB0byBmYWNpbGl0YXRlIHRoZSB1c2Ugb2YgQ1NTMyBvbiBkaWZmZXJlbnQgYnJvd3NlcnMgYXZvaWRpbmcgSEFSRCBUTyBSRUFEIGFuZCBORVZFUlxyXG4gIEVORElORyBjc3MgZmlsZXNcclxuICBub3RlOiBBbGwgQ1NTMyBQcm9wZXJ0aWVzIGFyZSBiZWluZyBzdXBwb3J0ZWQgYnkgU2FmYXJpIDVcclxuICBtb3JlIGluZm86IGh0dHA6Ly93d3cuZmluZG1lYnlpcC5jb20vbGl0bXVzLyNjc3MzLXByb3BlcnRpZXNcclxuICBNaXhpbnMgYXZhaWxhYmxlOlxyXG4gICAgLSAgIGNzczMtcHJlZml4ICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBQcm9wZXJ0eSwgVmFsdWVcclxuICAgIC0gICBiYWNrZ3JvdW5kLWdyYWRpZW50ICAgICAtIGFyZ3VtZW50czogU3RhcnQgQ29sb3I6ICMzQzNDM0MsIEVuZCBDb2xvcjogIzk5OTk5OVxyXG4gICAgLSAgIGJhY2tncm91bmQtaG9yaXpvbnRhbCAgIC0gYXJndW1lbnRzOiBTdGFydCBDb2xvcjogIzNDM0MzQywgRW5kIENvbG9yOiAjOTk5OTk5XHJcbiAgICAtICAgYmFja2dyb3VuZC1yYWRpYWwgICAgICAgLSBhcmd1bWVudHM6IFN0YXJ0IENvbG9yOiAjRkZGRkZGLCBTdGFydCBwb3NpdGlvbjogMCUsIEVuZCBDb2xvcjogIzAwMDAwMCwgRW5kIHBvc2l0aW9uOiAxMDAlXHJcbiAgICAtICAgYmFja2dyb3VuZC1zaXplICAgICAgICAgLSBhcmd1bWVudHM6IFdpZHRoOiAxMDAlLCBIZWlnaHQ6IDEwMCVcclxuICAgIC0gICBiYWNrZ3JvdW5kLW9wYWNpdHkgICAgICAtIGFyZ3VtZW50czogQ29sb3I6ICMwMDAsIE9wYWNpdHk6IC44NVxyXG4gICAgLSAgIGJvcmRlci1yYWRpdXMgICAgICAgICAgIC0gYXJndW1lbnRzOiBSYWRpdXM6IDVweFxyXG4gICAgLSAgIGJvcmRlci1yYWRpdXMtc2VwYXJhdGUgIC0gYXJndW1lbnRzOiBUb3AgTGVmdDogNXB4LCBUb3AgUmlnaHQ6IDVweCwgQm90dG9tIExlZnQ6IDVweCwgQm90dG9tIFJpZ2h0OiA1cHhcclxuICAgIC0gICBib3ggICAgICAgICAgICAgICAgICAgICAtIGFyZ3VtZW50czogT3JpZW50YXRpb246IGhvcml6b250YWwsIFBhY2s6IGNlbnRlciwgQWxpZ246IGNlbnRlclxyXG4gICAgLSAgIGJveC1yZ2JhICAgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBSOiA2MCwgRzogMywgQjogMTIsIE9wYWNpdHk6IDAuMjMsIENvbG9yOiAjM0MzQzNDXHJcbiAgICAtICAgYm94LXNoYWRvdyAgICAgICAgICAgICAgLSBhcmd1bWVudHM6IFg6IDJweCwgWTogMnB4LCBCbHVyOiA1cHgsIENvbG9yOiByZ2JhKDAsMCwwLC40KVxyXG4gICAgLSAgIGJveC1zaXppbmcgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBUeXBlOiBib3JkZXItYm94XHJcbiAgICAtICAgY29sdW1ucyAgICAgICAgICAgICAgICAgLSBhcmd1bWVudHM6IENvdW50OiAzLCBHYXA6IDEwXHJcbiAgICAtICAgZG91YmxlLWJvcmRlcnMgICAgICAgICAgLSBhcmd1bWVudHM6IENvbG9yIE9uZTogIzNDM0MzQywgQ29sb3IgVHdvOiAjOTk5OTk5LCBSYWRpdXM6IDBcclxuICAgIC0gICBmbGV4ICAgICAgICAgICAgICAgICAgICAtIGFyZ3VtZW50czogVmFsdWU6IDFcclxuICAgIC0gICBmbGlwICAgICAgICAgICAgICAgICAgICAtIGFyZ3VtZW50czogU2NhbGVYOiAtMVxyXG4gICAgLSAgIGZvbnQtZmFjZSAgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBGb250IEZhbWlseTogbXlGb250LCBFb3QgRmlsZSBTcmM6IG15Rm9udC5lb3QsIFdvZmYgRmlsZSBTcmM6IG15Rm9udC53b2ZmLCBUdGYgRmlsZSBTcmM6IG15Rm9udC50dGZcclxuICAgIC0gICBvcGFjaXR5ICAgICAgICAgICAgICAgICAtIGFyZ3VtZW50czogT3BhY2l0eTogMC41XHJcbiAgICAtICAgb3V0bGluZSByYWRpdXMgICAgICAgICAgLSBhcmd1bWVudHM6IFJhZGl1czogNXB4XHJcbiAgICAtICAgcmVzaXplICAgICAgICAgICAgICAgICAgLSBhcmd1bWVudHM6IERpcmVjdGlvbjogYm90aFxyXG4gICAgLSAgIHJvdGF0ZSAgICAgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBEZWdyZWU6IDAsIE0xMTogMCwgTTEyOiAwLCBNMjE6IDAsIE0yMjogMFxyXG4gICAgQ1NTIE1hdHJpeCBSb3RhdGlvbiBDYWxjdWxhdG9yIGh0dHA6Ly93d3cuYm9vZ2Rlc2lnbi5jb20vZXhhbXBsZXMvdHJhbnNmb3Jtcy9tYXRyaXgtY2FsY3VsYXRvci5odG1sXHJcbiAgICAtICAgdGV4dC1zaGFkb3cgICAgICAgICAgICAgLSBhcmd1bWVudHM6IFg6IDJweCwgWTogMnB4LCBCbHVyOiA1cHgsIENvbG9yOiByZ2JhKDAsMCwwLC40KVxyXG4gICAgLSAgIHRyYW5zZm9ybSAgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBQYXJhbWV0ZXJzOiBudWxsXHJcbiAgICAtICAgdHJhbnNmb3JtLXN0eWxlICAgICAgICAgLSBhcmd1bWVudHM6IFN0eWxlOiBwcmVzZXJ2ZS0zZFxyXG4gICAgLSAgIHRyYW5zaXRpb24gICAgICAgICAgICAgIC0gRGVmYXVsdCBhcmd1bWVudHM6IFdoYXQ6IGFsbCwgTGVuZ3RoOiAxcywgRWFzaW5nOiBlYXNlLWluLW91dFxyXG4gICAgLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIEV4YW1wbGVzOiBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMnMgZWFzZS1pbi1vdXQpO1xyXG4gICAgLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDFzIGVhc2UtaW4gMnMsIHdpZHRoIDJzIGVhc2Utb3V0KTtcclxuICAgIC0gICB0cmlwbGUtYm9yZGVycyAgICAgICAgICAtIGFyZ3VtZW50czogQ29sb3IgT25lOiAjM0MzQzNDLCBDb2xvciBUd286ICM5OTk5OTksIENvbG9yIFRocmVlOiAjMDAwMDAwLCBSYWRpdXM6IDBcclxuICAgIC0gICBrZXlmcmFtZXMgICAgICAgICAgICAgICAtIGFyZ3VtZW50czogQW5pbWF0aW9uIG5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIGNvbnRlbnQ6ICAgQW5pbWF0aW9uIGNzc1xyXG4gICAgLSAgIGFuaW1hdGlvbiAgICAgICAgICAgICAgIC0gYXJndW1lbnRzOiBuYW1lIGR1cmF0aW9uIHRpbWluZy1mdW5jdGlvbiBkZWxheSBpdGVyYXRpb24tY291bnQgZGlyZWN0aW9uIGZpbGwtbW9kZSBwbGF5LXN0YXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChodHRwOi8vd3d3Lnczc2Nob29scy5jb20vY3NzcmVmL2NzczNfcHJfYW5pbWF0aW9uLmFzcClcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogQUREUyBBIEJST1dTRVIgUFJFRklYIFRPIFRIRSBQUk9QRVJUWSAqL1xyXG5AbWl4aW4gY3NzMy1wcmVmaXgoJHByb3BlcnR5LCAkdmFsdWUpIHtcclxuICAtd2Via2l0LSN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xyXG4gICAta2h0bWwtI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XHJcbiAgICAgLW1vei0jeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcclxuICAgICAgLW1zLSN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xyXG4gICAgICAgLW8tI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XHJcbiAgICAgICAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcclxufVxyXG5cclxuLyogQkFDS0dST1VORCBHUkFESUVOVCAqL1xyXG5AbWl4aW4gYmFja2dyb3VuZC1ncmFkaWVudCgkc3RhcnRDb2xvcjogIzNDM0MzQywgJGVuZENvbG9yOiAjOTk5OTk5KSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhcnRDb2xvcjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oJHN0YXJ0Q29sb3IpLCB0bygkZW5kQ29sb3IpKTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0Q29sb3IsICRlbmRDb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnRDb2xvciwgJGVuZENvbG9yKTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0Q29sb3IsICRlbmRDb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xyXG4gICAgZmlsdGVyOiAgICAgICAgICAgIHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yU3RyPScjeyRzdGFydENvbG9yfScsIGVuZENvbG9yU3RyPScjeyRlbmRDb2xvcn0nKTtcclxufVxyXG5cclxuLyogQkFDS0dST1VORCBIT1JJWk9OVEFMICovXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLWhvcml6b250YWwoJHN0YXJ0Q29sb3I6ICMzQzNDM0MsICRlbmRDb2xvcjogIzk5OTk5OSkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXJ0Q29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSgkc3RhcnRDb2xvciksIHRvKCRlbmRDb2xvcikpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0Q29sb3IsICRlbmRDb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnRDb2xvciwgJGVuZENvbG9yKTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICAgICAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogICAgICAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0Q29sb3IsICRlbmRDb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgICAgIGxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnRDb2xvciwgJGVuZENvbG9yKTtcclxuICAgIGZpbHRlcjogICAgICAgICAgICBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvclN0cj0nI3skc3RhcnRDb2xvcn0nLCBlbmRDb2xvclN0cj0nI3skZW5kQ29sb3J9JywgZ3JhZGllbnRUeXBlPScxJyk7XHJcbn1cclxuXHJcbi8qIEJBQ0tHUk9VTkQgUkFESUFMICovXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLXJhZGlhbCgkc3RhcnRDb2xvcjogI0ZGRkZGRiwgJHN0YXJ0UG9zOiAwJSwgJGVuZENvbG9yOiAjMDAwMDAwLCAkZW5kUG9zOjEwMCUpIHtcclxuICAgIGJhY2tncm91bmQ6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgJHN0YXJ0Q29sb3IgJHN0YXJ0UG9zLCAkZW5kQ29sb3IgJGVuZFBvcyk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KHJhZGlhbCwgY2VudGVyIGNlbnRlciwgMHB4LCBjZW50ZXIgY2VudGVyLCAxMDAlLCBjb2xvci1zdG9wKCRzdGFydFBvcywkc3RhcnRDb2xvciksIGNvbG9yLXN0b3AoJGVuZFBvcywkZW5kQ29sb3IpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgJHN0YXJ0Q29sb3IgJHN0YXJ0UG9zLCRlbmRDb2xvciAkZW5kUG9zKTtcclxuICAgIGJhY2tncm91bmQ6IC1vLXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsICRzdGFydENvbG9yICRzdGFydFBvcywkZW5kQ29sb3IgJGVuZFBvcyk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtbXMtcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgJHN0YXJ0Q29sb3IgJHN0YXJ0UG9zLCRlbmRDb2xvciAkZW5kUG9zKTtcclxuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgJHN0YXJ0Q29sb3IgJHN0YXJ0UG9zLCRlbmRDb2xvciAkZW5kUG9zKTtcclxufVxyXG5cclxuLyogQkFDS0dST1VORCBTSVpFICovXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLXNpemUoJHdpZHRoOiAxMDAlLCAkaGVpZ2h0OiAkd2lkdGgpIHtcclxuICBAaWYgdHlwZS1vZigkd2lkdGgpID09ICdudW1iZXInIGFuZCAkaGVpZ2h0ICE9IG51bGwge1xyXG4gICAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ2JhY2tncm91bmQtc2l6ZScsICR3aWR0aCAkaGVpZ2h0KTtcclxuICB9IEBlbHNlIHtcclxuICAgIEBpbmNsdWRlIGNzczMtcHJlZml4KCdiYWNrZ3JvdW5kLXNpemUnLCAkd2lkdGgpO1xyXG4gIH1cclxufVxyXG5cclxuLyogQkFDS0dST1VORCBDT0xPUiBPUEFDSVRZICovXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLW9wYWNpdHkoJGNvbG9yOiAjMDAwLCAkb3BhY2l0eTogMC44NSkge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgJG9wYWNpdHkpO1xyXG59XHJcblxyXG4vKiBCT1JERVIgUkFESVVTICovXHJcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6IDVweCkge1xyXG4gICAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ2JvcmRlci1yYWRpdXMnLCAkcmFkaXVzKTtcclxufVxyXG5cclxuQG1peGluIGJvcmRlci1yYWRpdXMtc2VwYXJhdGUoJHRvcExlZnRSYWRpdXM6IDVweCwgJHRvcFJpZ2h0UmFkaXVzOiA1cHgsICRib3R0b21MZWZ0UmFkaXVzOiA1cHgsICRib3R0b21SaWdodFJhZGl1czogNXB4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAgICAgJHRvcExlZnRSYWRpdXM7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogICAgJHRvcFJpZ2h0UmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3R0b21SaWdodFJhZGl1cztcclxuICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICAkYm90dG9tTGVmdFJhZGl1cztcclxuXHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6ICAgICAkdG9wTGVmdFJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6ICAgICR0b3BSaWdodFJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6ICRib3R0b21SaWdodFJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogICRib3R0b21MZWZ0UmFkaXVzO1xyXG5cclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAgICAgJHRvcExlZnRSYWRpdXM7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICAgICR0b3BSaWdodFJhZGl1cztcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvdHRvbVJpZ2h0UmFkaXVzO1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICAkYm90dG9tTGVmdFJhZGl1cztcclxufVxyXG5cclxuLyogQk9YICovXHJcbkBtaXhpbiBib3goJG9yaWVudDogaG9yaXpvbnRhbCwgJHBhY2s6IGNlbnRlciwgJGFsaWduOiBjZW50ZXIpIHtcclxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICBkaXNwbGF5OiAtbW96LWJveDtcclxuICBkaXNwbGF5OiBib3g7XHJcblxyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdib3gtb3JpZW50JywgJG9yaWVudCk7XHJcbiAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ2JveC1wYWNrJywgJHBhY2spO1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdib3gtYWxpZ24nLCAkYWxpZ24pO1xyXG59XHJcblxyXG4vKiBCT1ggUkdCQSAqL1xyXG5AbWl4aW4gYm94LXJnYmEoJHI6IDYwLCAkZzogMywgJGI6IDEyLCAkb3BhY2l0eTogMC4yMywgJGNvbG9yOiAjM0MzQzNDKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkciwgJGcsICRiLCAkb3BhY2l0eSk7XHJcbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7JGNvbG9yfScsZW5kQ29sb3JzdHI9JyN7JGNvbG9yfScpO1xyXG4gICAgICAgICAgICB6b29tOiAgIDE7XHJcbn1cclxuXHJcblxyXG4vKiBCT1ggU0hBRE9XICovXHJcbkBtaXhpbiBib3gtc2hhZG93KCR4OiAycHgsICR5OiAycHgsICRibHVyOiA1cHgsICRjb2xvcjogcmdiYSgwLDAsMCwuNCksICRpbnNldDogXCJcIikge1xyXG4gIEBpZiAoJGluc2V0ICE9IFwiXCIpIHtcclxuICAgIEBpbmNsdWRlIGNzczMtcHJlZml4KCdib3gtc2hhZG93JywgJGluc2V0ICR4ICR5ICRibHVyICRjb2xvcik7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAaW5jbHVkZSBjc3MzLXByZWZpeCgnYm94LXNoYWRvdycsICR4ICR5ICRibHVyICRjb2xvcik7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBCT1ggU0laSU5HICovXHJcbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlOiBib3JkZXItYm94KSB7XHJcbiAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ2JveC1zaXppbmcnLCAkdHlwZSk7XHJcbn1cclxuXHJcbi8qIENPTFVNTlMgKi9cclxuQG1peGluIGNvbHVtbnMoJGNvdW50OiAzLCAkZ2FwOiAxMCkge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdjb2x1bW4tY291bnQnLCAkY291bnQpO1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdjb2x1bW4tZ2FwJywgJGdhcCk7XHJcbn1cclxuXHJcbi8qIERPVUJMRSBCT1JERVJTICovXHJcbkBtaXhpbiBkb3VibGUtYm9yZGVycygkY29sb3JPbmU6ICMzQzNDM0MsICRjb2xvclR3bzogIzk5OTk5OSwgJHJhZGl1czogMCkge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvck9uZTtcclxuXHJcbiAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ2JveC1zaGFkb3cnLCAwIDAgMCAxcHggJGNvbG9yVHdvKTtcclxuXHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyggJHJhZGl1cyApO1xyXG59XHJcblxyXG4vKiBGTEVYICovXHJcbkBtaXhpbiBmbGV4KCR2YWx1ZTogMSkge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdib3gtZmxleCcsICR2YWx1ZSk7XHJcbn1cclxuXHJcbi8qIEZMSVAgKi9cclxuQG1peGluIGZsaXAoJHNjYWxlWDogLTEpIHtcclxuICBAaW5jbHVkZSBjc3MzLXByZWZpeCgndHJhbnNmb3JtJywgc2NhbGVYKCRzY2FsZVgpKTtcclxuICBmaWx0ZXI6ICAgICAgICAgICAgRmxpcEg7XHJcbiAgLW1zLWZpbHRlcjogICAgICAgIFwiRmxpcEhcIjtcclxufVxyXG5cclxuLyogRk9OVCBGQUNFICovXHJcbkBtaXhpbiBmb250LWZhY2UoJGZvbnRGYW1pbHk6IG15Rm9udCwgJGVvdEZpbGVTcmM6ICdteUZvbnQuZW90JywgJHdvZmZGaWxlU3JjOiAnbXlGb250LndvZmYnLCAkdHRmRmlsZVNyYzogJ215Rm9udC50dGYnLCAkc3ZnRmlsZVNyYzogJ215Rm9udC5zdmcnLCAkc3ZnRm9udElEOiAnI215Rm9udCcpIHtcclxuICBmb250LWZhbWlseTogJGZvbnRGYW1pbHk7XHJcbiAgc3JjOiB1cmwoJGVvdEZpbGVTcmMpICBmb3JtYXQoJ2VvdCcpLFxyXG4gICAgICAgdXJsKCR3b2ZmRmlsZVNyYykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICB1cmwoJHR0ZkZpbGVTcmMpICBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICB1cmwoJHN2Z0ZpbGVTcmMgKyAkc3ZnRm9udElEKSBmb3JtYXQoJ3N2ZycpO1xyXG59XHJcblxyXG4vKiBPUEFDSVRZICovXHJcbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5OiAwLjUpIHtcclxuICAgICRvcGFjaXR5TXVsdGlwbGllZDogKCRvcGFjaXR5ICogMTAwKTtcclxuICAgIFxyXG4gICAgZmlsdGVyOiAgICAgICAgIGFscGhhKG9wYWNpdHk9JG9wYWNpdHlNdWx0aXBsaWVkKTtcclxuICAgIC1tcy1maWx0ZXI6ICAgICBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PVwiICsgJG9wYWNpdHlNdWx0aXBsaWVkICsgXCIpXCI7XHJcbiAgICBAaW5jbHVkZSBjc3MzLXByZWZpeCgnb3BhY2l0eScsICRvcGFjaXR5KTtcclxufVxyXG5cclxuXHJcbi8qIE9VVExJTkUgUkFESVVTICovXHJcbkBtaXhpbiBvdXRsaW5lLXJhZGl1cygkcmFkaXVzOiA1cHgpIHtcclxuICBAaW5jbHVkZSBjc3MzLXByZWZpeCgnb3V0bGluZS1yYWRpdXMnLCAkcmFkaXVzKTtcclxufVxyXG5cclxuLyogUkVTSVpFICovXHJcbkBtaXhpbiByZXNpemUoJGRpcmVjdGlvbjogYm90aCkge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdyZXNpemUnLCAkZGlyZWN0aW9uKTtcclxufVxyXG5cclxuLyogUk9UQVRFKi9cclxuQG1peGluIHJvdGF0ZSgkZGVnOiAwLCAkbTExOiAwLCAkbTEyOiAwLCAkbTIxOiAwLCAkbTIyOiAwKSB7XHJcbiAgQGluY2x1ZGUgY3NzMy1wcmVmaXgoJ3RyYW5zZm9ybScsIHJvdGF0ZSgkZGVnICsgZGVnKSk7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KFxyXG4gICAgICAgTTExPSN7JG0xMX0sIE0xMj0jeyRtMTJ9LCBNMjE9I3skbTIxfSwgTTIyPSN7JG0yMn0sIHNpemluZ01ldGhvZD0nYXV0byBleHBhbmQnKTtcclxuICAgIHpvb206IDE7XHJcbn1cclxuXHJcbi8qIFRFWFQgU0hBRE9XICovXHJcbkBtaXhpbiB0ZXh0LXNoYWRvdygkeDogMnB4LCAkeTogMnB4LCAkYmx1cjogNXB4LCAkY29sb3I6IHJnYmEoMCwwLDAsLjQpKSB7XHJcbiAgICB0ZXh0LXNoYWRvdzogJHggJHkgJGJsdXIgJGNvbG9yO1xyXG59XHJcblxyXG4vKiBUUkFOU0ZPUk0gICovXHJcbkBtaXhpbiB0cmFuc2Zvcm0oJHBhcmFtcykge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCd0cmFuc2Zvcm0nLCAkcGFyYW1zKTtcclxufVxyXG5cclxuLyogVFJBTlNGT1JNIFNUWUxFICovXHJcbkBtaXhpbiB0cmFuc2Zvcm0tc3R5bGUoJHN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCd0cmFuc2Zvcm0tc3R5bGUnLCAkc3R5bGUpO1xyXG59XHJcblxyXG4vKiBUUkFOU0lUSU9OICovXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wZXJ0aWVzLi4uKSB7XHJcbiAgXHJcbiAgQGlmIGxlbmd0aCgkcHJvcGVydGllcykgPj0gMSB7XHJcbiAgICBAaW5jbHVkZSBjc3MzLXByZWZpeCgndHJhbnNpdGlvbicsICRwcm9wZXJ0aWVzKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIHtcclxuICAgIEBpbmNsdWRlIGNzczMtcHJlZml4KCd0cmFuc2l0aW9uJywgJHdoYXQ6IGFsbCwgJGxlbmd0aDogMXMsICRlYXNpbmc6IGVhc2UtaW4tb3V0KTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFRSSVBMRSBCT1JERVJTICovXHJcbkBtaXhpbiB0cmlwbGUtYm9yZGVycygkY29sb3JPbmU6ICMzQzNDM0MsICRjb2xvclR3bzogIzk5OTk5OSwgJGNvbG9yVGhyZWU6ICMwMDAwMDAsICRyYWRpdXM6IDApIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvck9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRyYWRpdXMpO1xyXG5cclxuICAgIEBpbmNsdWRlIGNzczMtcHJlZml4KCdib3gtc2hhZG93JywgMCAwIDAgMXB4ICRjb2xvclR3bywgMCAwIDAgMnB4ICRjb2xvclRocmVlKTtcclxufVxyXG5cclxuLyogS0VZRlJBTUVTICovXHJcbkBtaXhpbiBrZXlmcmFtZXMoJGFuaW1hdGlvbi1uYW1lKSB7XHJcbiAgQC13ZWJraXQta2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbiAgQC1tb3ota2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9ICBcclxuICBALW1zLWtleWZyYW1lcyAjeyRhbmltYXRpb24tbmFtZX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG4gIEAtby1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgIEBjb250ZW50O1xyXG4gIH0gIFxyXG4gIEBrZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLyogQU5JTUFUSU9OICovXHJcbkBtaXhpbiBhbmltYXRpb24oJHN0cikge1xyXG4gIEBpbmNsdWRlIGNzczMtcHJlZml4KCdhbmltYXRpb24nLCAkc3RyKTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbj0gICAgICAgICAgICBDdXN0b20gbWl4aW5zICAgICAgICAgICAgPVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbkBtaXhpbiBpbWFnZVJlcGxhY2VtZW50KCRpbWFnZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBmb250OiAwLzAgYTtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYmFja2dyb3VuZDogJGltYWdlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6ICR3aWR0aDtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbn1cclxuXHJcbkBtaXhpbiBmb250YXdlc29tZSgpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XHJcbn1cclxuXHJcbkBtaXhpbiBtb2JpbGVNZW51KCRtZW51V2lkdGgsICRkaWZmZXJlbmNlV2lkdGgpIHtcclxuXHQkcmlnaHRWYWx1ZTogJG1lbnVXaWR0aCAtICRkaWZmZXJlbmNlV2lkdGg7XHJcblxyXG5cdG5hdi5tYWluLW5hdmlnYXRpb24ge1xyXG5cdFx0I3ByaW1hcnktbWVudSwgLm1lbnUge1xyXG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0cmlnaHQ6IC0kbWVudVdpZHRoO1xyXG5cdFx0XHR3aWR0aDogJG1lbnVXaWR0aDtcclxuXHRcdFx0aGVpZ2h0OiAxMDB2aDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRib2R5LnRvZ2dsZWQge1xyXG5cdFx0bmF2Lm1haW4tbmF2aWdhdGlvbiB7XHJcblx0XHRcdCNwcmltYXJ5LW1lbnUsIC5tZW51IHtcclxuXHRcdFx0XHRyaWdodDogLSRkaWZmZXJlbmNlV2lkdGg7XHJcblx0XHRcdH1cclxuXHRcdFx0YnV0dG9uLm5hdmljb24ge1xyXG5cdFx0XHRcdHJpZ2h0OiAkcmlnaHRWYWx1ZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGlzQ29udGFpbmVyKCkge1xyXG5cdHdpZHRoOiA5MCU7XHJcblx0bWF4LXdpZHRoOiAxMjgwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbkBtaXhpbiBhZGRTaGFkb3coKSB7XHJcblx0Ym94LXNoYWRvdzogMCAzcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLyotLS0tLSAgRW5kIG9mIEN1c3RvbSBtaXhpbnMgIC0tLS0tLSovIl0sIm1hcHBpbmdzIjoiQUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dFQTBDZ0U7QUFFaEUsMkNBQTJDO0FBVTNDLHlCQUF5QjtBQVl6QiwyQkFBMkI7QUFZM0IsdUJBQXVCO0FBVXZCLHFCQUFxQjtBQVNyQiw4QkFBOEI7QUFNOUIsbUJBQW1CO0FBc0JuQixTQUFTO0FBV1QsY0FBYztBQVNkLGdCQUFnQjtBQVNoQixnQkFBZ0I7QUFLaEIsYUFBYTtBQU1iLG9CQUFvQjtBQVNwQixVQUFVO0FBS1YsVUFBVTtBQU9WLGVBQWU7QUFTZixhQUFhO0FBVWIsb0JBQW9CO0FBS3BCLFlBQVk7QUFLWixXQUFXO0FBUVgsaUJBQWlCO0FBS2pCLGdCQUFnQjtBQUtoQixxQkFBcUI7QUFLckIsZ0JBQWdCO0FBWWhCLG9CQUFvQjtBQVNwQixlQUFlO0FBbUJmLGVBQWU7QUFRZjs7dUNBRXVDO0FBNkR2Qyx1Q0FBdUM7QUQ5VXZDLEFBQUEsS0FBSyxDQUFDO0VBQ0wsT0FBTyxFQUFFLElBQUs7Q0FDZDs7QUFFRCxBQUNDLElBREcsQ0FDSCxFQUFFLEVBREgsQUFFSyxJQUZELENBQ0gsRUFBRSxDQUNFLENBQUMsRUFGTixBQUVTLElBRkwsQ0FDSCxFQUFFLENBQ0ssQ0FBQyxBQUFBLE1BQU0sRUFGZixBQUVrQixJQUZkLENBQ0gsRUFBRSxDQUNjLENBQUMsQUFBQSxRQUFRLEVBRjFCLEFBQ0ssSUFERCxDQUNDLEVBQUUsRUFEUCxBQUVLLElBRkQsQ0FDQyxFQUFFLENBQ0YsQ0FBQyxFQUZOLEFBRVMsSUFGTCxDQUNDLEVBQUUsQ0FDQyxDQUFDLEFBQUEsTUFBTSxFQUZmLEFBRWtCLElBRmQsQ0FDQyxFQUFFLENBQ1UsQ0FBQyxBQUFBLFFBQVEsRUFGMUIsQUFDUyxJQURMLENBQ0ssRUFBRSxFQURYLEFBRUssSUFGRCxDQUNLLEVBQUUsQ0FDTixD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 */
