/*
  Running Squiz Matrix
  Developed by Squiz - http://www.squiz.net
  Squiz, Squiz Matrix, MySource, MySource Matrix and Squiz.net are registered Trademarks of Squiz Pty Ltd
  Page generated: 13 March 2025 16:40:23
*/


/*------------*/
/*    VARIABLES */
/*------------*/
.text-grey {
  color: #45555f;
}

.text-teal {
  color: #007f99;
}

.text-green {
  color: #628100;
}

.bkgnd-white {
  background-color: #fff;
}

.bkgnd-white .triangle {
  background-color: #fff;
}

.bkgnd-light-grey {
  background-color: #c3c7cb;
}

.bkgnd-light-grey .triangle {
  background-color: #b5bbbf;
}

.bkgnd-medium-grey {
  background-color: #6a777f;
}

.bkgnd-medium-grey .triangle {
  background-color: #6a777f;
}

.bkgnd-grey {
  background-color: #45555f;
}

.bkgnd-grey .triangle {
  background-color: #45555f;
}

.bkgnd-yellow {
  background-color: #ffc61e;
}

.bkgnd-yellow .triangle {
  background-color: #ffc61e;
}

.bkgnd-light-blue {
  background-color: #02b4d8;
}

.bkgnd-light-blue .triangle {
  background-color: #02b4d8;
}

.bkgnd-teal {
  background-color: #007f99;
}

.bkgnd-teal .triangle {
  background-color: #007f99;
}

.bkgnd-blue {
  background-color: #007199;
}

.bkgnd-blue .triangle {
  background-color: #007199;
}

.bkgnd-green {
  background-color: #618002;
}

.bkgnd-green .triangle {
  background-color: #618002;
}

.bkgnd-lilac {
  background-color: #7f6689;
}

.bkgnd-lilac .triangle {
  background-color: #7f6689;
}

.bkgnd-purple {
  background-color: #681e5b;
}

.bkgnd-purple .triangle {
  background-color: #681e5b;
}

.bkgnd-red {
  background-color: #e40a57;
}

.bkgnd-red .triangle {
  background-color: #e40a57;
}

.bkgnd-darkRed {
  background-color: #581724;
}

.bkgnd-darkRed .triangle {
  background-color: #581724;
}

.highZ {
  z-index: 1000;
}

.highestZ, .primary-nav-container #main-menu .subnav-contents.menu-expanded {
  z-index: 99999;
}

/*--------*/
/*    RESET */
/*--------*/
/* RESET EVERYTHING (except lists) */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, abbr, address,
cite, code, del, dfn, em, img, ins,
kbd, q, samp, small, strong,
sub, sup, var, b, i, dl, dt, dd,
fieldset, form, label, legend,
table, caption, tbody, tfoot,
thead, tr, th, td, article, aside,
canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav,
section, summary, time, mark,
audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/*------------------------------------------------------------------------------------------------------------*/
/*  MIXINS                                                                                                    */
/*------------------------------------------------------------------------------------------------------------*/
/*  Usage:
            @include placeholder {
                font-style:italic;
                color: white;
                font-weight:100;
            }
    */
/* Usage: @include opacity(0.8); */
/* Usage: @include font-size(2.2); */
/* Usage:
        //a 3rd parameter of true will hide the text
        @include icomoon(clock, before)
        {
            //can set extra CSS here
            margin-right:5px;
        }
    */
/* css triangles */
/*  Usage:
            @include arrow('top','right', 8px, #fff, #ccc, 1px);
            @include arrow(top|bottom|left|right, left|center|right, arrow-size, arrow-color, arrow-border-color, arrow-border-size);
    */
/* called from @mixin arrow */
/*-------*/
/*  TYPE */
/*-------*/
h1, h2 {
  letter-spacing: 1px;
}

h1, h2, h3 {
  padding-bottom: 0;
  font-weight: 400;
  text-align: left;
}

h4, h5, h6 {
  font-weight: 400;
}

h1, .styleAsH1 {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 35px;
  line-height: 3.5rem;
  margin-bottom: 20px;
}

h2, .styleAsH2 {
  font-size: 27px;
  font-size: 2.7rem;
  line-height: 30px;
  line-height: 3rem;
  margin-top: 10px;
  margin-bottom: 10px;
}

h3, .styleAsH3 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 34px;
  line-height: 3.4rem;
  margin-bottom: 15px;
}

h4, .styleAsH4 {
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 30px;
  line-height: 3rem;
  margin-bottom: 10px;
}

p {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 21px;
  line-height: 2.1rem;
  padding-bottom: 1em;
  font-weight: 400;
}

p.small{font-size:0.9em};

/* Presentation */
::-webkit-input-placeholder {
  line-height: 1.2em;
  font-weight: 400;
  color: #666666;
}

:-moz-placeholder {
  line-height: 1.2em;
  font-weight: 400;
  color: #666666;
}

::-moz-placeholder {
  line-height: 1.2em;
  font-weight: 400;
  color: #666666;
}

:-ms-input-placeholder {
  line-height: 1.2em;
  font-weight: 400;
  color: #666666;
}

.funzone-font {
  font-family: "riffic_freebold";
}

body .dartmoor-story-font {
  font-family: "texgyreadventorregular";
}

body .dartmoor-story-font h1, body .dartmoor-story-font h2, body .dartmoor-story-font h3,
body .dartmoor-story-font p, body .dartmoor-story-font a, body .dartmoor-story-font li {
  font-family: "texgyreadventorregular" !important;
}

/*-------*/
/* FONTS */
/*-------*/
@font-face {
  font-family: 'riffic_freebold';
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0027/26919/rifficfree-bold-webfont.eot?v=0.2.0");
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0026/26918/rifficfree-bold-webfont-.eot?v=0.2.0#iefix") format("embedded-opentype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0022/26923/rifficfree-bold-webfont.woff2?v=0.2.0") format("woff2"), url("https://www.dartmoor.gov.uk/__data/assets/file/0021/26922/rifficfree-bold-webfont.woff?v=0.2.0") format("woff"), url("https://www.dartmoor.gov.uk/__data/assets/file/0020/26921/rifficfree-bold-webfont.ttf?v=0.2.0") format("truetype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0019/26920/rifficfree-bold-webfont.svg?v=0.2.0#riffic_freebold") format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'texgyreadventorregular';
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0024/26925/texgyreadventor-regular-webfont.eot?v=0.2.0");
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0023/26924/texgyreadventor-regular-webfont-.eot?v=0.2.0#iefix") format("embedded-opentype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0027/26928/texgyreadventor-regular-webfont.woff?v=0.2.0") format("woff"), url("https://www.dartmoor.gov.uk/__data/assets/file/0026/26927/texgyreadventor-regular-webfont.ttf?v=0.2.0") format("truetype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0025/26926/texgyreadventor-regular-webfont.svg?v=0.2.0#texgyreadventorregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'icomoon';
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0028/26929/icomoon-5avz9i.eot?v=0.2.0");
  src: url("https://www.dartmoor.gov.uk/__data/assets/file/0028/26929/icomoon-5avz9i.eot?v=0.2.0#iefix") format("embedded-opentype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0021/26931/icomoon-5avz9i.ttf?v=0.2.0") format("truetype"), url("https://www.dartmoor.gov.uk/__data/assets/file/0022/26932/icomoon-5avz9i.woff?v=0.3.0") format("woff"), url("https://www.dartmoor.gov.uk/__data/assets/file/0020/26930/icomoon-5avz9i.svg?v=0.2.0#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before, [class*=" icon-"]:before,
[class^="icon-"]:after, [class*=" icon-"]:after {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-menu-bars:before {
  content: "\e609";
}

.icon-cross:before, .header-container .logo-tools .menu-search-container .menu-icon.active:after, .header-container .logo-tools .menu-search-container .search-icon.active:after, .header-container .logo-tools .menu-search-container .home-icon.active:after {
  content: "\e608";
}

.icon-external-link:before {
  content: "\e800";
}

.icon-location-pin:before {
  content: "\e604";
}

.icon-mag-glass:before, .header-container .logo-tools .menu-search-container .search-icon:after, .searchbox-container .search-icon:after {
  content: "\e605";
}

.icon-question-mark:before {
  content: "\e606";
}

.icon-printer:before, .social-icons .printer:after {
  content: "\e60a";
}

.icon-arrow-left:before, .primary-nav-container #main-menu .subnav-contents .back-bar:before, .pagination-filter-container .pagination li a.prev:before {
  content: "\e601";
}

.icon-arrow-right:before, .breadcrumbs li:before,
.breadcrumbs span[typeof="v:Breadcrumb"]:before, .footer-newsletter-signup .sign-up:after, .cta-container li .text-block a.more:after, .arrows-after li a:after, .primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup .sign-up:after, .pagination-filter-container .pagination li a.next:before, .spotlight-container .spotlight .text-container .more:after {
  content: "\e602";
}

.icon-arrow-up:before, .accordion .accordionPanel.active .titleHeader:after, .js .toTop:after, .mobileNav .has-children.active > .nav-name:after {
  content: "\e603";
}

.icon-arrow-down:before, .accordion .accordionPanel .titleHeader:after, .mobileNav .has-children > .nav-name:after {
  content: "\e600";
}

.icon-arrow-down-circle:before, .scrollDownIcon:after {
  content: "\e903";
}

.icon-arrow-up-circle:before {
  content: "\e904";
}

.icon-arrow-left-circle:before {
  content: "\e905";
}

.icon-arrow-right-circle:before {
  content: "\e906";
}

.icon-arrow-right2:before {
  content: "\e801";
}

.icon-play-arrow:before {
  content: "\e60b";
}

.icon-play-button:before {
  content: "\e900";
}

.icon-play-button-circle:before, .play-button:after {
  content: "\e907";
}

.icon-facebook-circle:before, .social-icons .facebook:after {
  content: "\e908";
}

.icon-instagram-circle:before, .social-icons .instagram:after {
  content: "\e90a";
}

.icon-twitter-circle:before, .social-icons .twitter:after {
  content: "\e90b";
}

.icon-youtube-circle:before, .social-icons .youtube:after {
  content: "\e90d";
}

.icon-googleplus:before {
  content: "\e901";
}

.icon-facebook:before {
  content: "\e902";
}

.icon-twitter:before {
  content: "\e607";
}

.icon-plus:before, .primary-nav-container .has-children > .nav-name:before, .left-menu-container .has-children > .nav-name:before {
  content: "\e909";
}

.icon-minus:before, .primary-nav-container .has-children.active > .nav-name:before, .left-menu-container .has-children.active > .nav-name:before {
  content: "\e90c";
}

.icon-pinterest:before, .social-icons .pinterest:after {
  content: "\e90e";
}

.icon-menu4:before {
  content: "\e90f";
}

.icon-menu3:before {
  content: "\e910";
}

.icon-menu2:before, .header-container .logo-tools .menu-search-container .menu-icon:after {
  content: "\e911";
}

.icon-menu1:before {
  content: "\e912";
}
.icon-birds:before {
  content: "\e913"; 
}

.icon-HER:before {
  content: "\e914";
}

.icon-heritage-trails:before {
  content: "\e915";
}

.icon-Historic-building:before {
  content: "\e916";
}

.icon-industrial:before {
  content: "\e917" 
}

.icon-insects:before {
  content: "\e918";
}

.icon-Iron-age:before {
  content: "\e919";
}

.icon-Mammals:before {
  content: "\e91a";
}

.icon-medieval:before {
  content: "\e91b";
}

.icon-military:before {
  content: "\e91c";
}

.icon-Other-animals:before {
  content: "\e91d";
}

.icon-Plants:before {
  content: "\e91e";
}

.icon-Ponies:before {
  content: "\e91f";
}

.icon-prehistory:before {
  content: "\e920";
}

.icon-Victorian:before {
  content: "\e921";
}

.icon-home3:before, .header-container .logo-tools .menu-search-container .home-icon:after {
  content: "\e922";
}

/*-------*/
/* ICONS */
/*-------*/
.scrollDownIcon {
  font-size: 0;
}

.scrollDownIcon:hover, .scrollDownIcon:focus {
  text-decoration: none;
}

.scrollDownIcon:hover:after, .scrollDownIcon:focus:after {
  color: #ffc61e;
}

.scrollDownIcon:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
  color: #fff;
}

.social-icons {
  margin: 0;
  padding: 0;
  list-style: none;
}

.social-icons li {
  display: inline-block;
}

.social-icons li a {
  display: block;
  position: relative;
  padding: 20px 30px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  color: #fff;
}

.social-icons li a:hover {
  text-decoration: none;
  color: #ffc61e;
}

.social-icons .facebook {
  font-size: 0;
}

.social-icons .facebook:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons .twitter {
  font-size: 0;
}

.social-icons .twitter:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons .pinterest {
  font-size: 0;
}

.social-icons .pinterest:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons .instagram {
  font-size: 0;
}

.social-icons .instagram:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons .youtube {
  font-size: 0;
}

.social-icons .youtube:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons .printer {
  font-size: 0;
}

.social-icons .printer:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
}

.social-icons.social-icons-colour li a.facebook {
  color: #3b5998;
}

.social-icons.social-icons-colour li a.twitter {
  color: #3bafe9;
}

.social-icons.social-icons-colour li a.pinterest {
  color: #c9161d;
}

.social-icons.social-icons-colour li a.instagram {
  color: #45555f;
  display: none;
}

.social-icons.social-icons-colour li a.youtube {
  color: #45555f;
}

.social-icons.social-icons-colour li a.printer {
  color: #45555f;
}

.social-icons.social-icons-colour li a:hover {
  color: #000000;
}

.page-level-socialIcons-container {
  text-align: center;
}

.page-level-socialIcons-container p {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .page-level-socialIcons-container p {
    margin-top: 10px;
  }
}

.page-level-socialIcons-container .social-icons {
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
}

.page-level-socialIcons-container .social-icons li a {
  padding: 20px 20px;
}

.page-level-socialIcons-container .social-icons li a.instagram {
  display: none;
}

.page-level-socialIcons-container .social-icons li a.youtube {
  display: none;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .page-level-socialIcons-container .social-icons {
    margin-top: 10px;
  }
}

.icon {
  display: block;
}

.icon-birds {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-HER {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-heritage-trails {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Historic-building {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-industrial {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-insects {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Iron-age {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Mammals {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-medieval {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-military {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Other-animals {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Plants {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-Ponies {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.icon-prehistory {
  font-size: 35px;
  font-size: 3.5rem;
  line-height: 45.5px;
  line-height: 4.55rem;
}

.icon-Victorian {
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

/*------*/
/* GRID */
/*------*/
.row {
  margin-bottom: 30px;
}

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

[class*=" colWidth-"],
[class^="colWidth-"] {
  float: left;
  margin-left: 2%;
}

[class*=" colWidth-"]:first-child,
[class^="colWidth-"]:first-child {
  margin-left: 0 !important;
}

[class*=" colWidth-"].no-margin,
[class^="colWidth-"].no-margin {
  margin: 0;
}

.colWidth-1 {
  width: 6.5%;
}

.colWidth-1.no-margin {
  width: 8.33333%;
}

.colWidth-2 {
  width: 15%;
}

.colWidth-2.no-margin {
  width: 16.66667%;
}

.colWidth-3 {
  width: 23.5%;
}

.colWidth-3.no-margin {
  width: 25%;
}

.colWidth-4 {
  width: 32%;
}

.colWidth-4.no-margin {
  width: 33.33333%;
}

.colWidth-5 {
  width: 40.5%;
}

.colWidth-5.no-margin {
  width: 41.66667%;
}

.colWidth-6 {
  width: 49%;
}

.colWidth-6.no-margin {
  width: 50%;
}

.colWidth-7 {
  width: 57.5%;
}

.colWidth-7.no-margin {
  width: 58.33333%;
}

.colWidth-8 {
  width: 66%;
}

.colWidth-8.no-margin {
  width: 66.66667%;
}

.colWidth-9 {
  width: 74.5%;
}

.colWidth-9.no-margin {
  width: 75%;
}

.colWidth-10 {
  width: 83%;
}

.colWidth-10.no-margin {
  width: 83.33333%;
}

.colWidth-11 {
  width: 91.5%;
}

.colWidth-11.no-margin {
  width: 91.66667%;
}

.colWidth-12 {
  width: 100%;
}

.colWidth-12.no-margin {
  width: 100%;
}

.colWidth-4 {
  width: 100%;
}

@media (max-width: 37.49em) {
  .colWidth-4 {
    margin-left: 0;
  }
}

@media (min-width: 37.5em) and (max-width: 47.99em) {
  .colWidth-4 {
    width: 48%;
  }
  .colWidth-4:nth-child(2n + 1) {
    margin-left: 0 !important;
    clear: left;
  }
}

@media (min-width: 48em) {
  .colWidth-4 {
    width: 32%;
  }
  .colWidth-4:nth-child(3n + 1) {
    clear: left;
    margin-left: 0 !important;
  }
}

.grid {
  position: relative;
  z-index: 1000;
}

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

.grid__item {
  position: relative;
  width: 100%;
  float: left;
}

.grid--4 .grid__item {
  width: 100%;
}

@media (min-width: 48em) and (max-width: 73.74em) {
  .grid--4 .grid__item {
    width: 50%;
  }
  .grid--4 .grid__item:nth-child(2n + 1) {
    clear: left;
  }
}

@media (min-width: 73.75em) {
  .grid--4 .grid__item {
    width: 25%;
  }
  .grid--4 .grid__item:nth-child(4n + 1) {
    clear: left;
  }
}

.grid--2 .grid__item {
  width: 100%;
}

@media (min-width: 60em) {
  .grid--2 .grid__item {
    width: 50%;
  }
  .grid--2 .grid__item:nth-child(2n + 1) {
    clear: left;
  }
}

div.grid__item.promo-spotlight {
  min-height: 360px;
}

div.grid__item div {
  min-height: 360px;
  height: 30vh;
}




/*AW*/
.grid1 {
  position: relative;
  z-index: 1000;
}

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

.grid__item1 {
  position: relative;
  width: 100%;
  float: left;
}

.grid--4 .grid__item1 {
  width: 100%;
}

@media (min-width: 48em) and (max-width: 73.74em) {
  .grid--4 .grid__item1 {
    width: 50%;
  }
  .grid--4 .grid__item1:nth-child(2n + 1) {
    clear: left;
  }
}

@media (min-width: 73.75em) {
  .grid--4 .grid__item1 {
    width: 25%;
  }
  .grid--4 .grid__item1:nth-child(4n + 1) {
    clear: left;
  }
}

.grid--2 .grid__item1 {
  width: 100%;
}

@media (min-width: 60em) {
  .grid--2 .grid__item1 {
    width: 50%;
  }
  .grid--2 .grid__item1:nth-child(2n + 1) {
    clear: left;
  }
}

div.grid__item1.promo-spotlight {
  min-height: 360px;
}

div.grid__item1 div {
  min-height: 360px;
  height: height: auto;
}

div.grid__item2 div {
  min-height: 360px;
  height: 50vh;
}
/*---------*/
/*    HELPER */
/*---------*/
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* LEFT */
.img-float-left {
  float: left;
  margin: 0 40px 40px 0;
}

.float-left {
  float: left;
}

.text-left {
  text-align: left !important;
}

@media (min-width: 48em) {
  .text-left-at-tablet {
    text-align: left !important;
  }
}

@media (min-width: 73.75em) {
  .text-left-at-desktop {
    text-align: left !important;
  }
}

/* RIGHT */
.img-float-right {
  float: right;
  margin: 0 0 40px 40px;
}

.float-right {
  float: right;
}

.text-right {
  text-align: right !important;
}

@media (min-width: 48em) {
  .text-right-at-tablet {
    text-align: right !important;
  }
}

@media (min-width: 73.75em) {
  .text-right-at-desktop {
    text-align: right !important;
  }
}

/* FLOAT NONE */
@media (max-width: 29.99em) {
  .float-at-smallphone {
    float: none;
  }
}

@media (max-width: 37.49em) {
  .float-at-largephone {
    float: none;
  }
}

@media (max-width: 47.99em) {
  .float-at-tablet {
    float: none;
  }
}

/* CENTER */
.center,
.text-center {
  text-align: center !important;
  margin-left: auto;
  margin-right: auto;
}

.off-screen {
  position: absolute;
  top: -9999px;
  left: -9999px;
}

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

.margin-bottom-30 {
  margin-bottom: 30px;
}

.short-date {
  margin: 0.4em 0;
  color: #666;
}

.full-date {
  margin: 0.4em 0;
  color: #666;
  font-style: italic;
}

.backPos-topLeft {
  background-position: 0% 0%;
}

.backPos-topCenter {
  background-position: 50% 0%;
}

.backPos-topRight {
  background-position: 100% 0%;
}

.backPos-centerLeft {
  background-position: 0% 50%;
}

.backPos-centerCenter {
  background-position: 50% 50%;
}

.backPos-centerRight {
  background-position: 100% 50%;
}

.backPos-bottomLeft {
  background-position: 0% 100%;
}

.backPos-bottomCenter {
  background-position: 50% 100%;
}

.backPos-bottomRight {
  background-position: 100% 100%;
}

.background-cover {
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.background-contain {
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
}

.show-at-tablet {
  display: none;
}

@media (min-width: 48em) {
  .show-at-tablet {
    display: block;
  }
}

.hide-at-tablet {
  display: block;
}

@media (min-width: 48em) {
  .hide-at-tablet {
    display: none;
  }
}

.show-at-small-desktop {
  display: none;
}

@media (min-width: 60em) {
  .show-at-small-desktop {
    display: block;
  }
}

.hide-at-small-desktop {
  display: block;
}

@media (min-width: 60em) {
  .hide-at-small-desktop {
    display: none;
  }
}

.show-at-desktop {
  display: none;
}

@media (min-width: 73.75em) {
  .show-at-desktop {
    display: block;
  }
}

.hide-at-desktop {
  display: block;
}

@media (min-width: 73.75em) {
  .hide-at-desktop {
    display: none;
  }
}

@media (max-width: 47.99em) {
  .full-size-until-tablet {
    width: 100%;
    margin: 0;
  }
}

@media (max-width: 59.99em) {
  .full-size-until-small-desktop {
    width: 100%;
    margin: 0;
  }
}

@media (max-width: 73.74em) {
  .full-size-until-desktop {
    width: 100%;
    margin: 0;
  }
}

@media (max-width: 47.99em) {
  .responsive-until-tablet {
    width: 100%;
    height: auto;
  }
}

@media (max-width: 59.99em) {
  .responsive-until-smalldesktop {
    width: 100%;
    height: auto;
  }
}

@media (max-width: 73.74em) {
  .responsive-until-desktop {
    width: 100%;
    height: auto;
  }
}

/* Background / Foreground Combos */
.dark-background h1, .dark-background h2, .dark-background h3,
.dark-background h4, .dark-background p {
  color: #fff;
}

.light-background h1, .light-background h2, .light-background h3,
.light-background h4, .light-background p {
  color: #45555F;
}

@media (min-width: 37.5em) {
  .light-background-at-largephone h1, .light-background-at-largephone h2, .light-background-at-largephone h3,
  .light-background-at-largephone h4, .light-background-at-largephone p {
    color: #45555F;
  }
}

@media (min-width: 60em) {
  .light-background-at-smalldesktop h1, .light-background-at-smalldesktop h2, .light-background-at-smalldesktop h3,
  .light-background-at-smalldesktop h4, .light-background-at-smalldesktop p {
    color: #45555F;
  }
}

/* General */
.no-scroll {
  overflow: hidden;
  -ms-touch-action: none;
}

.responsive-img,
.responsive-image,
.image-full-width,
.full-width {
  display: block;
  width: 100%;
  height: auto;
}

/* JS HIDE */
.js .js-hide {
  display: none;
}

.no-js .js-show {
  display: none;
}

.no-js .js-hide {
  display: block;
}

.no-js .lazyload {
  display: none !important;
}

@media (min-width: 48em) {
  .halfPageHeight {
    height: 45vh;
  }
}

@media (min-width: 48em) {
  .quarterPageHeight {
    height: 35vh;
  }
}

/*------------------------------------------------------------------------------------------------------------*/
/*    NEW DEFAULTS                                                                                                    */
/*------------------------------------------------------------------------------------------------------------*/
article, aside, details,
figcaption, figure,
footer, header, hgroup,
menu, nav, section {
  display: block;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 2px solid #adbbc3;
  margin: 1em 0;
  padding: 0;
}

img {
  -ms-interpolation-mode: bicubic;
}

address {
  font-style: normal;
  padding-bottom: 1em;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  color: #628100;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

a:hover, a:active {
  outline: none;
  -webkit-tap-highlight-color: transparent;
  text-decoration: underline;
}

a:focus {
  outline: 1px solid #007f99;
}

a img {
  border: 0;
  vertical-align: middle;
  -moz-backface-visibility: hidden;
}

ul,
ol {
  margin: 5 auto;
  padding: 0;
  padding-left: 20px;
}

ol {
  list-style-type: decimal;
}

nav ol,
nav ul,
nav li {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-image: none;
}

pre,
code,
kbd,
samp {
  font-family: monospace, sans-serif;
}

q,
blockquote {
  quotes: none;
}

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted #ccc;
  cursor: help;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

small {
  font-size: 85%;
}

.ie7 .radioLabel, .ie7 .checkBoxLabel,
.ie8 .radioLabel, .ie8 .checkBoxLabel,
.ie9 .radioLabel, .ie9 .checkBoxLabel {
  vertical-align: top;
}

/*----------------------------------------------------------------------------------------------------------*/
/*    THIRD PARTY IFRAMES                                                                                                */
/*----------------------------------------------------------------------------------------------------------*/
#wamframe {
  display: block;
  width: 100%;
  height: 500px;
}

@media (max-width: 37.49em) {
  #wamframe {
    height: 900px;
  }
}

.google-maps {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 52.5%;
  height: 0;
  overflow: hidden;
}

.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/*----------------------------------------------------------------------------------------------------------*/
/*    ACCESSIBILITY                                                                                                */
/*----------------------------------------------------------------------------------------------------------*/
#accessibilityMenuContainer {
  border: 3px solid #000000;
  background: #45555f;
  position: absolute;
  top: -999px;
  left: -999px;
  opacity: 0;
  z-index: 9999;
}

#accessibilityMenuContainer.accessMenuOn {
  border: 3px solid #000000;
  background: #45555f;
  position: absolute;
  top: 0px;
  left: 0px;
}

#accessibilityMenu {
  margin: 0;
  padding: 20px 10px;
  overflow: hidden;
}

#accessibilityMenu li {
  margin: 0 10px;
  padding: 0;
  list-style: none;
  float: left;
}

#accessibilityMenu li a {
  display: block;
  padding: 10px;
  border: 3px solid #000000;
}

#accessibilityMenu li a:hover, #accessibilityMenu li a:focus, #accessibilityMenu li a:active {
  background-color: #000000;
  color: #fff;
  text-decoration: none;
}

/*----------------------------------------------------------------------------------------------------------*/
/*    ACCORDION                                                                                                    */
/*----------------------------------------------------------------------------------------------------------*/
/* Accordion */
.accordion {
  position: relative;
  margin: 0 0 30px;
  padding: 0;
  max-height: 1000000px;
}

.accordion .accordionPanel {
  margin-bottom: 2px;
}

.accordion .accordionPanel.active .titleHeader:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 22%;
  right: 10px;
}

.accordion .accordionPanel .titleHeader {
  position: relative;
  cursor: pointer;
  background-color: #000000;
  color: #000000;
}

.accordion .accordionPanel .titleHeader:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 25%;
  right: 10px;
}

.accordion .accordionPanel .titleHeader a {
  display: block;
  margin: 0;
  padding: 10px 35px 10px 10px;
  color: #000000;
}

.accordion .accordionPanel .titleHeader a:hover, .accordion .accordionPanel .titleHeader a:focus {
  background-color: black;
  text-decoration: none;
}

.accordion .accordionPanel .contentDetails {
  display: none;
  margin: 0 0 3px;
  background: white;
  padding: 10px 5px;
}

.accordion .accordionPanel .contentDetails:after {
  content: "";
  display: table;
  clear: both;
}

.accordion .accordionPanel .contentDetails p:last-child {
  padding-bottom: 0;
}

.accordion .accordionPanel .contentDetails .cta-container {
  margin: 10px 0;
}

@media (min-width: 37.5em) {
  .accordion .accordionPanel .contentDetails .cta-container {
    padding: 0 20px;
  }
}

.accordion .accordionPanel .contentDetails .cta-container li {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #000000;
}

.accordion .accordionPanel .contentDetails .cta-container li:last-child {
  margin: 0;
  border: 0;
}

.accordion .accordionPanel .contentDetails .cta-container li .text-block {
  padding: 0 10px;
}

.accordion .accordionPanel .contentDetails .cta-container li .text-block a {
  display: block;
}

.accordion .accordionPanel .contentDetails .cta-container li .text-block a.more {
  font-weight: 400;
}

.breadcrumbs {
  padding: 20px 0;
}

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

@media (min-width: 48em) {
  .breadcrumbs {
    padding-left: 0;
    padding-right: 0;
    width: 50%;
  }
}

@media (min-width: 60em) {
  .breadcrumbs {
    width: 70%;
  }
}

.breadcrumbs ul {
  float: left;
}

.breadcrumbs li,
.breadcrumbs span[typeof="v:Breadcrumb"] {
  vertical-align: middle;
  display: inline-block;
}

.breadcrumbs li a, .breadcrumbs li:before,
.breadcrumbs li span,
.breadcrumbs span[typeof="v:Breadcrumb"] a,
.breadcrumbs span[typeof="v:Breadcrumb"]:before,
.breadcrumbs span[typeof="v:Breadcrumb"] span {
  vertical-align: middle;
  display: inline-block;
  color: #45555f;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
}

.breadcrumbs li a,
.breadcrumbs li span,
.breadcrumbs span[typeof="v:Breadcrumb"] a,
.breadcrumbs span[typeof="v:Breadcrumb"] span {
  padding: 5px 0;
}

.breadcrumbs li:before,
.breadcrumbs span[typeof="v:Breadcrumb"]:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 10px;
  font-size: 1rem;
  line-height: 13px;
  line-height: 1.3rem;
  line-height: 1;
  margin: 0 8px;
}

.breadcrumbs li:first-child:before,
.breadcrumbs span[typeof="v:Breadcrumb"]:first-child:before {
  content: '';
  display: none;
}

/*----------------------------------------------------------------------------------------------------------*/
/*    BUTTONS                                                                                                        */
/*----------------------------------------------------------------------------------------------------------*/
.button-container {
  margin-bottom: 40px;
}

.button-container:after {
  content: "";
  display: table;
  clear: both;
}

.button-container .button {
  margin-bottom: 5px;
}

.button-container.center {
  text-align: center;
}

.button-container .float-right {
  margin-right: 0;
}

button,
input[type="submit"] {
  display: inline-block;
  border: 0;
  cursor: pointer;
}

button:hover, button:focus,
input[type="submit"]:hover {
  background-color: #fff;
  color: #618002;
}
input[type="submit"]:focus {
  outline: 1px solid #007f99;
}

.button {
  border: 1px solid #fff;
  background-color: white;
  display: inline-block;
  padding: 10px 15px;
  color: #45555f;
  text-align: center;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 19px;
  line-height: 1.9rem;
  font-weight: 400;
  text-decoration: none !important;
}

.button:hover, .button:focus {
  background-color: #000000;
  color: white;
}

.button-yellow {
  border: 1px solid #ffc61e;
  background-color: #ffc61e;
  color: #45555f;
}

.button-yellow:hover, .button-yellow:focus {
  background-color: #000000;
  color: #ffc61e;
}

.button-lilac {
  border: 1px solid #7f6689;
  background-color: #7f6689;
  color: #fff;
}

.button-lilac:hover, .button-lilac:focus {
  background-color: #00000;
  color: #7f6689;
}

.button-blue {
  border: 1px solid #007199;
  background-color: #007199;
  color: #fff;
}

.button-blue:hover, .button-blue:focus {
  background-color: #fff;
  color: #007199;
}

.button-grey {
  border: 1px solid #45555f;
  background-color: #45555f;
  color: #ffc61e;
}

.button-grey:hover, .button-grey:focus {
  background-color: #eaaf00;
  color: #45555f;
}

.button-green {
  border: 1px solid #618002;
  background-color: #618002;
  color: #fff;
}

.button-green:hover, .button-green:focus {
  background-color: #fff;
  color: #618002;
}

.button-purple {
  border: 1px solid #681e5b;
  background-color: #681e5b;
  color: #fff;
}

.button-purple:hover, .button-purple:focus {
  background-color: #fff;
  color: #681e5b;
}

.button-red {
  border: 1px solid #e40a57;
  background-color: #e40a57;
  color: #fff;
}

.button-red:hover, .button-red:focus {
  background-color: #fff;
  color: #e40a57;
}

.button-teal {
  border: 1px solid #007199;
  background-color: #007199;
  color: #fff;
}

.button-teal:hover, .button-teal:focus {
  background-color: #fff;
  color: #007199;
}
.button-darkRed {
  border: 1px solid #581724;
  background-color: #581724;
  color: #fff;
}

.button-darkRed:hover, .button-darkRed:focus {
  background-color: #fff;
  color:#581724;
}


.more-container {
  overflow: hidden;
  display: inline-block;
  padding-right: 30px;
}

.more-container .more {
  position: relative;
  background-color: white;
  display: inline-block;
  padding: 10px 15px;
  color: #45555f;
  text-align: center;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
  font-weight: 400;
  text-decoration: none !important;
  text-transform: uppercase;
}

.more-container .more:after {
  background-color: white;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: -20px;
  width: 20px;
  height: 150%;
  -webkit-transform: rotate(20deg);
  -moz-transform: rotate(20deg);
  -ms-transform: rotate(20deg);
  -o-transform: rotate(20deg);
  transform: rotate(20deg);
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

.more-container .more-green {
  background-color: #618002;
  color: #fff;
}

.more-container .more-green:after {
  background-color: #618002;
}

.more-container .more-yellow {
  background-color: #ffc61e;
  color: #45555f;
}

.more-container .more-yellow:after {
  background-color: #ffc61e;
}

.more-container .more-lilac {
  background-color: #7f6689;
  color: #fff;
}

.more-container .more-lilac:after {
  background-color: #7f6689;
}

.more-container .more-blue {
  background-color: #007199;
  color: #fff;
}

.more-container .more-blue:after {
  background-color: #007199;
}

.more-container .more-grey {
  background-color: #45555f;
  color: #fff;
}

.more-container .more-grey:after {
  background-color: #45555f;
}

.play-button {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.play-button:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  color: #fff;
  font-size: 100px;
  font-size: 10rem;
  line-height: 130px;
  line-height: 13rem;
  opacity: 0.85;
  filter: alpha(opacity=85);
  -webkit-transition: all, 0.3s;
  -moz-transition: all, 0.3s;
  -ms-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  transition: all, 0.3s;
}

.play-button:hover:after, .play-button:focus:after {
  opacity: 1;
  filter: alpha(opacity=100);
}

/*--------*/
/* HEADER */
/*--------*/
.header-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2000;
}

.header-container .logo-tools {
  position: relative;
  margin-top: 20px;
}

.header-container .logo-tools:after {
  content: "";
  display: table;
  clear: both;
}

.header-container .logo-tools .logo {
  float: left;
  -webkit-transition: all, 0.3s;
  -moz-transition: all, 0.3s;
  -ms-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  transition: all, 0.3s;
}

.header-container .logo-tools .logo:hover, .header-container .logo-tools .logo:focus {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}

.header-container .logo-tools .logo img {
  display: block;
  width: 70%;
  height: auto;
}

@media (min-width: 37.5em) {
  .header-container .logo-tools .logo img {
    width: 100%;
  }
}

.header-container .logo-tools .menu-search-container {
  background-color: rgb(69, 85, 95);
  border-radius: 2px;
  padding-left: 10px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%);
  right: 0;
}

.header-container .logo-tools .menu-search-container:after {
  content: "";
  display: table;
  clear: both;
}

.header-container .logo-tools .menu-search-container .menu-icon {
  padding: 10px 0px;
  float: left;
  display: block;
  width: 110px;
  position: relative;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 23.4px;
  line-height: 2.34rem;
  text-transform: uppercase;
}

.header-container .logo-tools .menu-search-container .menu-icon:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 50px;
  font-size: 5rem;
  line-height: 0px;
  line-height: 0rem;
  color: #ffc61e;
  position: absolute;
  top: 53%;
  right: 0px;
}

.header-container .logo-tools .menu-search-container .menu-icon:hover, .header-container .logo-tools .menu-search-container .menu-icon:focus {
  color: #ffc61e;
  text-decoration: none;
}

.header-container .logo-tools .menu-search-container .menu-icon:hover:after, .header-container .logo-tools .menu-search-container .menu-icon:focus:after {
  color: #ffc61e;
}

.header-container .logo-tools .menu-search-container .menu-icon.active:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  color: #ffc61e;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 0px;
  line-height: 0rem;
}

.header-container .logo-tools .menu-search-container .search-icon {
  padding: 10px 5px 10px 10px;
  display: inline-block;
  height: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
  text-transform: uppercase;
  font-size: 0;
}

.header-container .logo-tools .menu-search-container .search-icon:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: relative;
  top: 12px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
  color: #fff;
}

.header-container .logo-tools .menu-search-container .search-icon:hover, .header-container .logo-tools .menu-search-container .search-icon:focus {
  text-decoration: none;
}

.header-container .logo-tools .menu-search-container .search-icon:hover:after, .header-container .logo-tools .menu-search-container .search-icon:focus:after {
  color: #ffc61e;
}

.header-container .logo-tools .menu-search-container .search-icon.active:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  color: #ffc61e;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 0px;
  line-height: 0rem;
}

.header-container .logo-tools .menu-search-container .home-icon {
  padding: 10px 10px 10px 5px;
  float: right;
  display: inline-block;
  height: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
  text-transform: uppercase;
  font-size: 0;
}

.header-container .logo-tools .menu-search-container .home-icon:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: relative;
  top: 12px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 0px;
  line-height: 0rem;
  color: #fff;
}

.header-container .logo-tools .menu-search-container .home-icon:hover, .header-container .logo-tools .menu-search-container .home-icon:focus {
  text-decoration: none;
}

.header-container .logo-tools .menu-search-container .home-icon:hover:after, .header-container .logo-tools .menu-search-container .home-icon:focus:after {
  color: #ffc61e;
}

.header-container .logo-tools .menu-search-container .home-icon.active:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  color: #ffc61e;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 0px;
  line-height: 0rem;
}

.searchbox-container {
  padding: 150px 0 80px;
  background-color: rgba(69, 85, 95, 0.7);
  display: none;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  z-index: 1500;
  text-align: center;
}

.searchbox-container.active {
  display: block;
}

.searchbox-container form {
  position: relative;
  margin: 0 auto;
  width: 95%;
}

@media (min-width: 60em) {
  .searchbox-container form {
    width: 40%;
  }
}

.searchbox-container input {
  width: 100%;
  border: 0;
  border-radius: 0;
  padding: 15px;
  padding-right: 50px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 30px;
  line-height: 3rem;
  border-bottom: 5px solid #45555f;
}

@media (min-width: 60em) {
  .searchbox-container input {
    max-width: 1180px;
    padding: 15px 20px;
    padding-right: 50px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 32px;
    line-height: 3.2rem;
  }
}

.searchbox-container input::-webkit-input-placeholder {
  padding-top: 5px;
  font-style: italic;
  color: #b5bbbf;
}

.searchbox-container input:-moz-placeholder {
  padding-top: 5px;
  font-style: italic;
  color: #b5bbbf;
}

.searchbox-container input::-moz-placeholder {
  padding-top: 5px;
  font-style: italic;
  color: #b5bbbf;
}

.searchbox-container input:-ms-input-placeholder {
  padding-top: 5px;
  font-style: italic;
  color: #b5bbbf;
}

.searchbox-container input:focus {
  outline: 0;
}

.searchbox-container .search-icon {
  position: absolute;
  top: 0%;
  right: 0px;
  height: 100%;
  background: none;
  z-index: 1000;
  padding: 1px 10px;
  font-size: 0;
}

.searchbox-container .search-icon:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: relative;
  font-size: 30px;
  line-height: 40px;
  color: #45555f;
}

.searchbox-container .search-icon:focus, .searchbox-container .search-icon:hover {
  background-color: #45555f;
}

.searchbox-container .search-icon:focus:after, .searchbox-container .search-icon:hover:after {
  color: #fff;
}

/*--------*/
/* FOOTER */
/*--------*/
.js .toTop {
  position: absolute;
  top: 20px;
  right: 15px;
  width: 40px;
  height: 40px;
  background-color: #ffc61e;
  color: #45555f;
  font-size: 0;
}

.js .toTop:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin-top: -4px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 23.4px;
  line-height: 2.34rem;
}

.js .toTop:hover, .js .toTop:focus {
  background-color: #000000;
  color: #ffc61e;
}

@media (min-width: 73.75em) {
  .js .toTop {
    top: -40px;
  }
}

.no-js .toTop {
  display: none;
}

.footer-container {
  position: relative;
  background-color: #45555f;
  padding-bottom: 30px;
}

@media (min-width: 73.75em) {
  .footer-container {
    padding-top: 60px;
  }
}

.footer-container .footer-col {
  margin-bottom: 40px;
  text-align: center;
}

@media (max-width: 37.49em) {
  .footer-container .footer-col {
    width: 100%;
    margin-left: 0;
  }
}

@media (min-width: 37.5em) and (max-width: 73.74em) {
  .footer-container .footer-col {
    width: 49%;
  }
  .footer-container .footer-col:nth-child(2n+1) {
    clear: left;
    margin-left: 0;
  }
}

@media (min-width: 73.75em) {
  .footer-container .footer-col {
    text-align: left;
  }
}

.footer-container .title {
  margin: 0;
  padding: 0 0 10px;
  color: #ffc61e;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 27.3px;
  line-height: 2.73rem;
  text-align: center;
}

@media (min-width: 73.75em) {
  .footer-container .title {
    text-align: left;
  }
}

.footer-container p, .footer-container a {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
}

.footer-container a {
  display: inline-block;
}

.footer-container a:hover, .footer-container a:focus {
  text-decoration: underline;
}

.footer-container .button {
  font-weight: 700;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
}

.footer-container .no-bullets a {
  padding: 3px 0;
  color: #fff;
}

.footer-newsletter-signup {
  margin-bottom: 30px;
  position: relative;
}

.footer-newsletter-signup input[type="text"] {
  margin: 0;
  border: 0;
  padding: 10px 41px 10px 10px;
  display: block;
  width: 100%;
}

.footer-newsletter-signup .sign-up {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 100%;
  font-size: 0;
}

.footer-newsletter-signup .sign-up:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #45555f;
  line-height: 0;
}

.footer-newsletter-signup .sign-up:hover:after, .footer-newsletter-signup .sign-up:focus:after {
  color: #fff;
}

.footer-main {
  padding-top: 20px;
}

.footer-main:after {
  content: "";
  display: table;
  clear: both;
}

.footer-main .printer,
.footer-main .pinterest {
  display: none;
}

.footer-sub {
  text-align: center;
}

.footer-sub:after {
  content: "";
  display: table;
  clear: both;
}

.footer-sub .logo {
  display: inline-block;
  margin: 0 0 20px;
}

.footer-sub .logo img {
  width: 70px;
  height: auto;
}

.footer-sub li, .footer-sub p {
  color: #fff;
}

.footer-sub ul {
  position: relative;
  margin: 0 10px;
  padding: 0;
}

@media (min-width: 73.75em) {
  .footer-sub ul {
    display: inline-block;
  }
}

.footer-sub ul li {
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 16.9px;
  line-height: 1.69rem;
  padding: 3px 0;
}

.footer-sub ul li:before {
  content: '|';
}

.footer-sub ul li:first-child:before {
  content: '';
}

.footer-sub ul li a {
  display: inline-block;
  padding: 0 10px;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 16.9px;
  line-height: 1.69rem;
}

/*---------------------*/
/*    FULL SCREEN BANNER */
/*---------------------*/
.full-screen-banner {
  position: relative;
}

.full-screen-banner.tint:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
}

.full-screen-banner-content-container {
  width: 90%;
  margin: 0 auto;
  display: table;
}

.masthead {
  display: table;
}

.header-promo-container {
  position: absolute;
  bottom: 20px;
  right: 0;
  width: 100px;
  height: 100px;
  border-radius: 500px;
  background: #e40a57;
}

@media (min-width: 60em) {
  .header-promo-container {
    bottom: 40px;
    right: 20px;
    width: 150px;
    height: 150px;
  }
}

.header-promo-container .header-promo-content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
  margin: 0;
  padding: 0;
  font-family: "riffic_freebold";
}

@media (min-width: 60em) {
  .header-promo-container .header-promo-content {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 32.5px;
    line-height: 3.25rem;
  }
}

.full-screen-banner-content {
  text-align: center;
  padding-top: 140px;
  padding-bottom: 20px;
}

@media (min-width: 37.5em) {
  .full-screen-banner-content {
    padding-top: 110px;
  }
}

@media (min-width: 20em) and (min-height: 500px) {
  .full-screen-banner-content {
    padding-top: 220px;
  }
}

@media (min-width: 60em) and (min-height: 600px) {
  .full-screen-banner-content {
    display: table-cell;
    vertical-align: middle;
    height: 100vh;
    padding-top: 200px;
  }
}

@media (min-width: 60em) {
  .masthead .full-screen-banner-content {
    padding-top: 0px;
    height: 360px;
  }
}

.full-screen-banner-content h1 {
  margin: 0;
  padding: 0;
  font-weight: 300;
  text-align: center;
  text-shadow: 0px 0px 15px #000;
}

.masthead .full-screen-banner-content h1 {
  text-align: left;
}

@media (min-width: 37.5em) and (min-height: 600px) {
  .full-screen-banner-content h1 {
    font-size: 60px;
    font-size: 6rem;
    line-height: 60px;
    line-height: 6rem;
    text-align: left;
  }
}

@media (min-width: 73.75em) {
  .full-screen-banner-content h1 {
    font-size: 70px;
    font-size: 7rem;
    line-height: 70px;
    line-height: 7rem;
    text-align: left;
  }
}

@media (min-width: 73.75em) {
  .masthead .full-screen-banner-content h1 {
    font-size: 60px;
    font-size: 6rem;
    line-height: 60px;
    line-height: 6rem;
    text-align: left;
  }
}

.full-screen-banner-content p {
  text-align: center;
  text-shadow: 0px 0px 15px #000;
}

@media (min-width: 37.5em) {
  .full-screen-banner-content p {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 30px;
    line-height: 3rem;
    text-align: left;
  }
}

@media (min-width: 73.75em) {
  .full-screen-banner-content p {
    font-size: 35px;
    font-size: 3.5rem;
    line-height: 50px;
    line-height: 5rem;
    text-align: left;
  }
}

.full-screen-banner-content .scrollDownIcon {
  position: absolute;
  /*bottom:30px;
            margin-left:25px;
            height:80px;
            display:none;*/
  left: 50%;
}

@media (min-width: 60em) and (min-height: 650px) {
  .full-screen-banner-content .scrollDownIcon {
    display: block;
  }
}

@media (min-width: 37.5em) {
  .full-screen-banner-content .scrollDownIcon:after {
    font-size: 50px;
    font-size: 5rem;
    line-height: 50px;
    line-height: 5rem;
  }
}

@media (min-width: 73.75em) {
  .full-screen-banner-content .scrollDownIcon:after {
    font-size: 70px;
    font-size: 7rem;
    line-height: 70px;
    line-height: 7rem;
  }
}

div.masthead div.full-screen-banner-content h1, div.masthead div.full-screen-banner-content .subtitle {
  margin-left: 50px;
  text-shadow: 0px 0px 15px #000;
}

@media (min-width: 60em) {
  div.masthead div.full-screen-banner-content h1, div.masthead div.full-screen-banner-content .subtitle {
    margin-left: 150px;
  }
}

div.masthead div.full-screen-banner-content h1 {
  margin-top: 100px;
}

div.dartmoor-story {
  display: block;
}

div.dartmoor-story div.full-screen-banner-content {
  display: block;
  width: 100%;
  text-align: center;
  padding-top: 1px;
}

div.dartmoor-story div.full-screen-banner-content h1 {
  margin-left: 0;
  margin-top: 125px;
  text-align: center;
}

div.dartmoor-story div.full-screen-banner-content .subtitle {
  margin-left: 0;
  text-align: center;
  font-size: 23px;
  font-size: 2.3rem;
  line-height: 29.9px;
  line-height: 2.99rem;
}

.footer-banner-container {
  margin: 0 auto 50px;
}

.footer-banner-container .text-container {
  background-color: #45555f;
  color: #fff;
  padding: 20px;
}

.footer-banner-container .text-container h2, .footer-banner-container .text-container h3, .footer-banner-container .text-container p {
  margin: 0;
  color: #fff;
  text-align: center;
}

.footer-banner-container .text-container h2 + p,
.footer-banner-container .text-container h3 + p {
  margin-top: 20px;
}

@media (min-width: 60em) {
  .footer-banner-container {
    position: relative;
    width: 90%;
  }
  .footer-banner-container .text-container {
    background-color: rgba(69, 85, 95, 0.9);
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -30%;
    width: 60%;
  }
}

.dartmoorStory {
  padding: 60px 0;
  text-align: center;
}

.dartmoorStory img {
  display: block;
  margin: 0 auto 20px;
}

.dartmoorStory img:last-child {
  margin-bottom: 0;
}

@media (max-width: 37.49em) {
  .dartmoorStory img {
    width: 100%;
    height: auto;
  }
}

@media (min-width: 60em) {
  .dartmoorStory img.left {
    float: left;
    margin-bottom: 0;
  }
  .dartmoorStory img.right {
    float: right;
    margin-bottom: 0;
  }
}

.home-main-img {
  height: 85vh;
}

@media (max-width: 37.49em) {
    .home-main-img {
      height: auto;
    }
}

.home-main-img p {
  padding: 0px;
}

/*--------*/
/* LISTS  */
/*--------*/
.cta-container {
  padding-left: 0;
}

.cta-container:after {
  content: "";
  display: table;
  clear: both;
}

.cta-container li {
  margin-bottom: 30px;
  padding: 0;
  list-style: none;
}

.cta-container li:after {
  content: "";
  display: table;
  clear: both;
}

.cta-container li .image-block {
  display: none;
  width: 120px;
  float: left;
  margin-right: 20px;
  text-align: center;
}

@media (min-width: 37.5em) {
  .cta-container li .image-block {
    display: block;
  }
}

.cta-container li .image-block img {
  max-width: 100%;
  height: auto;
}

.cta-container li .text-block {
  overflow: hidden;
  padding-bottom: 3px;
}

.cta-container li .text-block p {
  padding-bottom: 0;
}

.cta-container li .text-block .organisation-email,
.cta-container li .text-block .organisation-website,
.cta-container li .text-block .organisation-phone-number {
  font-weight: 700;
  padding-bottom: 0.5em;
}

.cta-container li .text-block .organisation-email a,
.cta-container li .text-block .organisation-website a,
.cta-container li .text-block .organisation-phone-number a {
  font-weight: 500;
}

.cta-container li .text-block a.more {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  color: #000000;
  font-weight: 400;
}

.cta-container li .text-block a.more:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: -2px;
  right: 0;
  margin-left: 5px;
  margin-top: 4px;
}

ul.tags {
  margin: 5px 0 0;
  padding: 0;
  list-style: none;
}

ul.tags li {
  margin: 0 8px 8px 0;
  padding: 0;
  display: inline-block;
}

ul.tags li a {
  display: inline-block;
  color: #45555f;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 18.2px;
  line-height: 1.82rem;
  font-weight: 400;
  padding: 5px 10px;
  background-color: #45555f;
  border: 1px solid #000000;
  border-radius: 2px;
}

.no-bullets {
  margin: 0;
  padding: 0;
  list-style: none;
}

.no-bullets li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.arrows-after-green li a {
  display: inline-block;
  padding: 10px 0;
  color: #628100;
}

.arrows-after li a {
  display: inline-block;
  padding: 10px 0;
  color: #628100;
}

.arrows-after li a:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 15.6px;
  line-height: 1.56rem;
  margin-left: 5px;
}

/*------------*/
/* MOBILE NAV */
/*------------*/
.mobileNav {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 500;
  -webkit-transition: transform 0.3s;
  -moz-transition: transform 0.3s;
  -ms-transition: transform 0.3s;
  -o-transition: transform 0.3s;
  transition: transform 0.3s;
  overflow: hidden;
  background-color: #45555f;
  padding: 120px 0 30px;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.mobileNav.active {
  -webkit-transform: translate3d(0, 0, 0) !important;
  -moz-transform: translate3d(0, 0, 0) !important;
  -ms-transform: translate3d(0, 0, 0) !important;
  -o-transform: translate3d(0, 0, 0) !important;
  transform: translate3d(0, 0, 0) !important;
}

.ie9 .mobileNav,
.lt-ie9 .mobileNav {
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
  display: none;
}

.mobileNav .has-children > .nav-name {
  position: relative;
}

.mobileNav .has-children > .nav-name a {
  color: #ffc61e;
}

.mobileNav .has-children > .nav-name:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -13px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 23.4px;
  line-height: 2.34rem;
  cursor: pointer;
  color: #ffc61e;
}

.mobileNav .has-children.active > .nav-name:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}

.mobileNav .subnav-contents {
  display: none;
  margin-left: 15px;
}

.mobileNav .subnav-contents a {
  color: white;
}

.mobileNav .subnav-contents .has-children a {
  color: white;
}

/*-------------*/
/*    NAVIGATION */
/*-------------*/
.primary-nav-container .top-level-container {
  position: relative;
  padding-top: 130px;
}

.primary-nav-container .top-level-container .top-level-background {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #45555f;
}

@media (min-width: 73.75em) {
  .primary-nav-container .top-level-container .top-level-background {
    width: 90%;
  }
}

.primary-nav-container .top-level-container .top-level-background-triangle {
  display: none;
  position: absolute;
  top: -50%;
  left: 0;
  width: 10%;
  height: 150%;
  background-color: #45555f;
  -webkit-transform: rotate(10deg);
  -moz-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  -o-transform: rotate(10deg);
  transform: rotate(10deg);
  -webkit-transform-origin: 0% 100%;
  -moz-transform-origin: 0% 100%;
  -ms-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

@media (min-width: 73.75em) {
  .primary-nav-container .top-level-container .top-level-background-triangle {
    display: block;
  }
}

.primary-nav-container .bottom-level-container {
  position: relative;
}

@media (min-width: 73.75em) {
  .primary-nav-container .bottom-level-container {
    padding-bottom: 100px;
  }
}

.primary-nav-container .bottom-level-container .bottom-level-background {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #45555f;
}

@media (min-width: 73.75em) {
  .primary-nav-container .bottom-level-container .bottom-level-background {
    width: 60%;
  }
}

.primary-nav-container .bottom-level-container .bottom-level-background-triangle {
  display: none;
  position: absolute;
  top: 0;
  left: 0%;
  width: 50%;
  height: 500%;
  background-color: #45555f;
  -webkit-transform: rotate(-65deg);
  -moz-transform: rotate(-65deg);
  -ms-transform: rotate(-65deg);
  -o-transform: rotate(-65deg);
  transform: rotate(-65deg);
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

@media (min-width: 73.75em) {
  .primary-nav-container .bottom-level-container .bottom-level-background-triangle {
    display: block;
  }
}

.primary-nav-container #main-menu {
  position: relative;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu {
    float: right;
    width: 90%;
    margin-bottom: 50px;
  }
}

.primary-nav-container #main-menu a, .primary-nav-container #main-menu .back-link {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 20.8px;
  line-height: 2.08rem;
  display: block;
  position: relative;
  padding: 15px;
  cursor: pointer;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu a, .primary-nav-container #main-menu .back-link {
    padding-left: 0;
  }
}

.primary-nav-container #main-menu a:hover, .primary-nav-container #main-menu a:focus, .primary-nav-container #main-menu .back-link:hover, .primary-nav-container #main-menu .back-link:focus {
  text-decoration: underline !important;
}

.primary-nav-container #main-menu a {
  padding-right: 50px;
}

.primary-nav-container #main-menu li.menu-parent-link > a {
  font-size: 23px;
  font-size: 2.3rem;
  line-height: 29.9px;
  line-height: 2.99rem;
}

.primary-nav-container #main-menu li.menu-parent-link > a:focus, .primary-nav-container #main-menu li.menu-parent-link > a:hover {
  color: #fff;
  text-decoration: underline !important;
}

.primary-nav-container #main-menu .subnav-contents {
  width: 100%;
  display: block;
  position: absolute;
  left: -100%;
  top: 0;
  transition: left .25s ease-in-out;
  background-color: #45555f;
  padding-right: 40px;
}

.primary-nav-container #main-menu .subnav-contents.menu-expanded {
  left: 0;
}

.primary-nav-container #main-menu .subnav-contents > .menu-back {
  background-color: #3a4850;
}

.primary-nav-container #main-menu .subnav-contents .back-bar {
  width: 40px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  box-shadow: 2px 1px 3px 0 rgba(0, 0, 0, 0.4);
}

.primary-nav-container #main-menu .subnav-contents .back-bar:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 5px;
  left: 0px;
  width: 40px;
  height: 40px;
  text-align: center;
  z-index: 9999;
  font-size: 20px;
  line-height: 40px;
  font-weight: normal;
  cursor: pointer;
  color: #fff;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu .subnav-contents .menu-back {
    display: none;
  }
}

.primary-nav-container #main-menu .subnav-contents .subnav-contents > .menu-back {
  background-color: #303b41;
}

.primary-nav-container #main-menu .subnav-contents .subnav-contents .subnav-contents > .menu-back {
  background-color: #252d33;
}

.primary-nav-container #main-menu .subnav-contents .subnav-contents .subnav-contents .subnav-contents > .menu-back {
  background-color: #1a2024;
}

.primary-nav-container #main-menu .subnav-contents .subnav-contents .subnav-contents .subnav-contents .subnav-contents > .menu-back {
  background-color: #0f1315;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu .subnav-contents {
    display: none;
    position: relative;
    left: auto;
    top: auto;
    padding-right: 0;
    background-color: transparent;
  }
  .primary-nav-container #main-menu .subnav-contents.menu-expanded {
    left: auto;
  }
}

@media (max-width: 73.74em) {
  .primary-nav-container #main-menu .subnav-contents .current a {
    color: #45555f;
    background-color: #ffc61e;
  }
}

.primary-nav-container #main-menu .subnav-contents .menu-parent-link {
  display: none;
}

@media (max-width: 73.74em) {
  .primary-nav-container #main-menu .subnav-contents .menu-parent-link {
    display: block;
  }
}

.primary-nav-container #main-menu > ul li {
  position: relative;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu > ul > li {
    vertical-align: top;
    display: inline-block;
    width: 17.7%;
    margin-left: 2.5%;
   
  }
  .primary-nav-container #main-menu > ul > li:first-child {
    margin-left: 0;
  }
}

.primary-nav-container #main-menu > ul > li > .nav-name {
  font-weight: 300;
}

.primary-nav-container #main-menu > ul > li > .nav-name a {
  color: #ffc61e;
  font-size: 23px;
  font-size: 2.3rem;
  line-height: 29.9px;
  line-height: 2.99rem;
}

.primary-nav-container #main-menu > ul > li > .nav-name a:focus, .primary-nav-container #main-menu > ul > li > .nav-name a:hover {
  color: #fff;
  text-decoration: underline !important;
}

@media (max-width: 73.74em) {
  .primary-nav-container #main-menu > ul > li > .nav-name.current a {
    color: #fff;
    text-decoration: underline !important;
  }
}

.primary-nav-container #main-menu > ul > li > .subnav-contents .nav-name:before {
  top: 4px;
  right: 2.5%;
}

@media (min-width: 73.75em) {
  .primary-nav-container #main-menu > ul > li > .subnav-contents {
    display: block;
    margin-left: 0;
  }
}

.primary-nav-container .has-children > .nav-name {
  position: relative;
  overflow: hidden;
}

@media (min-width: 73.75em) {
  .primary-nav-container .has-children > .nav-name:before {
    display: none;
  }
}

.primary-nav-container .has-children > .nav-name:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  border: 1px solid white;
  border-radius: 3px;
  position: absolute;
  top: 10px;
  right: 2.5%;
  width: 40px;
  height: 40px;
  text-align: center;
  z-index: 9999;
  font-size: 30px;
  line-height: 40px;
  cursor: pointer;
  color: #fff;
}

.primary-nav-container .has-children > .nav-name.current:before {
  color: #45555f;
  border-color: #45555f;
}

.primary-nav-container .has-children.active > .nav-name:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 30px;
  line-height: 40px;
}

.primary-nav-container .keep-in-touch-container {
  padding: 20px 0;
  text-align: center;
  color: #fff;
  overflow: hidden;
}

@media (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container {
    border-top: 1px solid #b5bbbf;
    padding: 20px 30px;
    text-align: left;
    float: right;
    width: 90%;
  }
}

@media (min-width: 73.75em) and (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container {
    border-bottom: 1px solid #b5bbbf;
  }
}

.primary-nav-container .keep-in-touch-container .social-container {
  margin-bottom: 20px;
}

@media (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container .social-container {
    margin-bottom: 0;
  }
}

.primary-nav-container .keep-in-touch-container .social-container p {
  display: block;
  padding-bottom: 5px;
}

.primary-nav-container .keep-in-touch-container .social-container ul {
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container .social-container {
    float: left;
  }
  .primary-nav-container .keep-in-touch-container .social-container p {
    display: inline-block;
    vertical-align: middle;
    padding: 0;
  }
}

.primary-nav-container .keep-in-touch-container .newsletter-container {
  overflow: hidden;
}

.primary-nav-container .keep-in-touch-container .newsletter-container p {
  padding-bottom: 5px;
}

@media (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container .newsletter-container {
    float: right;
  }
  .primary-nav-container .keep-in-touch-container .newsletter-container p {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    padding: 0;
  }
}

.primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup {
  display: block;
  position: relative;
}

@media (min-width: 73.75em) {
  .primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup {
    display: inline-block;
    vertical-align: middle;
  }
}

.primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup input[type="text"] {
  border: 0;
  margin: 0;
  padding: 10px 50px 10px 10px;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
}

.primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup .sign-up {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 100%;
  font-size: 0;
}

.primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup .sign-up:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #45555f;
  line-height: 0;
}

.primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup .sign-up:hover:after, .primary-nav-container .keep-in-touch-container .newsletter-container .header-newsletter-signup .sign-up:focus:after {
  color: #fff;
}

.js .primary-nav-container {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1500;
  -webkit-transition: transform 0.3s;
  -moz-transition: transform 0.3s;
  -ms-transition: transform 0.3s;
  -o-transition: transform 0.3s;
  transition: transform 0.3s;
  overflow: hidden;
  padding: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.js .primary-nav-container.show {
  display: block;
}

.js .primary-nav-container.active {
  -webkit-transform: translate3d(0, 0, 0) !important;
  -moz-transform: translate3d(0, 0, 0) !important;
  -ms-transform: translate3d(0, 0, 0) !important;
  -o-transform: translate3d(0, 0, 0) !important;
  transform: translate3d(0, 0, 0) !important;
}

.ie9 .js .primary-nav-container,
.lt-ie9 .js .primary-nav-container {
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
  display: none;
}

.no-js .primary-nav-container {
  display: block;
}

/*-------------*/
/*    NAVIGATION */
/*-------------*/
.left-menu-container h2 {
  margin: 0;
  padding: 0;
  color: #fff;
}

.left-menu-container h2 a {
  color: #fff;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 24.7px;
  line-height: 2.47rem;
  display: block;
  text-align: center;
  padding: 8px 0;
}

.left-menu-container #left-menu {
  position: relative;
  border: 1px solid #618002;
  border: 0px;
}

.left-menu-container #left-menu a {
  font-size: 14.5px;
  font-size: 1.45rem;
  line-height: 18.85px;
  line-height: 1.885rem;
  display: block;
  position: relative;
  padding: 15px 10px 15px 50px;
  color: #618002;
  font-weight: 700;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents {
  display: none;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .nav-name {
  padding-left: 25px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .nav-name:before {
  top: 7px;
  left: 35px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .nav-name a {
  color: #000000;
  font-weight: 400;
  padding-top: 12px;
  padding-bottom: 12px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .subnav-contents .nav-name {
  padding-left: 45px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .subnav-contents .nav-name:before {
  left: 55px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .subnav-contents .subnav-contents .nav-name {
  padding-left: 60px;
}

.left-menu-container #left-menu .subnav-contents .subnav-contents .subnav-contents .subnav-contents .nav-name:before {
  left: 70px;
}

.left-menu-container #left-menu > ul > li {
  border-bottom: 1px solid #ccc;
}

.left-menu-container #left-menu > ul > li > .nav-name a {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
}

.left-menu-container #left-menu > ul > li > .nav-name a:focus, .left-menu-container #left-menu > ul > li > .nav-name a:hover {
  color: #45555f;
}

.left-menu-container #left-menu .current {
  background-color: #618002;
}

.left-menu-container #left-menu .current:before {
  color: #fff;
  font-weight: bold;
}

.left-menu-container #left-menu .current a {
  color: #fff !important;
  font-weight: 700;
}

.left-menu-container .has-children > .nav-name {
  position: relative;
  overflow: hidden;
}

.left-menu-container .has-children > .nav-name:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 12px;
  left: 10px;
  width: 25px;
  height: 25px;
  text-align: center;
  font-weight: bold;
  z-index: 1000;
  font-size: 25px;
  line-height: 25px;
  cursor: pointer;
  color: #618002;
}

.left-menu-container .has-children.active > .nav-name:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 25px;
  line-height: 25px;
}

/*-------------*/
/*    PAGE TOOLS */
/*-------------*/
.dartmoor-attraction-filter {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.dartmoor-attraction-filter li {
  padding-right: 30px;
  overflow: hidden;
  position: relative;
}

.dartmoor-attraction-filter li:first-child a {
  border-top: 1px solid #45555f;
}

.dartmoor-attraction-filter li a {
  display: block;
  padding: 10px 10px;
  border: 1px solid #45555f;
  border-top: 0;
  color: #45555f;
}

.dartmoor-attraction-filter li a:after {
  display: none;
  content: "";
  position: absolute;
  top: 0;
  right: 17px;
  width: 40px;
  height: 40px;
  z-index: 1;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.dartmoor-attraction-filter li a:hover, .dartmoor-attraction-filter li a:focus, .dartmoor-attraction-filter li a.active {
  background-color: #45555f;
  color: #fff;
}

.dartmoor-attraction-filter li a:hover:after, .dartmoor-attraction-filter li a:focus:after, .dartmoor-attraction-filter li a.active:after {
  display: block;
  background-color: #45555f;
}

/*-------------*/
/*    PAGINATION */
/*-------------*/
/* Pagination Filter Container */
.pagination-filter-container {
  text-align: center;
  margin-bottom: 30px;
}

.pagination-filter-container .pagination {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.pagination-filter-container .pagination li {
  vertical-align: top;
  position: relative;
  display: inline-block;
  margin: 0px;
  padding: 0;
}

.pagination-filter-container .pagination li a {
  display: inline-block;
  width: 30px;
  height: 30px;
  padding: 5px;
  vertical-align: top;
  color: #000000;
  border-radius: 3px;
}

.pagination-filter-container .pagination li a.prev, .pagination-filter-container .pagination li a.next {
  background-color: #45555f;
  padding: 5px 15px;
}

.pagination-filter-container .pagination li a.prev:before, .pagination-filter-container .pagination li a.next:before {
  color: #000000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.pagination-filter-container .pagination li a.prev {
  font-size: 0;
}

.pagination-filter-container .pagination li a.prev:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
}

.pagination-filter-container .pagination li a.next {
  font-size: 0;
}

.pagination-filter-container .pagination li a.next:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 1rem;
}

.pagination-filter-container .pagination li a:focus, .pagination-filter-container .pagination li a:hover, .pagination-filter-container .pagination li a.active {
  background-color: #000000;
  color: #fff !important;
  text-decoration: none;
}

.pagination-filter-container .pagination li:first-child a,
.pagination-filter-container .pagination li:nth-last-child(-n+2) a {
  border: 0;
}

/*-----------------*/
/*    SEARCH RESULTS */
/*-----------------*/
.search-results-summary {
  padding: 25px 0;
  margin-top: 30px;
}

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

.search-results li {
  margin: 15px 0 0;
  padding: 15px 0 0;
  list-style-type: none;
  border-top: 1px solid #000000;
}

.search-results li:first-child {
  border-top: none;
}

.result__title {
  margin: 0;
}

.result__title a {
  color: #45555f;
}

.result__summary {
  margin: 0;
  padding-bottom: 7px;
}

.result__link {
  display: inline-block;
  color: #000000;
  padding-bottom: 5px;
}

/*------------*/
/*    SPOTLIGHT */
/*------------*/
.spotlight-container .spotlight {
  color: #45555f;
  margin-bottom: 20px;
}

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

.spotlight-container .spotlight .text-container {
  background-color: #45555f;
  padding: 25px;
}

.spotlight-container .spotlight .text-container .title {
  margin: 0;
  padding-bottom: 20px;
  color: #45555f;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 27.3px;
  line-height: 2.73rem;
  font-weight: 400;
}

.spotlight-container .spotlight .text-container p {
  color: #45555f;
  font-weight: 400;
}

.spotlight-container .spotlight .text-container .more {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 23.4px;
  line-height: 2.34rem;
  display: block;
  text-align: right;
  position: relative;
  padding-right: 20px;
  color: #000000;
  font-weight: 400;
}

.spotlight-container .spotlight .text-container .more:after {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: -2px;
  right: 0;
  margin-left: 5px;
  margin-top: 4px;
}

.spotlight-container .spotlight a:hover, .spotlight-container .spotlight a:focus {
  text-decoration: none;
}

.spotlight-container .spotlight a:hover .text-container, .spotlight-container .spotlight a:focus .text-container {
  background-color: #000000;
}

.spotlight-container .spotlight a:hover .text-container .title, .spotlight-container .spotlight a:focus .text-container .title {
  color: #fff;
}

.spotlight-container .spotlight a:hover .text-container p, .spotlight-container .spotlight a:focus .text-container p {
  color: #fff;
}

.spotlight-container .spotlight a:hover .text-container .more, .spotlight-container .spotlight a:focus .text-container .more {
  color: #fff;
}

.story-container {
  margin: 40px 0;
}

.story-container:after {
  content: "";
  display: table;
  clear: both;
}

.story-container a:hover {
  text-decoration: none;
}

.spotlight-story {
  margin-bottom: 50px;
  position: relative;
}

.spotlight-story h2 {
  margin: 0;
  padding: 7px 0;
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -45%;
  width: 90%;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 24.7px;
  line-height: 2.47rem;
  text-align: center;
  color: #fff;
}

.spotlight-story .image-container img {
  display: block;
  width: 100%;
  height: auto;
}

.spotlight-story .bottom-container {
  border: 2px solid #45555f;
  border-top: 0;
  padding: 4px;
}

/* AW addition for no border*/

.spotlight-story .bottom-container-no-border {
  border: 0;
  border-top: 0;
  padding: 4px;
}
 
.spotlight-story .bottom-container .text-container {
  padding: 20px 20px 0;
  text-align: center;
}

.spotlight-story .bottom-container .icon-container h3 {
  margin: 0;
  padding: 0;
  font-weight: 700;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
  text-align: center;
}

.spotlight-story .bottom-container .icon-container .story-icons {
  margin: 20px auto;
  padding: 0;
  list-style: none;
  border-collapse: seperate;
  text-align: center;
}

.spotlight-story .bottom-container .icon-container .story-icons li {
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 15.6px;
  line-height: 1.56rem;
  text-align: center;
  color: #fff;
}

.spotlight-story .bottom-container .icon-container .story-icons li a {
  display: table-cell;
  vertical-align: middle;
  width: 80px;
  height: 80px;
  color: #fff;
  text-decoration: none;
  border: 2px solid white;
  -webkit-transition: all, 0.3s;
  -moz-transition: all, 0.3s;
  -ms-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  transition: all, 0.3s;
}

.spotlight-story .bottom-container .icon-container .story-icons li a:hover, .spotlight-story .bottom-container .icon-container .story-icons li a:focus {
  border: 2px solid #000000;
}

.spotlight-story .bottom-container .info-panel {
  padding: 10px 30px;
  text-align: center;
  color: #fff;
}

.spotlight-story .bottom-container .info-panel h3 {
  margin: 0 0 7px;
  padding: 0;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 19.5px;
  line-height: 1.95rem;
  text-align: center;
}

.spotlight-story .bottom-container .info-panel p {
  margin: 0;
  padding: 0;
  font-size: 14.5px;
  font-size: 1.45rem;
  line-height: 18.85px;
  line-height: 1.885rem;
}

.spotlight-full-width {
  overflow: hidden;
  position: relative;
}

.spotlight-full-width:after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 37.5em) {
  .spotlight-full-width {
    width: 75%;
  }
}

@media (min-width: 60em) {
  .spotlight-full-width {
    width: 50%;
  }
}

.spotlight-full-width.spotlight-internal {
  width: 100%;
}

@media (min-width: 37.5em) {
  .spotlight-full-width.spotlight-internal {
    width: 75%;
  }
}

@media (min-width: 48em) {
  .spotlight-full-width.spotlight-internal {
    width: 60%;
  }
}

@media (min-width: 60em) {
  .spotlight-full-width.spotlight-internal {
    width: 100%;
  }
}

@media (min-width: 73.75em) {
  .spotlight-full-width.spotlight-internal {
    width: 75%;
  }
}

@media (min-width: 87.5em) {
  .spotlight-full-width.spotlight-internal {
    width: 60%;
  }
}

.spotlight-full-width .background:after {
  content: "";
  display: table;
  clear: both;
}

.spotlight-full-width .background .internal {
  position: relative;
  padding: 1px 20px 30px;
  display: table-cell;
  vertical-align: middle;
}

.spotlight-full-width .background .internal .title {
  font-weight: 300;
}

.spotlight-full-width .background .triangle {
  position: absolute;
  height: 150%;
  width: 250px;
}

.spotlight-full-width-left {
  float: left;
}

@media (min-width: 37.5em) {
  .spotlight-full-width-left {
    padding-right: 150px;
  }
}

@media (min-width: 60em) {
  .spotlight-full-width-left {
    padding-right: 190px;
  }
}

.spotlight-full-width-left .background .internal {
  padding: 20px;
}

.spotlight-full-width-left.spotlight-internal .background .internal {
  width: 100%;
}

@media (min-width: 73.75em) {
  .spotlight-full-width-left.spotlight-internal .background .internal {
    width: auto;
  }
}

.spotlight-full-width-right {
  float: right;
}

@media (min-width: 37.5em) {
  .spotlight-full-width-right {
    padding-left: 150px;
  }
}

@media (min-width: 60em) {
  .spotlight-full-width-right {
    padding-left: 190px;
  }
}

.spotlight-full-width-right .background .internal {
  padding: 20px;
}

.spotlight-full-width-right.spotlight-internal .background .internal {
  width: 100%;
}

@media (min-width: 73.75em) {
  .spotlight-full-width-right.spotlight-internal .background .internal {
    width: auto;
  }
}

.triangle-topRight {
  bottom: 0;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

@media (min-width: 37.5em) {
  .triangle-topRight {
    -webkit-transform: rotate(15deg);
    -moz-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    -o-transform: rotate(15deg);
    transform: rotate(15deg);
    right: 150px;
  }
}

@media (min-width: 60em) {
  .triangle-topRight {
    -webkit-transform: rotate(20deg);
    -moz-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    -o-transform: rotate(20deg);
    transform: rotate(20deg);
    right: 190px;
  }
}

.triangle-bottomRight {
  top: 0;
  -webkit-transform-origin: 100% 0%;
  -moz-transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

@media (min-width: 37.5em) {
  .triangle-bottomRight {
    -webkit-transform: rotate(-15deg);
    -moz-transform: rotate(-15deg);
    -ms-transform: rotate(-15deg);
    -o-transform: rotate(-15deg);
    transform: rotate(-15deg);
    right: 150px;
  }
}

@media (min-width: 60em) {
  .triangle-bottomRight {
    -webkit-transform: rotate(-20deg);
    -moz-transform: rotate(-20deg);
    -ms-transform: rotate(-20deg);
    -o-transform: rotate(-20deg);
    transform: rotate(-20deg);
    right: 190px;
  }
}

.triangle-topLeft {
  bottom: 0;
  -webkit-transform-origin: 0% 100%;
  -moz-transform-origin: 0% 100%;
  -ms-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

@media (min-width: 37.5em) {
  .triangle-topLeft {
    -webkit-transform: rotate(-15deg);
    -moz-transform: rotate(-15deg);
    -ms-transform: rotate(-15deg);
    -o-transform: rotate(-15deg);
    transform: rotate(-15deg);
    left: 150px;
  }
}

@media (min-width: 60em) {
  .triangle-topLeft {
    -webkit-transform: rotate(-20deg);
    -moz-transform: rotate(-20deg);
    -ms-transform: rotate(-20deg);
    -o-transform: rotate(-20deg);
    transform: rotate(-20deg);
    left: 190px;
  }
}

.triangle-bottomLeft {
  top: 0;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

@media (min-width: 37.5em) {
  .triangle-bottomLeft {
    -webkit-transform: rotate(15deg);
    -moz-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    -o-transform: rotate(15deg);
    transform: rotate(15deg);
    left: 150px;
  }
}

@media (min-width: 60em) {
  .triangle-bottomLeft {
    -webkit-transform: rotate(20deg);
    -moz-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    -o-transform: rotate(20deg);
    transform: rotate(20deg);
    left: 190px;
  }
}

.promo-spotlight-container:after {
  content: "";
  display: table;
  clear: both;
}

.promo-spotlight-container .promo-spotlight {
  position: relative;
  width: 100%;
  min-height: 250px;
}

@media (min-width: 48em) and (max-width: 73.74em) {
  .promo-spotlight-container .promo-spotlight {
    width: 50%;
    min-height: 360px;
  }
}

@media (min-width: 73.75em) {
  .promo-spotlight-container .promo-spotlight {
    width: 25%;
    min-height: 360px;
  }
}

.promo-spotlight-container .promo-spotlight a.hover {
  text-decoration: none;
  display: block;
  -webkit-transition: all, 0.3s;
  -moz-transition: all, 0.3s;
  -ms-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  transition: all, 0.3s;
}

.promo-spotlight-container .promo-spotlight a.hover:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 50%;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
}

.promo-spotlight-container .promo-spotlight a.hover:hover:before, .promo-spotlight-container .promo-spotlight a.hover:focus:before {
  bottom: 0;
  background: rgba(0, 0, 0, 0.45);
}

.promo-spotlight-container .promo-spotlight a.hover:hover .title, .promo-spotlight-container .promo-spotlight a.hover:focus .title {
  color: #fff;
}

.promo-spotlight-container .promo-spotlight .text-container {
  position: relative;
  padding: 0 0 80px;
}

@media (min-width: 60em) {
  .promo-spotlight-container .promo-spotlight .text-container.video-row {
    min-height: 500px;
  }
}

.promo-spotlight-container .promo-spotlight .text-container.text-container-stacked {
  min-height: 250px;
}

.promo-spotlight-container .promo-spotlight .text-container.no-button {
  padding-bottom: 25px;
}

.promo-spotlight-container .promo-spotlight .text-container .title {
  padding: 25px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 33px;
  line-height: 3.3rem;
  font-weight: 300;
}

.lt-ie10 .promo-spotlight-container .promo-spotlight .text-container .title {
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
}

.lt-ie10 .promo-spotlight-container .promo-spotlight .text-container .title.noShade {
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}

.promo-spotlight-container .promo-spotlight .text-container .title.larger {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 30px;
  line-height: 3rem;
  padding-bottom: 0.8em;
}

.promo-spotlight-container .promo-spotlight .text-container .more-container {
  position: absolute;
  bottom: 20px;
  left: 0;
}

.social-message-container {
  position: relative;
  height: 100%;
}

.social-message-container:before, .social-message-container:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100px;
  height: 100px;
  background-image: url("../images/design/left-quote.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
}

.social-message-container:after {
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.social-message-container .tweet {
  padding: 50px;
}

.social-message-container .tweet img {
  float: left;
  margin-right: 20px;
}

.social-message-container .tweet .twitter-text {
  overflow: hidden;
}

.social-message-container .tweet .twitter-text p {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 20px;
  line-height: 2rem;
  font-weight: 300;
}

.social-message-container .tweet .twitter-text .twitter-name {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
  font-weight: 700;
}

.social-message-container .tweet .twitter-text .twitter-handle {
  font-weight: 300;
  color: #b5bbbf;
}

.spotlight-text-only .internal {
  padding: 20px 40px;
  display: table-cell;
  vertical-align: middle;
}

@media (min-width: 48em) {
  .spotlight-text-only .internal {
    width: 75%;
  }
}

@media (min-width: 87.5em) {
  .spotlight-text-only .internal {
    width: 60%;
  }
}

.funzone_spotlight div {
  display: table;
  width: 100%;
}

@media (max-width: 37.49em) {
  .funzone_spotlight div {
    background-image: none !important;
  }
}

@media (min-width: 37.5em) {
  .funzone_spotlight div {
    min-height: 450px !important;
    height: auto;
  }
}

@media (min-width: 37.5em) {
  .funzone_spotlight .funzone-spotlight-wrapper.right {
    float: right;
    width: 50%;
  }
  .funzone_spotlight .funzone-spotlight-wrapper.right.extended-width {
    width: 65%;
  }
  .funzone_spotlight .funzone-spotlight-wrapper.left {
    float: left;
    width: 50%;
  }
  .funzone_spotlight .funzone-spotlight-wrapper.left.extended-width {
    width: 65%;
  }
}

.funzone_spotlight .funzone-spotlight-content {
  padding: 20px;
  display: table-cell;
  vertical-align: middle;
}

@media (min-width: 37.5em) {
  .funzone_spotlight .funzone-spotlight-content {
    padding: 20px 40px;
  }
}

.funzone_spotlight .funzone-spotlight-content h2 {
  font-family: "riffic_freebold";
  font-size: 30px;
  font-size: 3rem;
  line-height: 39px;
  line-height: 3.9rem;
}

.funzone_spotlight .funzone-spotlight-content p {
  font-size: 20px;
  font-size: 2rem;
  line-height: 23px;
  line-height: 2.3rem;
}

a > .planning-spotlight:hover, a > .planning-spotlight:focus {
  background-color: #555;
}

a > .planning-spotlight:hover h2, a > .planning-spotlight:focus h2 {
  color: #fff;
}

.planning-spotlight {
  margin-bottom: 20px;
  text-align: center;
  border: 3px solid black;
  padding: 0 0 30px;
  width: 100%;
}

.planning-spotlight .vertCenter {
  height: 100%;
  position: relative;
}

.planning-spotlight .vertCenter h2 {
  position: relative;
  margin: 30px;
  padding: 0;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 32.5px;
  line-height: 3.25rem;
  text-align: center;
}

.planning-spotlight .vertCenter h3 {
  position: relative;
  margin: 30px;
  padding: 0;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 28.5px;
  line-height: 2.85rem;
  text-align: center;
}

.planning-spotlight .vertCenter img {
  display: block;
  margin: 0 auto 30px;
}

div.tweet .twitter-text {
  min-width: 170px;
}

/*
    .funzone-spotlight-wrapper {
        padding: 10px;
        h2, p{
        padding: 10px;
        background: rgba(255,255,255,0.5);
        }
        h2{margin-bottom: 0px;
        }
        p{margin-top: 0px;}
    }
    */
/*--------------*/
/*    VIDEO EMBED */
/*--------------*/
.video-embed {
  position: relative;
}

.video-embed .video-embed__thumbnail {
  position: relative;
  z-index: 2;
  cursor: pointer;
}

.video-embed .video-embed__thumbnail img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

.video-embed .video-embed__thumbnail a.play-icon {
  width: 72px;
  height: 53px;
  background-color: #000000;
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.video-embed .video-embed__thumbnail a.play-icon:hover, .video-embed .video-embed__thumbnail a.play-icon:focus {
  background-color: #000000;
}

.video-embed iframe {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  vertical-align: top;
}

.embed-container {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*---------*/
/*    WYSWIG */
/*---------*/
.accordion .contentDetails h2,
.wysiwyg h2 {
  margin-top: 0;
}

.accordion .contentDetails ul, .accordion .contentDetails ol,
.wysiwyg ul,
.wysiwyg ol {
  margin: 10px 0 15px 0;
}

.accordion .contentDetails li,
.wysiwyg li {
  margin-bottom: 8px;
}

.accordion .contentDetails p, .accordion .contentDetails li,
.wysiwyg p,
.wysiwyg li {
  line-height: 1.3;
}

.accordion .contentDetails hr,
.wysiwyg hr {
  margin: 30px 0;
}

/*---------*/
/*    TABLES */
/*---------*/
table, th, td {
  border: 1px solid #000;
  border-collapse: collapse;
}

table {
  margin: 40px auto;
}

th, td {
  padding: 15px 10px;
}

.teal-table th {
  background-color: #007f99;
  color: white;
  font-weight: 300;
  text-align: left;
}

.teal-table tr:nth-child(odd) {
  color: black;
  background-color: white;
}

.teal-table tr:nth-child(even) {
  color: black;
  background-color: rgba(0, 127, 153, 0.5);
}

@media only screen and (max-width: 480px) {
  table.teal-table {
    width: 80%;
    font-size: 14px;
  }
}

/* GREEN TABLE */


.green-table th {
  background-color: #4e6601;
  color: white;
  font-weight: 300;
  text-align: left;
}

.green-table tr:nth-child(odd) {
  background-color: white;
}

.green-table tr:nth-child(even) {
  background-color: white;
}

@media only screen and (max-width: 480px) {
  table.green-table {
    width: 80%;
    font-size: 14px;
  }
}


/* LILAC TABLE  */

.lilac-table th {
  background-color: #7f6689;
  color: white;
  font-weight: 300;
  text-align: left;
}

.lilac-table tr:nth-child(odd) {
  color: black;
  background-color: white;
}

.lilac-table tr:nth-child(even) {
  color: black;
  background-color: white;
}

@media only screen and (max-width: 480px) {
  table.lilac-table {
    width: 80%;
    font-size: 14px;
  }
}

/*------*/
/*    MAP */
/*------*/
#map {
  height: 450px;
  margin-bottom: 60px;
  border: 1px solid #45555f;
}

#selectBox {
  font-size: large;
  height: 30px;
  width: 170px;
}

/*----------------------------------------------------------------------------------------------------------*/
/*   STRUCTURE                                                                                                    */
/*----------------------------------------------------------------------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  margin: 0;
  padding: 0;
  background: white;
  font-size: 62.5%;
  -webkit-tap-highlight-color: #f3f5f6;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

html.lt-ie9 {
  overflow-x: visible;
}

body {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 19px;
  line-height: 1.9rem;
  font-family: "lato", sans-serif;
  font-weight: 400;
  color: #45555f;
  margin: 0;
  padding: 0;
  width: 100%;
  background: white;
  overflow-x: hidden;
  -ms-touch-action: manipulation !important;
  min-width: 320px;
}

.lt-ie9 body {
  min-width: 1180px;
  overflow-x: visible;
}

.main-wrap {
  position: relative;
}

.width-screen {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
}

.width-page {
  position: relative;
  margin: 0 auto;
  padding: 0;
  max-width: 1180px;
  width: 95%;
}

.width-page:after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 48em) {
  .width-page {
    width: 98%;
  }
}

@media (min-width: 73.75em) {
  .width-page {
    width: 100%;
  }
}

.width-page.width-page-full {
  width: 100%;
}

.left-menu-container {
  position: relative;
  float: left;
  width: 250px;
  margin-right: 30px;
  margin-bottom: 40px;
  padding: 0;
  display: none;
}

@media (min-width: 73.75em) {
  .left-menu-container {
    display: block;
  }
}

@media (max-width: 59.99em) {
  .left-menu-container.permanent {
    display: block;
    float: none;
    width: auto;
    margin-right: 0;
  }
}

.content-container {
  position: relative;
  overflow: hidden;
}

.content-container .main-content {
  position: relative;
  /* right col only */
  /* left & right col */
}

.content-container .main-content:after {
  content: "";
  display: table;
  clear: both;
}

.content-container .main-content.has-right-col {
  float: left;
  width: 900px;
}

.content-container .main-content.has-both-cols {
  float: left;
  width: 620px;
}

.content-container .right-col-container {
  position: relative;
  float: right;
  width: 250px;
}

.divider-line-container {
  position: relative;
  z-index: 5000;
}

.divider-line-container .divider-line {
  position: relative;
  z-index: 6000;
}

.divider-line-container .divider-line .triangle {
  content: "";
  position: absolute;
  top: 80%;
  right: 0;
  width: 110%;
  height: 30px;
  background: #fff;
  z-index: 6000;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  -webkit-transform: rotate(-1deg);
  -moz-transform: rotate(-1deg);
  -ms-transform: rotate(-1deg);
  -o-transform: rotate(-1deg);
  transform: rotate(-1deg);
}

@media (min-width: 30em) {
  .divider-line-container .divider-line .triangle {
    top: 50%;
    height: 20px;
  }
}

@media (min-width: 30em) {
  .divider-line-container .divider-line .triangle {
    top: 45%;
    height: 25px;
  }
}

@media (min-width: 73.75em) {
  .divider-line-container .divider-line .triangle {
    top: 25%;
    height: 35px;
  }
}

@media (min-width: 87.5em) {
  .divider-line-container .divider-line .triangle {
    top: 17%;
    height: 35px;
  }
}

.divider-line-container .divider-line h1, .divider-line-container .divider-line h2, .divider-line-container .divider-line h3 {
  position: relative;
  margin: 0;
  padding: 20px 10px 20px;
  z-index: 6000;
}

.breadcrumb-page-level-social-container {
  position: relative;
}

.breadcrumb-page-level-social-container:after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 48em) {
  .breadcrumb-page-level-social-container .page-level-socialIcons-container {
    position: absolute;
    top: 4px;
    right: 0;
  }
}

.footer-page-level-social-container {
  position: relative;
}

.footer-page-level-social-container:after {
  content: "";
  display: table;
  clear: both;
}

.footer-page-level-social-container > p {
  padding: 0;
  text-align: center;
}

@media (min-width: 48em) {
  .footer-page-level-social-container > p {
    float: left;
    padding: 20px 0;
  }
}

/*----------------------------------------------------------------------------------------------------------*/
/*    FORMS                                                                                                            */
/*----------------------------------------------------------------------------------------------------------*/
input[type="text"],
textarea {
  border-radius: 0;
  -webkit-appearance: none;
  border: 1px solid #45555f;
}

fieldset {
  padding: 0;
}

fieldset.quarter {
  width: 100%;
}

@media (min-width: 48em) {
  fieldset.quarter {
    width: 25%;
  }
}

fieldset.half {
  width: 100%;
}

@media (min-width: 48em) {
  fieldset.half {
    width: 50%;
  }
}

fieldset.threeQuarter {
  width: 100%;
}

@media (min-width: 48em) {
  fieldset.threeQuarter {
    width: 75%;
  }
}

fieldset legend {
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
}

fieldset label, fieldset legend{
    margin:10px 0;
}

fieldset .fieldset-inner-container {
  margin: 0;
  padding: 20px;
}

fieldset .fieldset-inner-container:after {
  content: "";
  display: table;
  clear: both;
}

fieldset .clone-block {
  overflow: hidden;
  margin-bottom: 30px;
}

fieldset .clone-block:last-child {
  margin-bottom: 0px;
}

.form-row-container {
  position: relative;
  margin-bottom: 30px;
  padding: 0;
  /* "other" title, multi-line address input */
  /* Default values */
  /* Presentation */
  /* Override values */
  /* Icons */
  /* Wrappers and Icons */
  /* Error / Help messages */
  /* Info Panel - "data protection" */
}

.form-row-container:after {
  content: "";
  display: table;
  clear: both;
}

.form-row-container:last-child {
  margin-bottom: 0;
}

.form-row-container .extra-row {
  margin-top: 5px;
}

.form-row-container .counter-container {
  margin-bottom: 10px;
}

.form-row-container .counter-container p {
  margin: 0;
}

@media (min-width: 37.5em) {
  .form-row-container.with-button {
    margin-right: 150px !important;
  }
}

.form-row-container.with-button button {
  margin-top: 5px;
}

.form-row-container input[type="submit"]{
    padding:10px;
}

@media (min-width: 37.5em) {
  .form-row-container.with-button button {
    margin-top: 0;
    position: absolute;
    bottom: 0;
    right: -150px;
    float: right;
  }
}

.form-row-container input,
.form-row-container select,
.form-row-container textarea {
  margin: 10px 0 10px 0;
  padding: 0;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
  font-family:"lato", sans-serif;
}

.form-row-container input:focus,
.form-row-container select:focus,
.form-row-container textarea:focus {
  outline: 1px solid #007f99;
}

.form-row-container::-webkit-input-placeholder {
  line-height: 1.2em;
  font-weight: 400;
}

.form-row-container:-moz-placeholder {
  line-height: 1.2em;
  font-weight: 400;
}

.form-row-container::-moz-placeholder {
  line-height: 1.2em;
  font-weight: 400;
}

.form-row-container:-ms-input-placeholder {
  line-height: 1.2em;
  font-weight: 400;
}

.form-row-container label {
  cursor: pointer;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
}

.form-row-container label:focus {
  outline: 1px solid red;
}

.form-row-container .label {
  display: block;
  position: relative;
  font-weight: 700;
  margin: 0;
  padding: 0;
  width: 100%;
  cursor: pointer;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 22.1px;
  line-height: 2.21rem;
}

.form-row-container input[type="tel"],
.form-row-container input[type="text"],
.form-row-container input[type="email"],
.form-row-container input[type="password"] {
  margin: 0 0 10px 0;
  padding: 10px 10px 8px;
  width: 100%;
  border: 1px solid #45555f;
}

.form-row-container input[type="radio"],
.form-row-container input[type="checkbox"] {
  margin-right: 5px;
  width: 20px;
  height: 20px;
}

.form-row-container select {
  padding: 11px 10px 9px;
  cursor: pointer;
  color: #45555f;
  border: 1px solid #45555f;
}

.form-row-container .select-style {
  margin-bottom: 5px;
  width: 100%;
}

.form-row-container .select-style select {
  width: 100%;
}

@media (min-width: 37.5em) {
  .form-row-container .select-style select {
    width: auto;
  }
}

@media (min-width: 37.5em) {
  .form-row-container .select-style.inline-at-large-phone {
    float: left;
    width: 32%;
    margin-right: 2%;
  }
  .form-row-container .select-style.inline-at-large-phone:last-child {
    margin-right: 0;
  }
  .form-row-container .select-style.inline-at-large-phone select {
    width: 100%;
  }
}

.form-row-container textarea {
  margin: 0 0 10px 0;
  padding: 5px;
  width: 100%;
  height: auto;
}

.form-row-container .required {
  position: absolute;
  top: 5px;
  left: -10px;
  width: 10px;
  height: 10px;
  background-image: url("mysource_files/required.png");
  background-position: 0 0;
  background-repeat: no-repeat;
}

.form-row-container .tickIcon {
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -20px;
  width: 20px;
  height: 40px;
  background-image: url("formImages/tick.png");
  background-position: 98% 50%;
  background-repeat: no-repeat;
}

.form-row-container .crossIcon {
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -20px;
  width: 20px;
  height: 40px;
  background-image: url("mysource_files/cross.png");
  background-position: 98% 50%;
  background-repeat: no-repeat;
}

.form-row-container .inputWrapper {
  position: relative;
}

.form-row-container .clearIcon {
  display: none;
  position: absolute;
  top: 3px;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 3;
  background-image: url("formImages/clear.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.form-row-container .clearIconPadding {
  padding-right: 28px !important;
}

.form-row-container .passwordIcon {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -20px;
  width: 35px;
  height: 40px;
  cursor: pointer;
  z-index: 3;
  background-image: url("formImages/wink.png");
  background-position: 5px 50%;
  background-repeat: no-repeat;
}

.form-row-container .passwordIcon-show {
  background-position: -40px 50%;
}

.form-row-container .movePasswordIcon {
  right: 45px !important;
}

.form-row-container .doubleIconPadding {
  padding-right: 80px !important;
}

.form-row-container .messageContainer {
  margin-top: 5px;
  padding: 6px 5px 5px 30px;
}

.form-row-container .messageContainer p {
  margin: 0;
  padding: 0;
}

.form-row-container .error-message {
  border: 1px solid #df8f90;
  background-color: #ffd2d3;
  background-image: url("formImages/cross.png");
  background-position: 5px 50%;
  background-repeat: no-repeat;

  margin:-10px 0 20px 0;
}

.form-row-container .help-message {
  border: 1px solid #9fc7f5;
  background-color: #dbecff;
  background-image: url("formImages/help.png");
  background-position: 5px 50%;
  background-repeat: no-repeat;
}

.form-row-container .infoPanel {
  position: relative;
  margin: 0;
}

.form-row-container .infoPanel input {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.form-row-container .infoPanel label {
  display: block;
  margin-left: 25px;
  cursor: pointer;
}

/* RADIO / CHECKBOXES */
/* e.g. Gender */

.compact-list ul{
margin:0 0 20px 0;
}

.compact-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.compact-list li {
  display: inline-block;
  margin: 0;
  padding: 0 0 0;
}

.compact-list li input {
  display: inline-block;
  vertical-align: middle;
}

.compact-list li label {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  padding: 0;
}

/* Single Row List - e.g. Call me */
.single-row-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.single-row-list li {
  margin: 0;
  padding: 5px 0 0;
}

@media (min-width: 37.5em) {
  .single-row-list li {
    display: inline-block;
    width: 49%;
  }
}

@media (min-width: 48em) {
  .single-row-list li {
    display: inline-block;
    width: 24%;
  }
}

.single-row-list li input {
  display: inline-block;
  vertical-align: middle;
}

.single-row-list li label {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  padding: 0;
}

/* Multi Col List - "Option list" */
.multi-col-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 48em) {
  .multi-col-list li {
    display: inline-block;
    width: 48%;
  }
}

@media (min-width: 60em) {
  .multi-col-list li {
    display: inline-block;
    width: 30%;
  }
}

.multi-col-list li {
  margin: 0;
  padding: 5px 0 0;
}

.multi-col-list li input {
  display: inline-block;
  vertical-align: middle;
}

.multi-col-list li label {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  padding: 0;
}

.block-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.block-list li {
  display: block;
  margin: 0 0 10px;
  padding: 0;
}

.block-list li:last-child {
  margin: 0;
}

.block-list li input {
  float: left;
  margin: 2px 15px 0 0;
}

.block-list li label {
  display: block;
  overflow: hidden;
  vertical-align: top;
  margin-right: 20px;
  padding: 0;
}

.one-line-form:after {
  content: "";
  display: table;
  clear: both;
}

.one-line-form input,
.one-line-form button {
  display: inline-block;
  margin: 0;
  vertical-align: middle;
}

.one-line-form input {
  width: 72%;
  border: 0;
  margin-right: 3%;
  padding: 12px 20px;
  background-color: white;
}

.one-line-form button {
  width: 25%;
  padding: 10px 0;
}

/*----------------------------------------------------------------------------------------------------------*/
/*    LISTING                                                                                                        */
/*----------------------------------------------------------------------------------------------------------*/
/*---------*/
/* FUNZONE */
/*---------*/



.header-promo-content a{
  color:#fff;
    text-decoration:none;
  }
  
.ranger-ralph-cta {
  position: relative;
  padding: 20px 0;
  text-align: center;
}

.ranger-ralph-cta:after {
  content: "";
  display: table;
  clear: both;
}

.ranger-ralph-cta p {
  font-family: "riffic_freebold";
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 36.4px;
  line-height: 3.64rem;
  margin: 10px 0 20px;
  padding: 0;
}

@media (min-width: 60em) {
  .ranger-ralph-cta p {
    float: left;
    width: 75%;
    margin: 10px 0;
  }
}

.ranger-ralph-cta .button {
  font-family: "riffic_freebold";
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 32.5px;
  line-height: 3.25rem;
  color: #e40a57;
  padding: 10px 30px;
  display: block;
  margin: 0 auto;
}

@media (min-width: 37.5em) {
  .ranger-ralph-cta .button {
    display: inline-block;
  }
}

@media (min-width: 60em) {
  .ranger-ralph-cta .button {
    float: right;
  }
}

/* A Williams accordian */

.accordion, .accordion * {
    -webkit-box-sizing:border-box; 
    -moz-box-sizing:border-box; 
    box-sizing:border-box;
}
 
.accordion {
    overflow:hidden;
    box-shadow:0px 1px 3px rgba(0,0,0,0.0);
    border-radius:3px;
    background:#f7f7f7;
}
 
/*----- Section Titles -----*/
.accordion-section-title {
    width:100%;
    padding:15px;
    display:inline-block;
    border-bottom:1px solid #000!important;
    background:#737373;
    transition:all linear 0.15s;
    /* Type */
    font-size:1.500em;
    text-shadow:0px 0px 0px 0px;
    color:white!important;
    text-decoration:none!important;
    
}
 
.accordion-section-title.active, .accordion-section-title:hover {
    background:#404040!important;
    /* Type */
    text-decoration:none!important;
    
}

.accordion-section:last-child .accordion-section-title {
    border-bottom:none;
}

.accordion-section-title:after {
  content: '\02795'; /* Unicode character for "plus" sign (+) */
  font-size: 0.75em;
  
  float:right;
  margin-left: 5px;
}

.accordion-section-title.active:after {
  content: "\2796"; /* Unicode character for "minus" sign (-) */
}
 
/*----- Section Content -----*/
.accordion-section-content {
    padding:15px;
    display:none;
}

/* Gallery additions AW */
.gallery-5 img {
    padding: 3px;
    border: 1px solid #ccc;
    margin: 3px;
}

/* demo CSS file type icons */
.pageContent a[href $='.ppt'],
.pageContent a[href $='.pptx'] {background: transparent url(/__data/asset_types/powerpoint_doc/icon.png) no-repeat center right;border: 0px solid red; margin-right: 0.5em; padding: 0.1em 1.5em 0.1em 0;}
.pageContent a[href $='.doc'],
.pageContent a[href $='.docx'] {background: transparent url(/__data/asset_types/word_doc/icon.png) no-repeat center right;border: 0px solid red; margin-right: 0.5em; padding: 0.1em 1.5em 0.1em 0;}
.pageContent a[href $='.csv'],
.pageContent a[href $='.xls'],
.pageContent a[href $='.xlsx'] {background: transparent url(/__data/asset_types/excel_doc/icon.png) no-repeat center right;border: 0px solid red; margin-right: 0.5em; padding: 0.1em 1.5em 0.1em 0;}

.pageContent a[href $='.pdf'] {background: transparent url(/__data/asset_types/pdf_file/icon.png) no-repeat center right;border: 0px solid red; margin-right: 0.5em; padding: 0.1em 1.5em 0.1em 0;}

/* image comparison slider AW 2/11/18 */
* {box-sizing: border-box;}

.img-comp-container {
  position: relative;
  height: 200px; /*should be the same height as the images*/
}

.img-comp-img {
  position: absolute;
  width: auto;
  height: auto;
  overflow:hidden;
}

.img-comp-img img {
  display:block;
  vertical-align:middle;
}

.img-comp-slider {
  position: absolute;
  z-index:9;
  cursor: ew-resize;
  /*set the appearance of the slider:*/
  width: 40px;
  height: 40px;
  background-color: #2196F3;
  opacity: 0.7;
  border-radius: 50%;
}
}



/* Timeline SJ 26/04/2021 */

* {
  box-sizing: border-box;
}

/* The actual timeline (the vertical ruler) */
.timeline {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}

/* The actual timeline (the vertical ruler) */
.timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: #6a777f;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;
}

/* Container around content */
.timeline-container {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
}

/* The circles on the timeline */
.timeline-container::after {
  content: '';
  position: absolute;
  width: 25px;
  height: 25px;
  right: -17px;
  background-color: white;
  border: 4px;
  border-color: #618002;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}

/* Place the container to the left */
.left {
  left: 0;
}

/* Place the container to the right */
.right {
  left: 50%;
}

/* Add arrows to the left container (pointing right) */
.left::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  right: 30px;
  border: medium solid white;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent white;
}

/* Add arrows to the right container (pointing left) */
.right::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
}

/* Fix the circle for containers on the right side */
.right::after {
  left: -16px;
}

/* The actual content */
.timeline-content {
  padding: 20px 30px;
  background-color: white;
  position: relative;
  border-radius: 6px;
}

/* Media queries - Responsive timeline on screens less than 600px wide */
@media screen and (max-width: 600px) {
/* Place the timelime to the left */
  .timeline::after {
    left: 31px;
  }

/* Full-width containers */
  .timeline-container {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

/* Make sure that all arrows are pointing leftwards */
  .timeline-container::before {
    left: 60px;
    border: medium solid white;
    border-width: 10px 10px 10px 0;
    border-color: transparent white transparent transparent;
  }

/* Make sure all circles are at the same spot */
  .left::after, .right::after {
    left: 15px;
  }

/* Make all right containers behave like the left ones */
  .right {
    left: 0%;
  }
}

/* Skip link styling */

#skip a
{
background: #319795;
color: #fff;
font-weight: 700;
left: 50%;
padding: 4px;
position:absolute;
left:-10000px;
top:auto;
width:1px;
height:1px;
overflow:hidden;
}
 
#skip a:focus
{
position:static;
width:auto;
height:auto;
}

/* slider AW 20-10-2021 */
* {box-sizing: border-box;}

.img-comp-container {
  position: relative;
  height: 200px; /*should be the same height as the images*/
}

.img-comp-img {
  position: absolute;
  width: auto;
  height: auto;
  overflow:hidden;
}

.img-comp-img img {
  display:block;
  vertical-align:middle;
}

.img-comp-slider {
  position: absolute;
  z-index:9;
  cursor: ew-resize;
  /*set the appearance of the slider:*/
  width: 40px;
  height: 40px;
  background-color: #2196F3;
  opacity: 0.7;
  border-radius: 50%;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmNzcyIsInNvdXJjZXMiOlsiZ2xvYmFsLnNjc3MiLCJjb3JlL19jb3JlLnNjc3MiLCJjb3JlL192YXJpYWJsZXMuc2NzcyIsImNvcmUvX3Jlc2V0LnNjc3MiLCJjb3JlL19tcS5zY3NzIiwiY29yZS9fbWl4aW5zLnNjc3MiLCJjb3JlL190eXBlLnNjc3MiLCJjb3JlL19mb250cy5zY3NzIiwiY29yZS9faWNvbW9vbi5zY3NzIiwiY29yZS9faWNvbnMuc2NzcyIsImNvcmUvX2dyaWQuc2NzcyIsImNvcmUvX2hlbHBlci5zY3NzIiwiY29yZS9fZGVmYXVsdHMuc2NzcyIsIl90aGlyZC1wYXJ0eS1pZnJhbWVzLnNjc3MiLCJjb21wb25lbnRzL19jb21wb25lbnRzLnNjc3MiLCJjb21wb25lbnRzL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsImNvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fZnVsbFNjcmVlbkJhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fbGlzdHMuc2NzcyIsImNvbXBvbmVudHMvX21vYmlsZW5hdi5zY3NzIiwiY29tcG9uZW50cy9fdG9wTGV2ZWxOYXYuc2NzcyIsImNvbXBvbmVudHMvX2xlZnROYXYuc2NzcyIsImNvbXBvbmVudHMvX3BhZ2VUb29scy5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNocmVzdWx0cy5zY3NzIiwiY29tcG9uZW50cy9fc3BvdGxpZ2h0cy5zY3NzIiwiY29tcG9uZW50cy9fdmlkZW9FbWJlZC5zY3NzIiwiY29tcG9uZW50cy9fd3lzaXd5Zy5zY3NzIiwiY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJjb21wb25lbnRzL19tYXAuc2NzcyIsIl9zdHJ1Y3R1cmUuc2NzcyIsIl9mb3Jtcy5zY3NzIiwiX2xpc3Rpbmcuc2NzcyIsIl9mdW56b25lLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcImNvcmUvY29yZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY29tcG9uZW50c1wiO1xuXG5AaW1wb3J0IFwic3RydWN0dXJlXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJsaXN0aW5nXCI7XG5AaW1wb3J0IFwiZnVuem9uZVwiO1xuXG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwicmVzZXRcIjtcblxuQGltcG9ydCBcIm1xXCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiZm9udHNcIjtcbkBpbXBvcnQgXCJpY29tb29uXCI7XG5AaW1wb3J0IFwiaWNvbnNcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwiaGVscGVyXCI7XG5AaW1wb3J0IFwiZGVmYXVsdHNcIjtcbkBpbXBvcnQgXCJ0aGlyZC1wYXJ0eS1pZnJhbWVzXCI7XG5cbi8vIEBpbXBvcnQgXCJwbHVnaW5zL2FqYXgtaW5maW5pdGUtbG9hZFwiOyIsIi8qLS0tLS0tLS0tLS0tKi9cbi8qXHRWQVJJQUJMRVMgKi9cbi8qLS0tLS0tLS0tLS0tKi9cblxuXHQvL2RldmVsb3BtZW50IHZhclxuXHRcdCRycmRldjogZmFsc2U7XG5cblx0Ly91bmljb2RlIGNoYXJzXG5cdFx0JHBvdW5kOiBcIlxcMDBBM1wiO1xuXG5cblx0Ly8gY29sb3JzXG5cdFx0JHdoaXRlOiAjZmZmO1x0XHRcblx0XHQkbGlnaHRncmV5OiNiNWJiYmY7XG5cdFx0JG1lZGl1bWdyZXk6IzZhNzc3Zjtcblx0XHQkZ3JleTojNDU1NTVmO1xuXHRcdCRkYXJrZ3JleTojMzEzZTQ3O1xuXHRcdCRibGFjazojMDAwMDAwO1xuXHRcdCR5ZWxsb3c6I2ZmYzYxZTtcblx0XHQkYmx1ZTojMDA3MTk5O1xuXHRcdCRsaWdodC1ibHVlOiMwMmI0ZDg7XG5cdFx0JHRlYWw6IzAwN2Y5OTtcblx0XHQkbGlsYWM6IzdmNjY4OTtcblx0XHQkZ3JlZW46IzYxODAwMjtcblx0XHQkcHVycGxlOiM2ODFlNWI7XG5cdFx0JHJlZDojZTQwYTU3O1xuXHRcdCRkYXJrUmVkOiM1ODE3MjQ7XG5cblx0XHRcblx0XHQkdGV4dC1ncmV5OiAkZ3JleTtcblx0XHQudGV4dC1ncmV5IHtjb2xvcjokZ3JleX07XG5cblx0XHQkdGV4dC10ZWFsOiAkdGVhbDtcblx0XHQudGV4dC10ZWFsIHtjb2xvcjokdGVhbH07XG5cdFx0XG5cdFx0JHBsYWNlaG9sZGVyLWdyZXk6IGxpZ2h0ZW4oJGJsYWNrLCA0MCUpO1xuXG5cdC8vQmFja2dyb3VuZHNcblx0XHQuYmtnbmQtd2hpdGUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0LnRyaWFuZ2xlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQuYmtnbmQtbGlnaHQtZ3JleSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRncmV5O1xuXHRcdFx0LnRyaWFuZ2xlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0Z3JleTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYmtnbmQtbWVkaXVtLWdyZXkge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bWdyZXk7XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtZ3JleTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYmtnbmQtZ3JleSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblx0XHRcdC50cmlhbmdsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQuYmtnbmQteWVsbG93IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5ia2duZC1saWdodC1ibHVlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuXHRcdFx0LnRyaWFuZ2xlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJrZ25kLXRlYWwge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYmtnbmQtYmx1ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcblx0XHRcdC50cmlhbmdsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5ia2duZC1ncmVlbiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJrZ25kLWxpbGFjIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWxhYztcblx0XHRcdC50cmlhbmdsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWxhYztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYmtnbmQtcHVycGxlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5ia2duZC1yZWQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblx0XHRcdC50cmlhbmdsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJrZ25kLWRhcmtSZWQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGRhcmtSZWQ7XG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya1JlZDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRcblxuXHQvL1VSTHNcblx0Ly9Vc2U6XG5cdC8vIGJhY2tncm91bmQtaW1hZ2U6dXJsKCN7JHBhdGgtZGVzaWdufWJyZWFkY3J1bWItZGl2aWRlci5wbmcpO1xuXHRcdCRwYXRoLWRlc2lnbjogJy4uL2ltYWdlcy9kZXNpZ24vJztcblx0XHQkcGF0aC1jb250ZW50OiAnLi4vaW1hZ2VzL2NvbnRlbnQvJztcblx0XHQkcGF0aC1mb3JtLWltYWdlczogJy4uL2Nzcy9mb3JtSW1hZ2VzLyc7XG5cdFx0JHBhdGgtdG8tZm9udHM6ICcuLi9mb250cy8nO1xuXHRcdCRwYXRoLXRvLWljb21vb246ICRwYXRoLXRvLWZvbnRzICsgJ2ljb21vb24vZm9udHMvJztcblxuXG5cblx0Ly9XaWR0aHNcblx0XHQkcGFnZS13aWR0aDogMTE4MHB4O1xuXHRcdFxuXHRcdCRsZWZ0LWNvbC13aWR0aDogMjUwcHg7XG5cdFx0JHJpZ2h0LWNvbC13aWR0aDogMjUwcHg7XG5cdFx0XG5cdFx0JGNvbC1zcGFjaW5nOjMwcHg7XG5cdFx0JGdsb2JhbC1taW4td2lkdGg6IDMyMHB4O1xuXHRcdFxuXHRcdCRtb2JpbGUtcGFkZDogMjVweDtcblx0XHQkbm9ybWFsLXBhZGQ6IDMwcHg7XG5cdFx0XG5cdFx0JGJvcmRlci1iYXNlLXdpZHRoOiAzcHg7XG5cdFx0JHJhZDogMTBweDsgLy8gZGVmYXVsdCBib3JkZXIgcmFkXG5cblx0Ly9Gb250c1xuXHRcdCRsaWdodDpcdFx0XHRcdDMwMDtcblx0XHQkcmVndWxhcjpcdFx0XHQ0MDA7XG5cdFx0JGJvbGQ6XHRcdFx0XHQ3MDA7XG5cblx0XHQkYmFzZS1mb250Olx0XHRcdFx0XHRcdCdsYXRvJywgc2Fucy1zZXJpZjtcblx0XHQkZnVuem9uZS1mb250Olx0XHRcdFx0XHQncmlmZmljX2ZyZWVib2xkJztcblx0XHQkdGV4Z3lyZWFkdmVudG9ycmVndWxhci1mb250Olx0J3RleGd5cmVhZHZlbnRvcnJlZ3VsYXInO1xuXHRcdCRiYXNlLWZvbnQtc2l6ZTpcdFx0XHRcdDEuNztcblxuXHQvL2FuaW1cblx0XHQkZmFzdC1hbmltOiAwLjNzO1xuXHRcdCRtaWQtYW5pbTogMy42cztcblx0XHQkc2xvdy1hbmltOiAwLjlzO1xuXHRcdFxuXHRcdFxuXHQvLyBWYXJpYWJsZXMgZm9yIG1xXG5cdC8vbGFyZ2UgZGVza3RvcCBhcHBsaWVzIHRvIGZ1bGwgYmxlZWQgY29udGFpbmVyc1xuXHQkbXEtYnJlYWtwb2ludHM6IChcblx0XHRtb2JpbGU6XHRcdFx0MzIwcHgsXG5cdFx0c21hbGxwaG9uZTogIFx0NDgwcHgsXG5cdFx0bGFyZ2VwaG9uZTogXHQ2MDBweCxcblx0XHR0YWJsZXQ6ICBcdFx0NzY4cHgsXG5cdFx0c21hbGxkZXNrdG9wOiBcdDk2MHB4LFxuXHRcdGRlc2t0b3A6IFx0XHQkcGFnZS13aWR0aCxcblx0XHRsYXJnZWRlc2t0b3A6XHQxNDAwcHgsXG5cdFx0bWF4ZGVza3RvcDpcdFx0MTkwMHB4XG5cdCk7XG5cblx0XG5cdEBpZiAkcnJkZXYge1xuXHRcdCRtcS1zaG93LWJyZWFrcG9pbnRzOiAoJ21vYmlsZScsICdzbWFsbHBob25lJywgJ2xhcmdlcGhvbmUnLCAndGFibGV0JywgJ3NtYWxsZGVza3RvcCcsICdkZXNrdG9wJyk7XG5cdH1cblxuXG5cdC8vWi1pbmRleFxuXHQuaGlnaFoge1xuXHRcdHotaW5kZXg6IDEwMDA7XG5cdH1cblxuXHQuaGlnaGVzdFoge1xuXHRcdHotaW5kZXg6IDk5OTk5O1xuXHR9IiwiLyotLS0tLS0tLSovXG4vKlx0UkVTRVQgKi9cbi8qLS0tLS0tLS0qL1xuXG5cdC8qIFJFU0VUIEVWRVJZVEhJTkcgKGV4Y2VwdCBsaXN0cykgKi9cblx0aHRtbCwgYm9keSwgZGl2LCBzcGFuLCBvYmplY3QsIGlmcmFtZSwgXG5cdGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIFxuXHRwLCBibG9ja3F1b3RlLCBwcmUsIGFiYnIsIGFkZHJlc3MsIFxuXHRjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBcblx0a2JkLCBxLCBzYW1wLCBzbWFsbCwgc3Ryb25nLCBcblx0c3ViLCBzdXAsIHZhciwgYiwgaSwgZGwsIGR0LCBkZCwgIFxuXHRmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgXG5cdHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIFxuXHR0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIFxuXHRjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgXG5cdGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgXG5cdHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIFxuXHRhdWRpbywgdmlkZW8ge1xuXHRcdG1hcmdpbjowOyBcblx0XHRwYWRkaW5nOjA7IFxuXHRcdGJvcmRlcjowOyBcblx0XHRvdXRsaW5lOjA7IFxuXHRcdGZvbnQtc2l6ZToxMDAlOyBcblx0XHR2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTsgXG5cdFx0YmFja2dyb3VuZDp0cmFuc3BhcmVudDtcblx0fSIsIkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxuXG4vLy8gQmFzZSBmb250IHNpemUgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcbi8vLyBAdHlwZSBOdW1iZXIgKHVuaXQpXG4kbXEtYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vLyBSZXNwb25zaXZlIG1vZGVcbi8vL1xuLy8vIFNldCB0byBgZmFsc2VgIHRvIGVuYWJsZSBzdXBwb3J0IGZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IEBtZWRpYSBxdWVyaWVzLFxuLy8vIChJRSA8PSA4LCBGaXJlZm94IDw9IDMsIE9wZXJhIDw9IDkpXG4vLy9cbi8vLyBZb3UgY291bGQgY3JlYXRlIGEgc3R5bGVzaGVldCBzZXJ2ZWQgZXhjbHVzaXZlbHkgdG8gb2xkZXIgYnJvd3NlcnMsXG4vLy8gd2hlcmUgQG1lZGlhIHF1ZXJpZXMgYXJlIHJhc3Rlcml6ZWRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gb2xkLWllLnNjc3Ncbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICBAaW5jbHVkZSAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGluY2x1ZGUgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvIHRhYmxldFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjYWRkaW5nLWN1c3RvbS1icmVha3BvaW50cyBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtc3RhdGljLWJyZWFrcG9pbnQ6IGRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vLyBTaG93IGJyZWFrcG9pbnRzIGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy9cbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxuLy8vIHJpZ2h0IGNvcm5lciBvZiB5b3VyIHNpdGUgZHVyaW5nIGRldmVsb3BtZW50LCBhZGQgdGhlIGJyZWFrcG9pbnRzXG4vLy8gdG8gdGhpcyBsaXN0LCBvcmRlcmVkIGJ5IHdpZHRoLCBlLmcuIChtb2JpbGUsIHRhYmxldCwgZGVza3RvcCkuXG4vLy9cbi8vLyBAdHlwZSBtYXBcbiRtcS1zaG93LWJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcblxuLy8vIEN1c3RvbWl6ZSB0aGUgbWVkaWEgdHlwZSAoZS5nLiBgQG1lZGlhIHNjcmVlbmAgb3IgYEBtZWRpYSBwcmludGApXG4vLy8gQnkgZGVmYXVsdCBzYXNzLW1xIHVzZXMgYW4gXCJhbGxcIiBtZWRpYSB0eXBlIChgQG1lZGlhIGFsbCBhbmQg4oCmYClcbi8vL1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjY2hhbmdpbmctbWVkaWEtdHlwZSBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtbWVkaWEtdHlwZTogYWxsICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gdmFsdWUgdG8gY29udmVydFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZS1mb250LXNpemUgKCRtcS1iYXNlLWZvbnQtc2l6ZSkgLSBgPGJvZHk+YCBmb250IHNpemVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IG1xLXB4MmVtKDE2cHgpO1xuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxuLy8vXG4vLy8gQHJlcXVpcmVzICRtcS1iYXNlLWZvbnQtc2l6ZVxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XG5AZnVuY3Rpb24gbXEtcHgyZW0oJHB4LCAkYmFzZS1mb250LXNpemU6ICRtcS1iYXNlLWZvbnQtc2l6ZSkge1xuICAgIEBpZiB1bml0bGVzcygkcHgpIHtcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XG4gICAgICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICogMXB4LCAkYmFzZS1mb250LXNpemUpO1xuICAgIH0gQGVsc2UgaWYgdW5pdCgkcHgpID09IGVtIHtcbiAgICAgICAgQHJldHVybiAkcHg7XG4gICAgfVxuICAgIEByZXR1cm4gKCRweCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07XG59XG5cbi8vLyBHZXQgYSBicmVha3BvaW50J3Mgd2lkdGhcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJHRhYmxldC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgodGFibGV0KTtcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKGRlc2t0b3ApKSB7fVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBWYWx1ZSBpbiBwaXhlbHNcbkBmdW5jdGlvbiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiQnJlYWtwb2ludCAjeyRuYW1lfSB3YXNuJ3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzLlwiO1xuICAgIH1cbn1cblxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgKGZhbHNlKSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSAoJG1xLW1lZGlhLXR5cGUpIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludOKAplxuLy8vXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50ICgkbXEtc3RhdGljLWJyZWFrcG9pbnQpXG4vLy9cbi8vLyBAY29udGVudCBzdHlsaW5nIHJ1bGVzLCB3cmFwcGVkIGludG8gYSBAbWVkaWEgcXVlcnkgd2hlbiAkcmVzcG9uc2l2ZSBpcyB0cnVlXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtbWVkaWEtdHlwZVxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLXB4MmVtXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGhcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9uLWRlZmF1bHQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAuZWxlbWVudCB7XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSkge1xuLy8vICAgICAgY29sb3I6IHJlZDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcShtb2JpbGUsIHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGdyZWVuO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuLy8vICAgICAgY29sb3I6IHRlYWw7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKDk1MHB4KSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgLy8gQWR2YW5jZWQgdXNlOlxuLy8vICAgICRteS1icmVha3BvaW50czogKCBMOiA5MDBweCwgWEw6IDEyMDBweCApO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmICRtaW4td2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkbWF4LXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxuXG4gICAgICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcbiAgICAgICAgICAgICRtZWRpYS10eXBlOiAnJztcbiAgICAgICAgICAgICRtZWRpYS1xdWVyeTogc3RyLXNsaWNlKHVucXVvdGUoJG1lZGlhLXF1ZXJ5KSwgNik7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3ctYnJlYWtwb2ludHMgKCRtcS1zaG93LWJyZWFrcG9pbnRzKSAtIExpc3Qgb2YgYnJlYWtwb2ludHMgdG8gc2hvdyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbi8vL1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcbkBtaXhpbiBtcS1zaG93LWJyZWFrcG9pbnRzKCRzaG93LWJyZWFrcG9pbnRzOiAkbXEtc2hvdy1icmVha3BvaW50cywgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBib2R5OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0Y4RTM7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGNvbG9yOiAjQzA5ODUzO1xuICAgICAgICBmb250OiBzbWFsbC1jYXB0aW9uO1xuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXG4gICAgICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xuICAgICAgICAgICAgJHdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcbiAgICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xufVxuXG5cblxuLy8gQGluY2x1ZGUgbXEoJGZyb206IDBweCwgJHVudGlsOiBsYXJnZXBob25lKSB7XG4vLyAgICAgd2lkdGg6IDEwMCU7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDA7XG4vLyB9XG4vLyBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSwgJHVudGlsOiBzbWFsbGRlc2t0b3ApIHtcbi8vICAgICB3aWR0aDogNDklO1xuLy8gICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbi8vICAgICAgICAgY2xlYXI6IGxlZnQ7XG4vLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuLy8gICAgIH1cbi8vIH0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiAgTUlYSU5TICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovICBcblxuXHRAbWl4aW4gbGluZWFyLWdyYWRpZW50KCRmcm9tQ29sb3IsICR0b0NvbG9yKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHRvQ29sb3I7IC8qIEZhbGxiYWNrIENvbG9yICovXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgkZnJvbUNvbG9yKSwgdG8oJHRvQ29sb3IpKTsgLyogU2FmNCssIENocm9tZSAqL1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb21Db2xvciwgJHRvQ29sb3IpOyAvKiBDaHJvbWUgMTArLCBTYWY1LjErLCBpT1MgNSsgKi9cblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAgICAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTsgLyogRkYzLjYgKi9cblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAgICAgLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTsgLyogSUUxMCAqL1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb21Db2xvciwgJHRvQ29sb3IpOyAvKiBPcGVyYSAxMS4xMCsgKi9cblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tQ29sb3IsICR0b0NvbG9yKTtcblx0XHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxTdGFydENvbG9yU3RyPScjeyRmcm9tQ29sb3J9JywgRW5kQ29sb3JTdHI9JyN7JHRvQ29sb3J9Jyk7XG5cdH1cblxuXHRcblx0QG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcblx0XHQtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHRcdC1tb3otdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG5cdFx0LW1zLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHRcdC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHR9XG5cblx0XG5cdEBtaXhpbiB0cmFuc2Zvcm0oJHRyYW5zZm9ybXMpIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG5cdFx0LW1vei10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuXHRcdC1tcy10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuXHRcdC1vLXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG5cdFx0dHJhbnNmb3JtOiAkdHJhbnNmb3Jtcztcblx0fVxuXHRcblx0QG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJHRyYW5zZm9ybS1vcmlnaW4uLi4pIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkdHJhbnNmb3JtLW9yaWdpbjsgXG4gICAgICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJHRyYW5zZm9ybS1vcmlnaW47IFxuICAgICAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkdHJhbnNmb3JtLW9yaWdpbjsgXG4gICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICR0cmFuc2Zvcm0tb3JpZ2luOyBcbiAgICB9XG5cblxuXHQvKiAgVXNhZ2U6XG5cdFx0XHRAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG5cdFx0XHQgICAgZm9udC1zdHlsZTppdGFsaWM7XG5cdFx0XHQgICAgY29sb3I6IHdoaXRlO1xuXHRcdFx0ICAgIGZvbnQtd2VpZ2h0OjEwMDtcblx0XHRcdH1cblx0Ki9cblx0QG1peGluIHBsYWNlaG9sZGVyIHtcblx0XHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtAY29udGVudH1cblx0XHQmOi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHtAY29udGVudH1cblx0XHQmOjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgIHtAY29udGVudH1cblx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgIHtAY29udGVudH0gIFxuXHR9XG5cblxuXG5cblxuXHRAbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzKSB7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzK3B4O1xuXHRcdGJvcmRlci1yYWRpdXM6ICRyYWRpdXMrcHg7XG5cdFx0YmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgIC8qIHN0b3BzIGJnIGNvbG9yIGZyb20gbGVha2luZyBvdXRzaWRlIHRoZSBib3JkZXI6ICovXG5cdH1cblxuXG5cdEBtaXhpbiBsaXN0LWNvbHMoJGNvbHMsICRnYXApe1xuXHRcdGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcblx0XHQtbW96LWNvbHVtbi1jb3VudDokY29sczsgXG5cdFx0LW1vei1jb2x1bW4tZ2FwOiRnYXAgKyBlbTsgXG5cblx0XHQtd2Via2l0LWNvbHVtbi1jb3VudDokY29scztcblx0XHQtd2Via2l0LWNvbHVtbi1nYXA6JGdhcCArIGVtO1xuXHR9XG5cblxuXG5cdC8qIFVzYWdlOiBAaW5jbHVkZSBvcGFjaXR5KDAuOCk7ICovXG5cdEBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG5cdFx0b3BhY2l0eTogJG9wYWNpdHk7XG5cdFx0JG9wYWNpdHktaWU6ICRvcGFjaXR5ICogMTAwO1xuXHRcdGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7IC8vSUU4XG5cdH1cblxuXG5cblx0QG1peGluIGJveC1zaGFkb3coJGJveC1zaGFkb3cuLi4pIHtcblx0XHRcdC13ZWJraXQtYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG5cdFx0XHQtbW96LWJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xuXHRcdFx0LW1zLWJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xuXHRcdFx0LW8tYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG5cdFx0XHRib3gtc2hhZG93OiAkYm94LXNoYWRvdztcblx0fVxuXG5cblxuXHRAbWl4aW4gdGV4dC1zaGFkb3coJHRleHQtc2hhZG93Li4uKSB7XG5cdFx0XHQtd2Via2l0LXRleHQtc2hhZG93OiAkdGV4dC1zaGFkb3c7XG5cdFx0XHQtbW96LXRleHQtc2hhZG93OiAkdGV4dC1zaGFkb3c7XG5cdFx0XHQtbXMtdGV4dC1zaGFkb3c6ICR0ZXh0LXNoYWRvdztcblx0XHRcdC1vLXRleHQtc2hhZG93OiAkdGV4dC1zaGFkb3c7XG5cdFx0XHR0ZXh0LXNoYWRvdzogJHRleHQtc2hhZG93O1xuXHR9XG5cblxuXG5cdEBtaXhpbiBib3JkZXItYm94KCkge1xuXHRcdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgXG5cdFx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBcblx0XHQtby1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1x0XG5cdH1cblxuXG5cdFxuXHQvKiBVc2FnZTogQGluY2x1ZGUgZm9udC1zaXplKDIuMik7ICovXG5cdEBtaXhpbiBmb250LXNpemUoJHNpemVWYWx1ZTogMS42LCAkbGluZS1oZWlnaHQ6JHNpemVWYWx1ZSoxLjMpIHtcblx0XHRmb250LXNpemU6ICgkc2l6ZVZhbHVlICogMTApICsgcHg7XG5cdFx0Zm9udC1zaXplOiAkc2l6ZVZhbHVlICsgcmVtO1xuXHRcdFxuXHRcdGxpbmUtaGVpZ2h0OiAoJGxpbmUtaGVpZ2h0ICogMTApICsgcHg7XG5cdFx0bGluZS1oZWlnaHQ6JGxpbmUtaGVpZ2h0K3JlbTtcblx0fVxuXG5cblx0QG1peGluIGxpbmUtaGVpZ2h0KCRsaW5lLWhlaWdodCkge1xuXHRcdFxuXHRcdGxpbmUtaGVpZ2h0OiAoJGxpbmUtaGVpZ2h0ICogMTApICsgcHg7XG5cdFx0bGluZS1oZWlnaHQ6JGxpbmUtaGVpZ2h0K3JlbTtcblx0fVxuXG5cblxuXHRAbWl4aW4gY2xlYXJmaXgge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0fVxuXHR9XG5cblxuXHRAbWl4aW4gY2VudGVyZXIoJHRvcDogNTAlLCAkbGVmdDogNTAlLCAkaG9yaXpvbnRhbDogdHJ1ZSwgJHZlcnRpY2FsOiB0cnVlKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGlmICgkaG9yaXpvbnRhbCBhbmQgJHZlcnRpY2FsKSB7XG4gICAgICAgICAgICB0b3A6ICR0b3A7XG4gICAgICAgICAgICBsZWZ0OiAkbGVmdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgLTUwJSkpO1xuICAgICAgICB9IEBlbHNlIGlmICgkaG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgbGVmdDogJGxlZnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIDApKTtcbiAgICAgICAgfSBAZWxzZSBpZiAoJHZlcnRpY2FsKSB7XG4gICAgICAgICAgICB0b3A6ICR0b3A7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsIC01MCUpKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cdC8qIFVzYWdlOlxuXHRcdC8vYSAzcmQgcGFyYW1ldGVyIG9mIHRydWUgd2lsbCBoaWRlIHRoZSB0ZXh0XG5cdFx0QGluY2x1ZGUgaWNvbW9vbihjbG9jaywgYmVmb3JlKVxuICAgIFx0e1xuICAgIFx0XHQvL2NhbiBzZXQgZXh0cmEgQ1NTIGhlcmVcbiAgICBcdFx0bWFyZ2luLXJpZ2h0OjVweDtcbiAgICBcdH1cblx0Ki9cblxuXHRAbWl4aW4gaWNvbW9vbigkaWNvbiwgJHBvc2l0aW9uOiBcImJlZm9yZVwiLCAkcmVwbGFjZTogZmFsc2UpIHtcbiAgICAgICAgLy8gSWYgd2UncmUgcmVwbGFjaW5nIHRoZSB0ZXh0LCBzZXQgZm9udC1zaXplIHRvIDBcbiAgICAgICAgQGlmICRyZXBsYWNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgfVxuICAgICAgICAvLyBQc2V1ZG8tZWxlbWVudCBwcm9wZXJ0aWVzXG4gICAgICAgICY6I3skcG9zaXRpb259IHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb24tI3skaWNvbn06YmVmb3JlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgICAgICAgICAgIHNwZWFrOiBub25lO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIEBpZiAkcmVwbGFjZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuXHQvKiBjc3MgdHJpYW5nbGVzICovXG5cblx0LyogIFVzYWdlOlxuXHRcdFx0QGluY2x1ZGUgYXJyb3coJ3RvcCcsJ3JpZ2h0JywgOHB4LCAjZmZmLCAjY2NjLCAxcHgpO1xuXHRcdFx0QGluY2x1ZGUgYXJyb3codG9wfGJvdHRvbXxsZWZ0fHJpZ2h0LCBsZWZ0fGNlbnRlcnxyaWdodCwgYXJyb3ctc2l6ZSwgYXJyb3ctY29sb3IsIGFycm93LWJvcmRlci1jb2xvciwgYXJyb3ctYm9yZGVyLXNpemUpO1xuXHQqL1xuXHRAbWl4aW4gYXJyb3coJHNpZGU6IFwicmlnaHRcIiwgJGFsaWduOiBcImNlbnRlclwiLCAkc2l6ZTogMjBweCwgJGNvbG9yOiAjZjZmNmY2LCAkYm9yZGVyQ29sb3I6IFwibm9uZVwiLCAkYm9yZGVyU2l6ZTogM3B4KSB7XG5cdFx0JHNlbGVjdG9yOiBcIiY6YWZ0ZXIsICY6YmVmb3JlXCI7XG5cdFx0QGlmICRib3JkZXJDb2xvciA9PSBcIm5vbmVcIiB7XG5cdFx0XHQkc2VsZWN0b3I6IFwiJjphZnRlclwiO1xuXHRcdH1cblx0XHQjeyRzZWxlY3Rvcn0ge1xuXHRcdFx0Ym9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGNvbnRlbnQ6IFwiIFwiO1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0d2lkdGg6IDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0fVxuXHRcdFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiAkc2l6ZTtcblx0XHRcdEBpbmNsdWRlIGFycm93X2hlbHBlcigkc2l6ZSwgJGNvbG9yLCAkc2l6ZSwgJHNpZGUsICRhbGlnbik7XG5cdFx0fVxuXHRcdFxuXHRcdEBpZiAkYm9yZGVyQ29sb3IgIT0gXCJub25lXCIge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRib3JkZXItd2lkdGg6ICRib3JkZXJTaXplICsgJHNpemU7XG5cdFx0XHRcdEBpbmNsdWRlIGFycm93X2hlbHBlcigkc2l6ZSArICRib3JkZXJTaXplLCAkYm9yZGVyQ29sb3IsICRzaXplIC0gJGJvcmRlclNpemUsICRzaWRlLCAkYWxpZ24pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdFxuXG5cdC8qIGNhbGxlZCBmcm9tIEBtaXhpbiBhcnJvdyAqL1xuXHRAbWl4aW4gYXJyb3dfaGVscGVyKCRhcnJvd1NpemUsICRhcnJvd0NvbG9yLCAkbWFyZ2luLCAkc2lkZSwgJGFsaWduKSB7XG5cdFx0XG5cdFx0QGlmICRzaWRlID09IFwidG9wXCIge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogJGFycm93Q29sb3I7XG5cdFx0XHR0b3A6IC0yICogJGFycm93U2l6ZTtcblx0XHR9XG5cdFx0XG5cdFx0QGlmICRzaWRlID09IFwiYm90dG9tXCIge1xuXHRcdFx0Ym9yZGVyLXRvcC1jb2xvcjogJGFycm93Q29sb3I7XG5cdFx0XHRib3R0b206IC0yICogJGFycm93U2l6ZTtcblx0XHR9XG5cdFx0XG5cdFx0QGlmICRzaWRlID09IFwibGVmdFwiIHtcblx0XHRcdGJvcmRlci1yaWdodC1jb2xvcjogJGFycm93Q29sb3I7XG5cdFx0XHRsZWZ0OiAtMiAqICRhcnJvd1NpemU7XG5cdFx0fVxuXHRcdFxuXHRcdEBpZiAkc2lkZSA9PSBcInJpZ2h0XCIge1xuXHRcdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICRhcnJvd0NvbG9yO1xuXHRcdFx0cmlnaHQ6IC0yICogJGFycm93U2l6ZTtcblx0XHR9XG5cdFx0XG5cdFx0QGlmICRzaWRlID09IFwicmlnaHRcIiBvciAkc2lkZSA9PSBcImxlZnRcIiB7XG5cdFx0XHRAaWYgJGFsaWduID09IFwiY2VudGVyXCIge1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0bWFyZ2luLXRvcDogLSRhcnJvd1NpemU7XG5cdFx0XHR9XG5cdFx0XHRAZWxzZSBpZiAkYWxpZ24gPT0gXCJ0b3BcIiB7XG5cdFx0XHRcdHRvcDogJG1hcmdpbjtcblx0XHRcdH1cblx0XHRcdEBlbHNlIGlmICRhbGlnbiA9PSBcImJvdHRvbVwiIHtcblx0XHRcdFx0Ym90dG9tOiAkbWFyZ2luO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpZiAkc2lkZSA9PSBcImJvdHRvbVwiIG9yICRzaWRlID09IFwidG9wXCIge1xuXHRcdFx0QGlmICRhbGlnbiA9PSBcImNlbnRlclwiIHtcblx0XHRcdFx0cmlnaHQ6IDUwJTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtJGFycm93U2l6ZTtcblx0XHRcdH1cblx0XHRcdEBlbHNlIGlmICRhbGlnbiA9PSBcImxlZnRcIiB7XG5cdFx0XHRcdGxlZnQ6ICRtYXJnaW47XG5cdFx0XHR9XG5cdFx0XHRAZWxzZSBpZiAkYWxpZ24gPT0gXCJyaWdodFwiIHtcblx0XHRcdFx0cmlnaHQ6ICRtYXJnaW47XG5cdFx0XHR9XG5cdFx0fVxuXHR9IiwiLyotLS0tLS0tKi9cbi8qICBUWVBFICovXG4vKi0tLS0tLS0qL1xuXG4gICAgaDEsIGgyIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB9XG5cbiAgICBoMSwgaDIsIGgzIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRyZWd1bGFyO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICBoNCwgaDUsIGg2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRyZWd1bGFyO1xuICAgIH1cblxuICAgIGgxLCAuc3R5bGVBc0gxIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzLjIsIDMuNSk7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOjIwcHg7XG4gICAgfVxuXG4gICAgaDIsIC5zdHlsZUFzSDIge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMi43LCAzKTtcbiAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjEwcHg7XG4gICAgfVxuXG4gICAgaDMsIC5zdHlsZUFzSDMge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMi40LCAzLjQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjE1cHg7XG4gICAgfVxuXG4gICAgcCB7ICAgICAgICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoJGJhc2UtZm9udC1zaXplLCAyLjEpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXG4gICAgfVxuXG4gICAgLyogUHJlc2VudGF0aW9uICovXG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBsaW5lLWhlaWdodDoxLjJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRyZWd1bGFyO1xuICAgICAgICBjb2xvcjokcGxhY2Vob2xkZXItZ3JleTtcbiAgICB9XG5cbiAgICAuZnVuem9uZS1mb250IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmdW56b25lLWZvbnQ7XG4gICAgfVxuXG5cbiAgICBib2R5IC5kYXJ0bW9vci1zdG9yeS1mb250IHsgICAgICBcbiAgICAgICAgZm9udC1mYW1pbHk6ICR0ZXhneXJlYWR2ZW50b3JyZWd1bGFyLWZvbnQ7XG5cbiAgICAgICAgaDEsIGgyLCBoMywgXG4gICAgICAgIHAsIGEsIGxpIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdGV4Z3lyZWFkdmVudG9ycmVndWxhci1mb250IWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0iLCIvKi0tLS0tLS0qL1xuLyogRk9OVFMgKi9cbi8qLS0tLS0tLSovXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAncmlmZmljX2ZyZWVib2xkJztcbiAgICBzcmM6IHVybCgkcGF0aC10by1mb250cyArICcvUmlmZmljL3JpZmZpY2ZyZWUtYm9sZC13ZWJmb250LmVvdCcpO1xuICAgIHNyYzogdXJsKCRwYXRoLXRvLWZvbnRzICsgJy9SaWZmaWMvcmlmZmljZnJlZS1ib2xkLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgIHVybCgkcGF0aC10by1mb250cyArICcvUmlmZmljL3JpZmZpY2ZyZWUtYm9sZC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCRwYXRoLXRvLWZvbnRzICsgJy9SaWZmaWMvcmlmZmljZnJlZS1ib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgdXJsKCRwYXRoLXRvLWZvbnRzICsgJy9SaWZmaWMvcmlmZmljZnJlZS1ib2xkLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICAgdXJsKCRwYXRoLXRvLWZvbnRzICsgJy9SaWZmaWMvcmlmZmljZnJlZS1ib2xkLXdlYmZvbnQuc3ZnI3JpZmZpY19mcmVlYm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAndGV4Z3lyZWFkdmVudG9ycmVndWxhcic7XG4gICAgc3JjOiB1cmwoJHBhdGgtdG8tZm9udHMgKyAnL3RleC1neXJlLWFkdmVudG9yLXJlZ3VsYXIvdGV4Z3lyZWFkdmVudG9yLXJlZ3VsYXItd2ViZm9udC5lb3QnKTtcbiAgICBzcmM6IHVybCgkcGF0aC10by1mb250cyArICcvdGV4LWd5cmUtYWR2ZW50b3ItcmVndWxhci90ZXhneXJlYWR2ZW50b3ItcmVndWxhci13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoJHBhdGgtdG8tZm9udHMgKyAnL3RleC1neXJlLWFkdmVudG9yLXJlZ3VsYXIvdGV4Z3lyZWFkdmVudG9yLXJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJHBhdGgtdG8tZm9udHMgKyAnL3RleC1neXJlLWFkdmVudG9yLXJlZ3VsYXIvdGV4Z3lyZWFkdmVudG9yLXJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJHBhdGgtdG8tZm9udHMgKyAnL3RleC1neXJlLWFkdmVudG9yLXJlZ3VsYXIvdGV4Z3lyZWFkdmVudG9yLXJlZ3VsYXItd2ViZm9udC5zdmcjdGV4Z3lyZWFkdmVudG9ycmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn0iLCJcbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgc3JjOnVybCgkcGF0aC10by1pY29tb29uKydpY29tb29uLmVvdD81YXZ6OWknKTtcbiAgICBzcmM6dXJsKCRwYXRoLXRvLWljb21vb24rJ2ljb21vb24uZW90PzVhdno5aSNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCRwYXRoLXRvLWljb21vb24rJ2ljb21vb24udHRmPzVhdno5aScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCRwYXRoLXRvLWljb21vb24rJ2ljb21vb24ud29mZj81YXZ6OWknKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCRwYXRoLXRvLWljb21vb24rJ2ljb21vb24uc3ZnPzVhdno5aSNpY29tb29uJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsXG5bY2xhc3NePVwiaWNvbi1cIl06YWZ0ZXIsIFtjbGFzcyo9XCIgaWNvbi1cIl06YWZ0ZXIge1xuICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tbWVudS1iYXJzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU2MDlcIjtcbn1cbi5pY29uLWNyb3NzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU2MDhcIjtcbn1cbi5pY29uLWV4dGVybmFsLWxpbms6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTgwMFwiO1xufVxuLmljb24tbG9jYXRpb24tcGluOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU2MDRcIjtcbn1cbi5pY29uLW1hZy1nbGFzczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlNjA1XCI7XG59XG4uaWNvbi1xdWVzdGlvbi1tYXJrOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU2MDZcIjtcbn1cbi5pY29uLXByaW50ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTYwYVwiO1xufVxuLmljb24tYXJyb3ctbGVmdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlNjAxXCI7XG59XG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUgeyBcbiAgICBjb250ZW50OiBcIlxcZTYwMlwiO1xufVxuLmljb24tYXJyb3ctdXA6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTYwM1wiO1xufVxuLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlNjAwXCI7XG59XG4uaWNvbi1hcnJvdy1kb3duLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4uaWNvbi1hcnJvdy11cC1jaXJjbGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuLmljb24tYXJyb3ctbGVmdC1jaXJjbGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuLmljb24tYXJyb3ctcmlnaHQtY2lyY2xlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cbi5pY29uLWFycm93LXJpZ2h0MjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlODAxXCI7XG59XG4uaWNvbi1wbGF5LWFycm93OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU2MGJcIjtcbn1cbi5pY29uLXBsYXktYnV0dG9uOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cbi5pY29uLXBsYXktYnV0dG9uLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG4uaWNvbi1mYWNlYm9vay1jaXJjbGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuLmljb24taW5zdGFncmFtLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4uaWNvbi10d2l0dGVyLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uaWNvbi15b3V0dWJlLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG4uaWNvbi1nb29nbGVwbHVzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTYwN1wiO1xufVxuLmljb24tcGx1czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4uaWNvbi1taW51czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuLmljb24tbWVudTQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuLmljb24tbWVudTM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuLmljb24tbWVudTI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLmljb24tbWVudTE6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuLmljb24tYmlyZHM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxM1wiO1xufVxuLmljb24tSEVSOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MTRcIjtcbn1cbi5pY29uLWhlcml0YWdlLXRyYWlsczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG59XG4uaWNvbi1IaXN0b3JpYy1idWlsZGluZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG4uaWNvbi1pbmR1c3RyaWFsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cbi5pY29uLWluc2VjdHM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuLmljb24tSXJvbi1hZ2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxOVwiO1xufVxuLmljb24tTWFtbWFsczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG59XG4uaWNvbi1tZWRpZXZhbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG4uaWNvbi1taWxpdGFyeTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XG59XG4uaWNvbi1PdGhlci1hbmltYWxzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cbi5pY29uLVBsYW50czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG59XG4uaWNvbi1Qb25pZXM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuLmljb24tcHJlaGlzdG9yeTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG59XG4uaWNvbi1WaWN0b3JpYW46YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkyMVwiO1xufVxuLmljb24taG9tZTM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkyMlwiO1xufVxuXG4iLCIvKi0tLS0tLS0qL1xuLyogSUNPTlMgKi9cbi8qLS0tLS0tLSovXG5cblx0LnNjcm9sbERvd25JY29uIHtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb2xvcjokeWVsbG93O1x0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy1kb3duLWNpcmNsZSwgYWZ0ZXIsIHRydWUpICB7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMywgMCk7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0XG5cblxuXG5cdC5zb2NpYWwtaWNvbnMge1xuXG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzowO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0XHRsaSB7XG5cdFx0XHQvLyBib3JkZXI6MXB4IHNvbGlkIHJlZDsgXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Ly8gYm9yZGVyOjFweCBzb2xpZCBjeWFuO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHBhZGRpbmc6MjBweCAzMHB4O1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCRmYXN0LWFuaW0pO1xuXHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdGNvbG9yOiR5ZWxsb3c7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0LmZhY2Vib29rIHtcblx0XHRcdEBpbmNsdWRlIGljb21vb24oZmFjZWJvb2stY2lyY2xlLCBhZnRlciwgdHJ1ZSkgIHtcblx0XHRcdFx0QGluY2x1ZGUgY2VudGVyZXIoKTtcblx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDMsIDApO1xuXHRcdFx0XHQvLyBjb2xvcjokd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnR3aXR0ZXIge1xuXHRcdFx0QGluY2x1ZGUgaWNvbW9vbih0d2l0dGVyLWNpcmNsZSwgYWZ0ZXIsIHRydWUpICB7XG5cdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLCAwKTtcblx0XHRcdFx0Ly8gY29sb3I6JHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5waW50ZXJlc3Qge1xuXHRcdFx0QGluY2x1ZGUgaWNvbW9vbihwaW50ZXJlc3QsIGFmdGVyLCB0cnVlKSAge1xuXHRcdFx0XHRAaW5jbHVkZSBjZW50ZXJlcigpO1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMywgMCk7XG5cdFx0XHRcdC8vIGNvbG9yOiR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaW5zdGFncmFtIHtcblx0XHRcdEBpbmNsdWRlIGljb21vb24oaW5zdGFncmFtLWNpcmNsZSwgYWZ0ZXIsIHRydWUpICB7XG5cdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLCAwKTtcblx0XHRcdFx0Ly8gY29sb3I6JHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC55b3V0dWJlIHtcblx0XHRcdEBpbmNsdWRlIGljb21vb24oeW91dHViZS1jaXJjbGUsIGFmdGVyLCB0cnVlKSAge1xuXHRcdFx0XHRAaW5jbHVkZSBjZW50ZXJlcigpO1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMywgMCk7XG5cdFx0XHRcdC8vIGNvbG9yOiR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XHRcdFxuXHRcdC5wcmludGVyIHtcblx0XHRcdEBpbmNsdWRlIGljb21vb24ocHJpbnRlciwgYWZ0ZXIsIHRydWUpICB7XG5cdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLCAwKTtcblx0XHRcdFx0Ly8gY29sb3I6JHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zb2NpYWwtaWNvbnMuc29jaWFsLWljb25zLWNvbG91ciB7XG5cdFx0bGkge1xuXHRcdFx0YXtcblx0XHRcdFx0Ji5mYWNlYm9vayB7XG5cdFx0XHRcdFx0Y29sb3I6IzNiNTk5ODtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYudHdpdHRlciB7XG5cdFx0XHRcdFx0Y29sb3I6IzNiYWZlOTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYucGludGVyZXN0IHtcblx0XHRcdFx0XHRjb2xvcjojYzkxNjFkO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5pbnN0YWdyYW0ge1xuXHRcdFx0XHRcdGNvbG9yOiRncmV5O1xuXHRcdFx0XHRcdGRpc3BsYXk6bm9uZVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji55b3V0dWJlIHtcblx0XHRcdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYucHJpbnRlciB7XG5cdFx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRjb2xvcjokYmxhY2s7XG5cdFx0XHRcdH1cblxuXG5cblxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXG5cdC5wYWdlLWxldmVsLXNvY2lhbEljb25zLWNvbnRhaW5lciB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0cCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHQvL0lFMTAvMTEgZml4XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgeyAgXG5cdFx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnNvY2lhbC1pY29ucyB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6MTBweDtcblx0XHRcdGxpIHtcblx0XHRcdFx0YXtcblx0XHRcdFx0XHRwYWRkaW5nOjIwcHggMjBweDtcblxuXHRcdFx0XHRcdCYuaW5zdGFncmFtIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6bm9uZVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYueW91dHViZSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5Om5vbmVcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC8vSUUxMC8xMSBmaXhcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7ICBcblx0XHRcdFx0bWFyZ2luLXRvcDoxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblxuXHQuaWNvbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQuaWNvbi1iaXJkcyB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLUhFUiB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLWhlcml0YWdlLXRyYWlscyB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLUhpc3RvcmljLWJ1aWxkaW5nIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMyk7XG5cdH1cblx0Lmljb24taW5kdXN0cmlhbCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLWluc2VjdHMge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzKTtcblx0fVxuXHQuaWNvbi1Jcm9uLWFnZSB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLU1hbW1hbHMge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzKTtcblx0fVxuXHQuaWNvbi1tZWRpZXZhbCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLW1pbGl0YXJ5IHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMyk7XG5cdH1cblx0Lmljb24tT3RoZXItYW5pbWFscyB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLVBsYW50cyB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLVBvbmllcyB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9XG5cdC5pY29uLXByZWhpc3Rvcnkge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLjUpO1xuXHR9XG5cdC5pY29uLVZpY3RvcmlhbiB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHR9IiwiLyotLS0tLS0qL1xuLyogR1JJRCAqL1xuLyotLS0tLS0qL1xuXG5cdC5yb3cge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblxuXHQkY29sdW1uczogMTI7XG5cdCRjb2wtd2lkdGg6IDEwMC8kY29sdW1ucztcblx0JGNvbC13aWR0aC1wZXJjZW50YWdlOiBwZXJjZW50YWdlKCRjb2wtd2lkdGgvMTAwKTtcblx0JHdpZHRoLXctbWFyZ2luOiAkY29sLXdpZHRoIC0gMC4yO1xuXHQkZ2VuZXJhbC1tYXJnaW46IDI7XG5cblx0JHdpZHRoLXctZ2VuLW1hcmdpbjogKCRjb2wtd2lkdGggLSAkZ2VuZXJhbC1tYXJnaW4pICsgKCRnZW5lcmFsLW1hcmdpbiAvICRjb2x1bW5zKTtcblxuXHRbY2xhc3MqPVwiIGNvbFdpZHRoLVwiXSxcblx0W2NsYXNzXj1cImNvbFdpZHRoLVwiXSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoJGdlbmVyYWwtbWFyZ2luLzEwMCk7XG5cdFx0XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdCAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0ICAgIH1cblx0ICAgIFxuXHQgICAgJi5uby1tYXJnaW4ge1xuXHQgICAgXHRtYXJnaW46IDA7XG5cdCAgICB9XG5cdH1cblxuXG5cdCRjb3VudGVyOiAwO1xuXHQkd2lkdGg6IDA7XG5cblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG5cdFx0QGlmICRpID09IDEge1xuXHRcdFx0JHdpZHRoOiAkd2lkdGgtdy1nZW4tbWFyZ2luO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0JHdpZHRoOiAkd2lkdGggKyAkd2lkdGgtdy1nZW4tbWFyZ2luICsgJGdlbmVyYWwtbWFyZ2luO1xuXHRcdH1cblx0XHQkY291bnRlcjogJGNvdW50ZXIgKyAkd2lkdGg7XG5cdFx0XG5cdFx0XG5cdFx0LmNvbFdpZHRoLSN7JGl9IHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKCR3aWR0aC8xMDApO1xuXHQgICAgICAgIFxuXHQgICAgICAgICYubm8tbWFyZ2luIHtcblx0ICAgICAgICBcdHdpZHRoOiAkY29sLXdpZHRoLXBlcmNlbnRhZ2UgKiAkaTtcblx0ICAgICAgICB9XG5cdFx0fVxuXHR9XG5cblxuXHQuY29sV2lkdGgtNCB7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IGxhcmdlcGhvbmUpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lLCAkdW50aWw6IHRhYmxldCkge1xuXHRcdFx0d2lkdGg6NDglO1xuXHRcdFx0JjpudGgtY2hpbGQoMm4gKyAxKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O1xuXHRcdFx0XHRjbGVhcjpsZWZ0O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdHdpZHRoOjMyJTtcblxuXHRcdFx0JjpudGgtY2hpbGQoM24gKyAxKSB7XG5cdFx0XHRcdGNsZWFyOmxlZnQ7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXHQuZ3JpZCB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6MTAwMDtcblx0fVxuXG5cdCRncmlkczogNDtcblx0JG1hcmdpbkJhc2U6IDM7XG5cblx0LmdyaWRfX2l0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdGZsb2F0OiBsZWZ0O1xuXHR9XG5cblxuXHQuZ3JpZC0tNCB7XG5cdFx0XG5cdFx0LmdyaWRfX2l0ZW0ge1xuXHRcdFx0d2lkdGg6MTAwJTtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJHVudGlsOiBkZXNrdG9wKSB7XG5cdFx0XHRcdHdpZHRoOjUwJTtcblx0XHRcdFx0JjpudGgtY2hpbGQoMm4gKyAxKSB7XG5cdFx0XHRcdFx0Y2xlYXI6bGVmdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHR3aWR0aDoyNSU7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQoNG4gKyAxKSB7XG5cdFx0XHRcdFx0Y2xlYXI6bGVmdDtcblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHR9XG5cblxuXHQuZ3JpZC0tMiB7XG5cdFx0XG5cdFx0LmdyaWRfX2l0ZW0ge1xuXHRcdFx0d2lkdGg6MTAwJTtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHR3aWR0aDo1MCU7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQoMm4gKyAxKSB7XG5cdFx0XHRcdFx0Y2xlYXI6bGVmdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0ZGl2LmdyaWRfX2l0ZW0ucHJvbW8tc3BvdGxpZ2h0e1xuXHRcdG1pbi1oZWlnaHQ6MzYwcHg7XG5cdFx0Ly9oZWlnaHQ6MzR2aDtcblx0fVxuXHRcblx0ZGl2LmdyaWRfX2l0ZW0gZGl2IHtcblx0XHRtaW4taGVpZ2h0OiAzNjBweDtcblx0XHRoZWlnaHQ6MzB2aDtcblx0fSIsIi8qLS0tLS0tLS0tKi9cbi8qXHRIRUxQRVIgKi9cbi8qLS0tLS0tLS0tKi9cblxuXHQuY2xlYXJmaXgge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHR9XG5cblx0LyogTEVGVCAqL1xuXHQuaW1nLWZsb2F0LWxlZnQge1xuXHRcdGZsb2F0OmxlZnQ7XG5cdFx0bWFyZ2luOjAgNDBweCA0MHB4IDBcblx0fVxuXHRcdFxuXHQuZmxvYXQtbGVmdCB7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0fVxuXG5cdC50ZXh0LWxlZnQge1xuXHRcdHRleHQtYWxpZ246bGVmdCFpbXBvcnRhbnRcblx0fVxuXG5cdC50ZXh0LWxlZnQtYXQtdGFibGV0IHtcblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdCAgICAgICAgdGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudFxuXHQgICAgfVxuXHR9XG5cdFxuXHQudGV4dC1sZWZ0LWF0LWRlc2t0b3Age1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdCAgICAgICAgdGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudFxuXHQgICAgfVxuXHR9XG5cdFxuXHRcblxuXHQvKiBSSUdIVCAqL1xuXHQuaW1nLWZsb2F0LXJpZ2h0IHtcblx0XHRmbG9hdDpyaWdodDtcblx0XHRtYXJnaW46MCAwIDQwcHggNDBweFxuXHR9XG5cblxuXG5cdC5mbG9hdC1yaWdodCB7XG5cdFx0ZmxvYXQ6cmlnaHRcblx0fVxuXG5cdC50ZXh0LXJpZ2h0XHR7XG5cdFx0dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnRcblx0fVxuXHRcblx0LnRleHQtcmlnaHQtYXQtdGFibGV0IHtcblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdCAgICAgICAgdGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnRcblx0ICAgIH1cblx0fVxuXHRcblx0LnRleHQtcmlnaHQtYXQtZGVza3RvcCB7XG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0ICAgICAgICB0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudFxuXHQgICAgfVxuXHR9XG5cblxuXHQvKiBGTE9BVCBOT05FICovXG5cdC5mbG9hdC1hdC1zbWFsbHBob25lIHtcblx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IHNtYWxscGhvbmUpIHtcblx0XHRcdGZsb2F0Om5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LmZsb2F0LWF0LWxhcmdlcGhvbmUge1xuXHRcdEBpbmNsdWRlIG1xKCR1bnRpbDogbGFyZ2VwaG9uZSkge1xuXHRcdFx0ZmxvYXQ6bm9uZTtcblx0XHR9XG5cdH1cblxuXHQuZmxvYXQtYXQtdGFibGV0IHtcblx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuXHRcdFx0ZmxvYXQ6bm9uZTtcblx0XHR9XG5cdH1cblxuXG5cblxuXHQvKiBDRU5URVIgKi9cblx0LmNlbnRlcixcblx0LnRleHQtY2VudGVyIHtcblx0XHR0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLWxlZnQ6YXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6YXV0bztcblx0fVxuXHRcdFxuXHRcblx0Lm9mZi1zY3JlZW4ge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdHRvcDotOTk5OXB4O1xuXHRcdGxlZnQ6LTk5OTlweFxuXHR9XG5cdFxuXHQuaGlkZGVuXHR7XG5cdFx0ZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cblx0Lm1hcmdpbi1ib3R0b20tMzAge1xuXHRcdG1hcmdpbi1ib3R0b206MzBweDtcblx0fVxuXHRcblx0LnNob3J0LWRhdGVcdHtcblx0XHRtYXJnaW46MC40ZW0gMDtcblx0XHRjb2xvcjojNjY2XG5cdH1cblx0XG5cdC5mdWxsLWRhdGUge1xuXHRcdG1hcmdpbjowLjRlbSAwO1xuXHRcdGNvbG9yOiM2NjY7XG5cdFx0Zm9udC1zdHlsZTppdGFsaWNcblx0fVxuXHRcblx0XG5cdC8vVG9wXG5cdC5iYWNrUG9zLXRvcExlZnQge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246MCUgMCU7XG5cdH1cblx0LmJhY2tQb3MtdG9wQ2VudGVyIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSAwJTtcblx0fVxuXHQuYmFja1Bvcy10b3BSaWdodCB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjoxMDAlIDAlO1xuXHR9XG5cblx0Ly9DZW50ZXJcblx0LmJhY2tQb3MtY2VudGVyTGVmdCB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjowJSA1MCU7XG5cdH1cblx0LmJhY2tQb3MtY2VudGVyQ2VudGVyIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSA1MCU7XG5cdH1cblx0LmJhY2tQb3MtY2VudGVyUmlnaHQge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246MTAwJSA1MCU7XG5cdH1cblxuXHQvL0JvdHRvbVxuXHQuYmFja1Bvcy1ib3R0b21MZWZ0IHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjAlIDEwMCU7XG5cdH1cblx0LmJhY2tQb3MtYm90dG9tQ2VudGVyIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSAxMDAlO1xuXHR9XG5cdC5iYWNrUG9zLWJvdHRvbVJpZ2h0IHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgMTAwJTtcblx0fVxuXG5cblx0LmJhY2tncm91bmQtY292ZXIge1xuXHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgXG5cdFx0LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdFx0LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdFx0LW8tYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuXHRcdGJhY2tncm91bmQtc2l6ZTpjb3Zlcjtcblx0fVxuXG5cdC5iYWNrZ3JvdW5kLWNvbnRhaW4ge1xuXHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgXG5cdFx0LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcblx0XHQtbW96LWJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuXHRcdC1vLWJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuXHRcdGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuXHR9XG5cblx0Ly83NjhweFxuXHQuc2hvdy1hdC10YWJsZXQge1x0XHRcblx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuXHQgICAgICAgIGRpc3BsYXk6YmxvY2s7XG5cdCAgICB9XG5cdH1cblxuXHQuaGlkZS1hdC10YWJsZXQge1x0XHRcblx0XHRkaXNwbGF5OmJsb2NrO1xuXG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuXHQgICAgICAgIGRpc3BsYXk6bm9uZTtcblx0ICAgIH1cblx0fVxuXG5cblx0Ly85NjBweFxuXHQuc2hvdy1hdC1zbWFsbC1kZXNrdG9wIHtcdFx0XG5cdFx0ZGlzcGxheTpub25lO1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0ICAgICAgICBkaXNwbGF5OmJsb2NrO1xuXHQgICAgfVxuXHR9XG5cblx0LmhpZGUtYXQtc21hbGwtZGVza3RvcCB7XHRcdFxuXHRcdGRpc3BsYXk6YmxvY2s7XG5cblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdCAgICAgICAgZGlzcGxheTpub25lO1xuXHQgICAgfVxuXHR9XG5cblxuXHQvLzEyMDBweFxuXHQuc2hvdy1hdC1kZXNrdG9wIHtcdFx0XG5cdFx0ZGlzcGxheTpub25lO1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdCAgICAgICAgZGlzcGxheTpibG9jaztcblx0ICAgIH1cblx0fVxuXG5cdC5oaWRlLWF0LWRlc2t0b3Age1x0XHRcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdCAgICAgICAgZGlzcGxheTogbm9uZTtcblx0ICAgIH1cblx0fVxuXG5cdFxuXHQvL0Z1bGwgU2l6ZSBVbnRpbFxuXHQuZnVsbC1zaXplLXVudGlsLXRhYmxldCB7XG5cdFx0QGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5mdWxsLXNpemUtdW50aWwtc21hbGwtZGVza3RvcCB7XG5cdCAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDA7IFxuXHRcdH1cblx0fVxuXG5cdC5mdWxsLXNpemUtdW50aWwtZGVza3RvcCB7XG5cdCAgICBAaW5jbHVkZSBtcSgkdW50aWw6IGRlc2t0b3ApIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luOiAwOyBcblx0XHR9XG5cdH1cblxuXG5cblx0Ly9SZXNwb25zaXZlIFVudGlsXG5cdC5yZXNwb25zaXZlLXVudGlsLXRhYmxldCB7XG5cdFx0QGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OmF1dG87XG5cdFx0fVxuXHR9XG5cblx0LnJlc3BvbnNpdmUtdW50aWwtc21hbGxkZXNrdG9wIHtcblx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6YXV0bztcblx0XHR9XG5cdH1cblxuXHQucmVzcG9uc2l2ZS11bnRpbC1kZXNrdG9wIHtcblx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IGRlc2t0b3ApIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OmF1dG87XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8qIEJhY2tncm91bmQgLyBGb3JlZ3JvdW5kIENvbWJvcyAqL1xuXHQuZGFyay1iYWNrZ3JvdW5kIHtcblx0XHRoMSwgaDIsIGgzLCBcblx0XHRoNCwgcCB7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0LmxpZ2h0LWJhY2tncm91bmQge1xuXHRcdGgxLCBoMiwgaDMsIFxuXHRcdGg0LCBwIHtcblx0XHRcdGNvbG9yOiRncmV5O1xuXHRcdH1cblx0fVxuXG5cdC5saWdodC1iYWNrZ3JvdW5kLWF0LWxhcmdlcGhvbmUge1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHRoMSwgaDIsIGgzLCBcblx0XHRcdGg0LCBwIHtcblx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmxpZ2h0LWJhY2tncm91bmQtYXQtc21hbGxkZXNrdG9wIHtcblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRoMSwgaDIsIGgzLCBcblx0XHRcdGg0LCBwIHtcblx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXG5cblx0LyogR2VuZXJhbCAqL1xuXHQubm8tc2Nyb2xsIHtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjpub25lO1xuXHR9XG5cdFxuXHQucmVzcG9uc2l2ZS1pbWcsXG5cdC5yZXNwb25zaXZlLWltYWdlLFxuXHQuaW1hZ2UtZnVsbC13aWR0aCxcdFx0XG5cdC5mdWxsLXdpZHRoXHR7XG5cdFx0ZGlzcGxheTpibG9jazsgXG5cdFx0d2lkdGg6MTAwJTtcblx0XHRoZWlnaHQ6YXV0bztcblx0fVxuXHRcblx0XG5cblx0LyogSlMgSElERSAqL1xuXHQuanMgLmpzLWhpZGUge1xuXHRcdGRpc3BsYXk6bm9uZVxuXHR9XG5cdC5uby1qcyAuanMtc2hvdyB7XG5cdFx0ZGlzcGxheTpub25lO1xuXHR9XG5cdFxuXHQubm8tanMgLmpzLWhpZGUge1xuXHRcdGRpc3BsYXk6YmxvY2tcblx0fVxuXHRcblx0Lm5vLWpzIC5sYXp5bG9hZCB7XG5cdFx0ZGlzcGxheTpub25lIWltcG9ydGFudDtcblx0fVxuXG5cblx0Ly9QYWdlIGhlaWdodHNcblx0LmhhbGZQYWdlSGVpZ2h0IHtcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdGhlaWdodDogNDV2aFxuXHRcdH1cdFx0XG5cdH1cblxuXG5cdC5xdWFydGVyUGFnZUhlaWdodCB7XG5cblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdFx0XHRoZWlnaHQ6IDM1dmhcblx0XHR9XHRcdFxuXHR9IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcdE5FVyBERUZBVUxUU1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCAgXHRcdFx0XHRcdFx0ICBcdCAgXHQgICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cdFxuXHRhcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgXG5cdGZpZ2NhcHRpb24sIGZpZ3VyZSwgXG5cdGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIFxuXHRtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdH1cblxuXHRcblx0dGFibGUge1xuXHRcdGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcblx0XHRib3JkZXItc3BhY2luZzowO1xuXHR9XG5cdFxuXHRociB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRoZWlnaHQ6MXB4O1xuXHRcdGJvcmRlcjowO1xuXHRcdGJvcmRlci10b3A6MnB4IHNvbGlkIGxpZ2h0ZW4oJGdyZXksIDQwJSk7XG5cdFx0bWFyZ2luOjFlbSAwO1xuXHRcdHBhZGRpbmc6MDtcblx0fVxuXHRcblx0aW1nIHtcblx0XHQtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuXHR9XG5cblxuXHRhZGRyZXNzIHtcdFx0XHRcblx0XHRmb250LXN0eWxlOm5vcm1hbDsgXG5cdFx0cGFkZGluZy1ib3R0b206MWVtXG5cdH1cblxuXHRcblxuXHQvLyBMaW5rc1xuXHRcdGEge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtcblx0XHRcdGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcblx0XHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0b3V0bGluZTpub25lO1xuXHRcdFx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0b3V0bGluZToxcHggc29saWQgJHRlYWw7XG5cdFx0XHR9XG5cblx0XHRcdGltZyB7XG5cdFx0XHRcdGJvcmRlcjowO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG5cdFx0XHRcdC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47XHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XG5cdFxuXHQvLyBMaXN0c1xuXHRcdHVsLCBcblx0XHRvbCB7XG5cdFx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHR9XG5cdFx0XG5cdFx0b2wge1xuXHRcdFx0bGlzdC1zdHlsZS10eXBlOmRlY2ltYWw7XG5cdFx0fVxuXHRcdFxuXHRcdG5hdiB7XG5cdFx0XHRvbCxcblx0XHRcdHVsLFxuXHRcdFx0bGkge1xuXHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6bm9uZTtcblx0XHRcdFx0bGlzdC1zdHlsZS1pbWFnZTpub25lO1x0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFxuXG5cdC8vIFRleHRcblx0XHRwcmUsXG5cdFx0Y29kZSxcblx0XHRrYmQsXG5cdFx0c2FtcCB7XG5cdFx0XHRmb250LWZhbWlseTptb25vc3BhY2UsIHNhbnMtc2VyaWY7XG5cdFx0fVxuXHRcdFxuXHRcdHEsXG5cdFx0YmxvY2txdW90ZSB7XG5cdFx0XHRxdW90ZXM6bm9uZTtcblxuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDonJzsgY29udGVudDpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRcblx0XHRpbnMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmY5O1xuXHRcdFx0Y29sb3I6IzAwMDtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjpub25lO1xuXHRcdH1cblx0XHRcblx0XHRtYXJrIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmOTtcblx0XHRcdGNvbG9yOiMwMDA7XG5cdFx0XHRmb250LXN0eWxlOml0YWxpYztcblx0XHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdFx0fVxuXHRcdFxuXHRcdGRlbCB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO1xuXHRcdH1cblx0XHRcblx0XHRhYmJyW3RpdGxlXSxcblx0XHRkZm5bdGl0bGVdIHtcblx0XHRcdGJvcmRlci1ib3R0b206MXB4IGRvdHRlZCAjY2NjO1xuXHRcdFx0Y3Vyc29yOmhlbHA7XG5cdFx0fVxuXHRcdFxuXHRcdHN1YiB7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjpzdWI7XG5cdFx0XHRmb250LXNpemU6c21hbGxlcjtcblx0XHR9XG5cdFx0XG5cdFx0c3VwIHtcblx0XHRcdHZlcnRpY2FsLWFsaWduOnN1cGVyO1xuXHRcdFx0Zm9udC1zaXplOnNtYWxsZXI7XG5cdFx0fVxuXHRcdFxuXHRcdHNtYWxsIHtcblx0XHRcdGZvbnQtc2l6ZTo4NSU7XG5cdFx0fVxuXG5cdFx0LmllNyAucmFkaW9MYWJlbCwgLmllNyAuY2hlY2tCb3hMYWJlbCxcblx0XHQuaWU4IC5yYWRpb0xhYmVsLCAuaWU4IC5jaGVja0JveExhYmVsLFxuXHRcdC5pZTkgLnJhZGlvTGFiZWwsIC5pZTkgLmNoZWNrQm94TGFiZWwge1xuXHRcdFx0dmVydGljYWwtYWxpZ246dG9wO1xuXHRcdH1cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcdFRISVJEIFBBUlRZIElGUkFNRVNcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCAgXHRcdFx0XHRcdFx0ICBcdCAgXHQgIFx0Ki9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiN3YW1mcmFtZSB7XG5cblx0ZGlzcGxheTpibG9jaztcblx0d2lkdGg6MTAwJTtcblx0aGVpZ2h0OjUwMHB4O1xuXG5cdEBpbmNsdWRlIG1xKCR1bnRpbDogbGFyZ2VwaG9uZSkge1xuXHRcdGhlaWdodDo5MDBweDtcblx0fVxufVxuXG5cbi5nb29nbGUtbWFwcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206NDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTIuNSU7IC8vIFRoaXMgaXMgdGhlIGFzcGVjdCByYXRpb1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmdvb2dsZS1tYXBzIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59IiwiQGltcG9ydCBcImFjY2Vzc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJhY2NvcmRpb25cIjtcblxuQGltcG9ydCBcImJyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuXG5AaW1wb3J0IFwiaGVhZGVyXCI7XG5AaW1wb3J0IFwiZm9vdGVyXCI7XG5AaW1wb3J0IFwiZnVsbFNjcmVlbkJhbm5lclwiO1xuXG5AaW1wb3J0IFwibGlzdHNcIjtcbkBpbXBvcnQgXCJtb2JpbGVuYXZcIjtcbkBpbXBvcnQgXCJ0b3BMZXZlbE5hdlwiO1xuQGltcG9ydCBcImxlZnROYXZcIjtcblxuQGltcG9ydCBcInBhZ2VUb29sc1wiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcblxuQGltcG9ydCBcInNlYXJjaHJlc3VsdHNcIjtcbkBpbXBvcnQgXCJzcG90bGlnaHRzXCI7XG5cbkBpbXBvcnQgXCJ2aWRlb0VtYmVkXCI7XG5AaW1wb3J0IFwid3lzaXd5Z1wiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcIm1hcFwiO1xuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXHRBQ0NFU1NJQklMSVRZXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQgIFx0XHRcdFx0XHRcdCAgXHQqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuI2FjY2Vzc2liaWxpdHlNZW51Q29udGFpbmVyXHR7XG5cdGJvcmRlcjozcHggc29saWQgJGJsYWNrOyBcblx0YmFja2dyb3VuZDokZ3JleTsgXG5cdHBvc2l0aW9uOmFic29sdXRlOyBcblx0dG9wOi05OTlweDsgXG5cdGxlZnQ6LTk5OXB4OyBcblx0b3BhY2l0eTogMDsgXG5cdHotaW5kZXg6OTk5OTtcblxuXHQmLmFjY2Vzc01lbnVPbiB7XG5cdFx0Ym9yZGVyOjNweCBzb2xpZCAkYmxhY2s7IFxuXHRcdGJhY2tncm91bmQ6JGdyZXk7IFxuXHRcdHBvc2l0aW9uOmFic29sdXRlOyBcblx0XHR0b3A6MHB4OyBcblx0XHRsZWZ0OjBweDtcdFx0XG5cdH1cbn1cblxuI2FjY2Vzc2liaWxpdHlNZW51XHR7XG5cdG1hcmdpbjowOyBcblx0cGFkZGluZzoyMHB4IDEwcHg7IFxuXHRvdmVyZmxvdzpoaWRkZW47XG5cblx0bGkge1xuXHRcdG1hcmdpbjowIDEwcHg7IFxuXHRcdHBhZGRpbmc6MDsgXG5cdFx0bGlzdC1zdHlsZTpub25lOyBcblx0XHRmbG9hdDpsZWZ0O1xuXG5cdFx0YSB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrOyBwYWRkaW5nOjEwcHg7IGJvcmRlcjozcHggc29saWQgJGJsYWNrO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyxcblx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcdEFDQ09SRElPTlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQgIFx0XHRcdFx0XHRcdCAgXHQqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblx0XHRcblx0LyogQWNjb3JkaW9uICovXG5cdFx0LmFjY29yZGlvbiB7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdG1hcmdpbjowIDAgMzBweDtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdG1heC1oZWlnaHQ6MTAwMDAwMHB4O1xuXG5cdFx0XHQuYWNjb3JkaW9uUGFuZWwge1xuXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MnB4O1xuXG5cdFx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0XHQudGl0bGVIZWFkZXIge1xuXG5cdFx0XHRcdFx0IFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy11cCwgYWZ0ZXIpICB7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHR0b3A6MjIlO1xuXHRcdFx0XHRcdFx0XHRyaWdodDoxMHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC50aXRsZUhlYWRlciB7XG5cdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XHRcdFx0XHRcdFxuXHRcdFx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuXHRcdFx0XHRcdGNvbG9yOiRibGFjaztcblx0XHRcdFx0XHQgXG5cdFx0XHRcdFx0IEBpbmNsdWRlIGljb21vb24oYXJyb3ctZG93biwgYWZ0ZXIpICB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDoyNSU7XG5cdFx0XHRcdFx0XHRyaWdodDoxMHB4O1xuXHRcdFx0XHRcdH1cblxuXG5cdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjEwcHggMzVweCAxMHB4IDEwcHg7XG5cdFx0XHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ZGFya2VuKCRibGFjaywgNyUpO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjb2xvcjokYmxhY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmNvbnRlbnREZXRhaWxzIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdFx0bWFyZ2luOjAgMCAzcHg7XG5cdFx0XHRcdFx0Ly8gcGFkZGluZzowO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6d2hpdGU7XG5cdFx0XHRcdFx0cGFkZGluZzogMTBweCA1cHg7XG5cblx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOjBcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5jdGEtY29udGFpbmVyIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0bWFyZ2luOjEwcHggMDtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6MCAyMHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MTVweDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MTVweDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGJsYWNrO1xuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6MDtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdC50ZXh0LWJsb2NrIHtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOjAgMTBweDtcblx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cblx0XHRcdFx0XHRcdFx0XHRcdCYubW9yZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9IiwiLmJyZWFkY3J1bWJzIHtcblx0cGFkZGluZzogMjBweCAwO1xuXHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5cdFxuXHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0d2lkdGg6NTAlO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdHdpZHRoOjcwJTtcblx0fVxuXG5cdHVsIHtcblx0XHRmbG9hdDpsZWZ0O1xuXHR9XG5cblx0bGksIFxuXHRzcGFuW3R5cGVvZj1cInY6QnJlYWRjcnVtYlwiXSB7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XG5cdFx0YSxcblx0XHQmOmJlZm9yZSxcblx0XHRzcGFuIHtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRjb2xvcjogJHRleHQtZ3JleTtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjUpO1xuXHRcdH1cblx0XHRhLFxuXHRcdHNwYW4ge1xuXHRcdFx0cGFkZGluZzogNXB4IDA7XG5cdFx0fVxuXHRcdFxuXHRcdEBpbmNsdWRlIGljb21vb24oJ2Fycm93LXJpZ2h0Jykge1xuXHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRtYXJnaW46IDAgOHB4O1xuXHRcdH1cblx0XHRcblx0XHQmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cblxuXG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlx0QlVUVE9OU1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCAgXHRcdFx0XHRcdFx0ICBcdCovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cdC5idXR0b24tY29udGFpbmVyIHtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRtYXJnaW4tYm90dG9tOjQwcHg7XG5cblx0XHQuYnV0dG9uIHtcblx0XHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHRcdH1cblxuXHRcdCYuY2VudGVyIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cblx0XHQuZmxvYXQtcmlnaHQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0fVxuXHR9XG5cdFx0XG5cdGJ1dHRvbixcblx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7IFxuXHRcdGJvcmRlcjowO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRvdXRsaW5lOjA7XG5cdFx0fVxuXHR9XG5cdFxuXHQuYnV0dG9uIHtcblx0XHRib3JkZXI6MXB4IHNvbGlkICR3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cGFkZGluZzogMTBweCAxNXB4O1xuXHRcdGNvbG9yOiAkZ3JleTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuNywxLjkpO1xuXHRcdGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSFpbXBvcnRhbnQ7XG5cdFx0XG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XG5cblx0fVxuXHQuYnV0dG9uLXllbGxvdyB7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkeWVsbG93O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdFx0Y29sb3I6JGdyZXk7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0Y29sb3I6ICR5ZWxsb3c7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1saWxhYyB7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkbGlsYWM7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpbGFjO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Y29sb3I6ICRsaWxhYztcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLWJsdWUge1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGJsdWU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRjb2xvcjogJGJsdWU7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1ncmV5IHtcblx0XHRib3JkZXI6MXB4IHNvbGlkICRncmV5O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdGNvbG9yOiAkeWVsbG93O1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkeWVsbG93LCAxMCUpO1xuXHRcdFx0Y29sb3I6ICRncmV5O1xuXHRcdH1cblx0fVxuXG5cdC5idXR0b24tZ3JlZW4ge1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGdyZWVuO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcblx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdGNvbG9yOiAkZ3JlZW47XG5cdFx0fVxuXHR9XG5cblxuXHQvL2J1dHRvbiB3aXRoIHRyaWFuZ2VsZVxuXHQubW9yZS1jb250YWluZXIge1xuXHRcdG92ZXJmbG93OmhpZGRlbjtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cGFkZGluZy1yaWdodDozMHB4O1xuXG5cdFx0Ly9CYXNlIHN0eWxpbmdcblx0XHQubW9yZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBhZGRpbmc6IDEwcHggMTVweDtcblx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjUpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6JHJlZ3VsYXI7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmUhaW1wb3J0YW50O1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRcdFx0XHRjb250ZW50OlwiXCI7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdHJpZ2h0Oi0yMHB4O1xuXHRcdFx0XHR3aWR0aDoyMHB4O1xuXHRcdFx0XHRoZWlnaHQ6MTUwJTtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgyMGRlZykpO1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKDAlIDAlKTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ly8gJjpob3Zlcixcblx0XHRcdC8vICY6Zm9jdXMge1xuXHRcdFx0Ly8gXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHQvLyBcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdFx0Ly8gXHQmOmFmdGVyIHtcblx0XHRcdC8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblx0XHR9XHRcdFxuXHRcdC5tb3JlLWdyZWVuIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xuXHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xuXHRcdFx0fVxuXHRcdFx0Ly8gJjpob3Zlcixcblx0XHRcdC8vICY6Zm9jdXMge1xuXHRcdFx0Ly8gXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHQvLyBcdGNvbG9yOiAkZ3JlZW47XG5cblx0XHRcdC8vIFx0JjphZnRlciB7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ly8gXHR9XG5cdFx0XHQvLyB9XG5cdFx0fVxuXG5cdFx0Lm1vcmUteWVsbG93IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6JHllbGxvdztcblx0XHRcdGNvbG9yOiRncmV5O1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JHllbGxvdztcblx0XHRcdH1cblx0XHRcdC8vICY6aG92ZXIsXG5cdFx0XHQvLyAmOmZvY3VzIHtcblx0XHRcdC8vIFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0Ly8gXHRjb2xvcjogJHllbGxvdztcblxuXHRcdFx0Ly8gXHQmOmFmdGVyIHtcblx0XHRcdC8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblx0XHR9XG5cblx0XHQubW9yZS1saWxhYyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRsaWxhYztcblx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRsaWxhYztcblx0XHRcdH1cblx0XHRcdC8vICY6aG92ZXIsXG5cdFx0XHQvLyAmOmZvY3VzIHtcblx0XHRcdC8vIFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ly8gXHRjb2xvcjokbGlsYWM7XG5cblx0XHRcdC8vIFx0JjphZnRlciB7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ly8gXHR9XG5cdFx0XHQvLyB9XG5cdFx0fVxuXG5cdFx0Lm1vcmUtYmx1ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuXHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGJsdWU7XG5cdFx0XHR9XG5cdFx0XHQvLyAmOmhvdmVyLFxuXHRcdFx0Ly8gJjpmb2N1cyB7XG5cdFx0XHQvLyBcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdC8vIFx0Y29sb3I6JGJsdWU7XG5cblx0XHRcdC8vIFx0JjphZnRlciB7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ly8gXHR9XG5cdFx0XHQvLyB9XG5cdFx0fVxuXG5cdFx0Lm1vcmUtZ3JleSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRncmV5O1xuXHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JGdyZXk7XG5cdFx0XHR9XG5cdFx0XHQvLyAmOmhvdmVyLFxuXHRcdFx0Ly8gJjpmb2N1cyB7XG5cdFx0XHQvLyBcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdC8vIFx0Y29sb3I6JGdyZXk7XG5cblx0XHRcdC8vIFx0JjphZnRlciB7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ly8gXHR9XG5cdFx0XHQvLyB9XG5cdFx0fVxuXHR9XG5cblx0LnBsYXktYnV0dG9uIHtcblx0XHRAaW5jbHVkZSBjZW50ZXJlcig1NSUsIDUwJSk7XG5cdFx0QGluY2x1ZGUgaWNvbW9vbihwbGF5LWJ1dHRvbi1jaXJjbGUsIGFmdGVyKSB7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMTApO1xuXHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgwLjg1KTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsLCAkZmFzdC1hbmltKVxuXHRcdH1cblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXG5cdFxuIiwiLyotLS0tLS0tLSovXG4vKiBIRUFERVIgKi9cbi8qLS0tLS0tLS0qL1xuXG5cdC5oZWFkZXItY29udGFpbmVyIHtcblx0XHQvLyBib3JkZXI6M3B4IGRhc2hlZCByZWQ7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0dG9wOjA7XG5cdFx0bGVmdDowO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0ei1pbmRleDogMjAwMDtcblxuXHRcdC5sb2dvLXRvb2xzIHtcblx0XHRcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi10b3A6MjBweDtcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cblx0XHRcdC5sb2dvIHtcblx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwsICRmYXN0LWFuaW0pXG5cblx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuMSkpXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0d2lkdGg6NzAlO1xuXHRcdFx0XHRcdGhlaWdodDphdXRvO1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5tZW51LXNlYXJjaC1jb250YWluZXIge1xuXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjksIDg1LCA5NSwgMC41KTtcbiAgXHRcdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XG4gIFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0XHRcblx0XHRcdFx0Ly8gYm9yZGVyOjVweCBzb2xpZCByZWQ7XG5cdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKDUwJSwgNTAlLCBmYWxzZSwgdHJ1ZSlcblx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0XHRcdFx0XG5cblx0XHRcdFx0Lm1lbnUtaWNvbiB7XG5cdFx0XHRcdFx0Ly8gYm9yZGVyOjVweCBzb2xpZCBsaW1lO1xuXHRcdFx0XHRcdHBhZGRpbmc6MTBweCAwcHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXG5cdFx0XHRcdFx0d2lkdGg6MTEwcHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGNvbG9yOiR3aGl0ZTsgXG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuOCk7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGljb21vb24obWVudTIsIGFmdGVyKSAge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDUsIDApO1xuXHRcdFx0XHRcdFx0Y29sb3I6JHllbGxvdztcblx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOjUzJTtcblx0XHRcdFx0XHRcdHJpZ2h0OjBweDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5cblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGljb21vb24oY3Jvc3MsIGFmdGVyKSAge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMy44LCAwKTtcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fS8vbWVudS1pY29uXG5cblx0XHRcdFx0XG5cblx0XHRcdFx0LnNlYXJjaC1pY29uIHtcblx0XHRcdFx0XHQvLyBib3JkZXI6NXB4IHNvbGlkIHllbGxvdztcblx0XHRcdFx0XHRwYWRkaW5nOjEwcHggNXB4IDEwcHggMTBweDtcblxuXHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXG5cdFx0XHRcdFx0aGVpZ2h0OjEwMCU7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuNSk7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGljb21vb24obWFnLWdsYXNzLCBhZnRlciwgdHJ1ZSkge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0dG9wOjEycHg7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMywgMCk7XG5cdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5cblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1x0XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgaWNvbW9vbihjcm9zcywgYWZ0ZXIpICB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiR5ZWxsb3c7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLjgsIDApO1x0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9Ly9zZWFyY2gtaWNvblxuXG5cdFx0XHRcdFx0LmhvbWUtaWNvbiB7XG5cdFx0XHRcdFx0Ly8gYm9yZGVyOjVweCBzb2xpZCB5ZWxsb3c7XG5cdFx0XHRcdFx0cGFkZGluZzoxMHB4IDEwcHggMTBweCA1cHg7XG5cblx0XHRcdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblxuXHRcdFx0XHRcdGhlaWdodDoxMDAlO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjUpO1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBpY29tb29uKGhvbWUzLCBhZnRlciwgdHJ1ZSkge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0dG9wOjEycHg7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMywgMCk7XG5cdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5cblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1x0XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgaWNvbW9vbihjcm9zcywgYWZ0ZXIpICB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiR5ZWxsb3c7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzLjgsIDApO1x0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9Ly9ob21lLWljb25cblxuXHRcdFx0fS8vbWVudS1zZWFyY2gtY29udGFpbmVyXG5cblx0XHR9Ly9sb2dvIHRvb2xzXG5cdH1cblxuXG5cblx0LnNlYXJjaGJveC1jb250YWluZXIge1xuXHRcdFxuXHRcdC8vIGJvcmRlcjozcHggc29saWQgcmVkO1xuXG5cdFx0cGFkZGluZzoxNTBweCAwIDgwcHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZ3JleSwgMC43KTtcblxuXHRcdGRpc3BsYXk6bm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOjBweDtcblx0XHRsZWZ0OjA7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHR6LWluZGV4OiAxNTAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdCYuYWN0aXZlIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0fVxuXG5cdFx0Zm9ybSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdFx0d2lkdGg6OTUlO1xuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHR3aWR0aDo0MCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aW5wdXQge1xuXHRcdFx0d2lkdGg6MTAwJTsgXG5cdFx0XHRib3JkZXI6MDtcblx0XHRcdGJvcmRlci1yYWRpdXM6MDtcblx0XHRcdHBhZGRpbmc6MTVweDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6NTBweDtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjgsIDMpO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTo1cHggc29saWQgJGdyZXk7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdFx0bWF4LXdpZHRoOiRwYWdlLXdpZHRoO1xuXHRcdFx0XHRwYWRkaW5nOjE1cHggMjBweDtcblx0XHRcdFx0cGFkZGluZy1yaWdodDo1MHB4O1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMiwzLjIpO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuXHRcdFx0ICAgIHBhZGRpbmctdG9wOjVweDtcblx0XHRcdCAgICBmb250LXN0eWxlOml0YWxpYztcblx0XHRcdCAgICBjb2xvcjogJGxpZ2h0Z3JleTtcblx0XHRcdH1cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOjA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cblxuXHRcdC5zZWFyY2gtaWNvbiB7XG5cblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDowJTtcblx0XHRcdHJpZ2h0OjBweDtcblx0XHRcdGhlaWdodDoxMDAlO1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdHotaW5kZXg6IDEwMDA7XG5cdFx0XHRwYWRkaW5nOjFweCAxMHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBpY29tb29uKG1hZy1nbGFzcywgYWZ0ZXIsIHRydWUpIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRmb250LXNpemU6MzBweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6NDBweDtcblx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHR9XG5cblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokZ3JleTtcblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSIsIi8qLS0tLS0tLS0qL1xuLyogRk9PVEVSICovXG4vKi0tLS0tLS0tKi9cblxuXHQuanMgLnRvVG9wIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOjIwcHg7XG5cdFx0cmlnaHQ6MTVweDtcblx0XHR3aWR0aDo0MHB4O1xuXHRcdGhlaWdodDo0MHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdFx0Y29sb3I6JGdyZXk7XG5cblx0XHRAaW5jbHVkZSBpY29tb29uKGFycm93LXVwLCBhZnRlciwgdHJ1ZSkge1xuXHRcdFx0QGluY2x1ZGUgY2VudGVyZXIoKTtcblx0XHRcdG1hcmdpbi10b3A6LTRweDtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjgpO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRjb2xvcjokeWVsbG93O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHR0b3A6LTQwcHg7XG5cdFx0fVxuXHR9XG5cblx0Lm5vLWpzIC50b1RvcCB7XG5cdFx0ZGlzcGxheTpub25lO1xuXHR9XG5cblxuXHQuZm9vdGVyLWNvbnRhaW5lciB7XG5cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0cGFkZGluZy1ib3R0b206MzBweDtcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDo2MHB4O1xuXHRcdH1cblxuXHRcdFx0XHRcblx0XHQuZm9vdGVyLWNvbCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjQwcHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiAwcHgsICR1bnRpbDogbGFyZ2VwaG9uZSkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSwgJHVudGlsOiBkZXNrdG9wKSB7XG5cdFx0XHRcdHdpZHRoOiA0OSU7XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDJuKzEpIHtcblx0XHRcdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQudGl0bGUge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjAgMCAxMHB4O1xuXHRcdFx0Y29sb3I6JHllbGxvdztcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjEpO1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdHRleHQtYWxpZ246bGVmdDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRwLCBhIHtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjUpO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24ge1xuXHRcdFx0Zm9udC13ZWlnaHQ6JGJvbGQ7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS41KTtcblx0XHR9XG5cblx0XHQubm8tYnVsbGV0cyBhIHtcblx0XHRcdHBhZGRpbmc6M3B4IDA7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0fVxuXHR9XG5cblxuXHQuZm9vdGVyLW5ld3NsZXR0ZXItc2lnbnVwIHtcblxuXHRcdG1hcmdpbi1ib3R0b206MzBweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdGJvcmRlcjowO1xuXHRcdFx0cGFkZGluZzoxMHB4IDQxcHggMTBweCAxMHB4O1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXHRcdC5zaWduLXVwIHtcblx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjA7XG5cdFx0XHRyaWdodDowO1xuXHRcdFx0d2lkdGg6NDBweDtcblx0XHRcdGhlaWdodDoxMDAlO1xuXHRcdFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy1yaWdodCwgYWZ0ZXIsIHRydWUpIHtcblx0XHRcdFx0QGluY2x1ZGUgY2VudGVyZXIoKTtcblx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjA7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXI6YWZ0ZXIsXG5cdFx0XHQmOmZvY3VzOmFmdGVyIHtcblx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXHQuZm9vdGVyLW1haW4ge1x0XHRcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHRwYWRkaW5nLXRvcDoyMHB4O1xuXG5cdFx0LnByaW50ZXIsXG5cdFx0LnBpbnRlcmVzdCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cblxuXG5cdC8vIGZvb3RlciBzdWJcblx0LmZvb3Rlci1zdWIge1xuXG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQubG9nbyB7XHRcdFx0XG5cdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbjowIDAgMjBweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOjcwcHg7XG5cdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRsaSwgcCB7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luOjAgMTBweDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXG5cblx0XHRcdGxpIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS4zKTtcblxuXHRcdFx0XHRwYWRkaW5nOjNweCAwO1xuXHRcdFx0XHRcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICd8Jztcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Ly9sb2dvXG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHBhZGRpbmc6MCAxMHB4O1xuXHRcdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS4zKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQvLyBlbmQgZm9vdGVyIHN1YiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXHRGVUxMIFNDUkVFTiBCQU5ORVIgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXHQuZnVsbC1zY3JlZW4tYmFubmVyIHtcblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCYudGludCB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6XCJcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRyaWdodDowO1xuXHRcdFx0XHRib3R0b206MDtcblx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMylcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8vSG9tZXBhZ2UgbWFzdGhlYWQgY29udGFpbmVyXG5cdC5mdWxsLXNjcmVlbi1iYW5uZXItY29udGVudC1jb250YWluZXIge1xuXHRcdC8vIGJvcmRlcjozcHggc29saWQgbGltZTtcblx0XHR3aWR0aDogOTAlOyBcblx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHR9XG5cblx0Ly9jb250ZW50IHBhZ2UgbWFzdGhlYWQgY29udGFpbmVyXG5cdC5tYXN0aGVhZCB7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdH1cblxuXG5cdC5oZWFkZXItcHJvbW8tY29udGFpbmVyIHtcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRib3R0b206MjBweDtcblx0XHRyaWdodDowO1xuXHRcdHdpZHRoOjEwMHB4O1xuXHRcdGhlaWdodDoxMDBweDtcblx0XHRib3JkZXItcmFkaXVzOjUwMHB4O1xuXHRcdGJhY2tncm91bmQ6ICRyZWQ7XG5cblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRib3R0b206NDBweDtcblx0XHRcdHJpZ2h0OjIwcHg7XG5cdFx0XHR3aWR0aDoxNTBweDtcblx0XHRcdGhlaWdodDoxNTBweDtcblx0XHR9XG5cdFx0XG5cblx0XHQuaGVhZGVyLXByb21vLWNvbnRlbnQge1xuXHRcdFx0QGluY2x1ZGUgY2VudGVyZXIoKTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0Zm9udC1mYW1pbHk6JGZ1bnpvbmUtZm9udDtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMi41KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cblxuXHQuZnVsbC1zY3JlZW4tYmFubmVyLWNvbnRlbnQge1xuXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0XHRwYWRkaW5nLXRvcDoxNDBweDtcblx0XHRwYWRkaW5nLWJvdHRvbToyMHB4O1xuXHRcdC8vIGJvcmRlcjoycHggc29saWQgY3lhbjtcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbHBob25lKSB7XG5cdFx0ICAgIC8vIGJvcmRlcjoxMHB4IHNvbGlkIHJlZDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0Ly8gYm9yZGVyOjEwcHggc29saWQgbGltZTtcblx0XHQgICAgcGFkZGluZy10b3A6MTEwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSwgJGFuZDogJyhtaW4taGVpZ2h0OjUwMHB4KScpIHtcblx0XHRcdHBhZGRpbmctdG9wOjIyMHB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdC8vIGJvcmRlcjoxMHB4IHNvbGlkIHllbGxvdztcblx0XHQgICAgLy8gcGFkZGluZy10b3A6MTc1cHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0Ly8gYm9yZGVyOjEwcHggc29saWQgb3JhbmdlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3AsICRhbmQ6ICcobWluLWhlaWdodDo2MDBweCknKSB7XG5cdFx0XHQvLyBib3JkZXI6MTBweCBkYXNoZWQgb3JhbmdlO1xuXG5cdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0aGVpZ2h0OjEwMHZoO1xuXHRcdFx0cGFkZGluZy10b3A6MjAwcHg7XG5cdFx0fVxuXG5cdFx0Lm1hc3RoZWFkICYge1xuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHQvLyBib3JkZXI6MTBweCBzb2xpZCBibHVlO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDowcHg7XG5cdFx0XHRcdGhlaWdodDozNjBweDtcblx0XHRcdH1cblx0XHR9XG5cblxuXHRcdGgxIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0Zm9udC13ZWlnaHQ6JGxpZ2h0O1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0dGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCAjMDAwO1xuXG5cdFx0XHQubWFzdGhlYWQgJiB7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSwgJGFuZDogJyhtaW4taGVpZ2h0OjYwMHB4KScpIHtcblx0XHRcdCAgICBAaW5jbHVkZSBmb250LXNpemUoNiwgNik7XG5cdFx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdCAgICBAaW5jbHVkZSBmb250LXNpemUoNywgNyk7XG5cdFx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDsgXG5cdFx0XHR9XG5cblx0XHRcdC5tYXN0aGVhZCAmIHtcblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdFx0ICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg2LCA2KTtcblx0XHRcdFx0ICAgIHRleHQtYWxpZ246IGxlZnQ7IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICMwMDA7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHQgICAgQGluY2x1ZGUgZm9udC1zaXplKDIuNSwgMyk7XG5cdFx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHQgICAgQGluY2x1ZGUgZm9udC1zaXplKDMuNSwgNSk7XG5cdFx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDsgXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNjcm9sbERvd25JY29uIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdC8qYm90dG9tOjMwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDoyNXB4O1xuXHRcdFx0aGVpZ2h0OjgwcHg7XG5cdFx0XHRkaXNwbGF5Om5vbmU7Ki9cblx0XHRcdGxlZnQ6NTAlO1xuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wLCAkYW5kOiAnKG1pbi1oZWlnaHQ6NjUwcHgpJykge1xuXHRcdCAgICBcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR9XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0ICAgIFx0QGluY2x1ZGUgZm9udC1zaXplKDUsNSk7IFxuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdCAgICBcdEBpbmNsdWRlIGZvbnQtc2l6ZSg3LDcpOyBcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdFxuXG5cblx0ZGl2Lm1hc3RoZWFkIHtcblxuXHRcdGRpdi5mdWxsLXNjcmVlbi1iYW5uZXItY29udGVudCB7XG5cblx0XHRcdGgxLCAuc3VidGl0bGUgeyBcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDUwcHg7XG5cdFx0XHRcdHRleHQtc2hhZG93OiAwcHggMHB4IDE1cHggIzAwMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGgxIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMTAwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHRcblxuXHRkaXYuZGFydG1vb3Itc3Rvcnkge1xuXG5cdFx0ZGlzcGxheTpibG9jaztcblxuXHRcdGRpdi5mdWxsLXNjcmVlbi1iYW5uZXItY29udGVudCB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0cGFkZGluZy10b3A6MXB4O1xuXG5cdFx0XHRoMSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwOyBcblx0XHRcdFx0bWFyZ2luLXRvcDogMTI1cHg7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0fVxuXHRcdFx0LnN1YnRpdGxlIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMi4zKVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXG5cdC5mb290ZXItYmFubmVyLWNvbnRhaW5lciB7XG5cdFx0bWFyZ2luOjAgYXV0byA1MHB4O1xuXG5cdFx0LnRleHQtY29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0cGFkZGluZzoyMHB4O1xuXHRcdFx0aDIsIGgzLCBwIHtcblx0XHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHRoMiArIHAsXG5cdFx0XHRoMyArIHAge1xuXHRcdFx0XHRtYXJnaW4tdG9wOjIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6OTAlO1xuXHRcdFx0XG5cdFx0XHQudGV4dC1jb250YWluZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRncmV5LCAwLjkpO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTowO1xuXHRcdFx0XHRsZWZ0OjUwJTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6LTMwJTtcblx0XHRcdFx0d2lkdGg6NjAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXHQuZGFydG1vb3JTdG9yeSB7XG5cdFx0cGFkZGluZzozMHB4IDA7XHRcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRpbWcge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdG1hcmdpbjowIGF1dG8gMjBweDtcblxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgbXEoJHVudGlsOiBsYXJnZXBob25lKSB7IFxuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6YXV0bztcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXG5cdFx0XHRcdCYubGVmdCB7XG5cdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnJpZ2h0IHtcblx0XHRcdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblxuXHR9XG5cbi5ob21lLW1haW4taW1nIHtcblx0aGVpZ2h0OiA4NXZoO1xuXG5cdHAge1xuXHRcdHBhZGRpbmc6IDBweDtcblx0fVxufSIsIi8qLS0tLS0tLS0qL1xuLyogTElTVFMgICovXG4vKi0tLS0tLS0tKi9cblxuXHQuY3RhLWNvbnRhaW5lciB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdGxpIHtcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTozMHB4O1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFxuXHRcdFx0LmltYWdlLWJsb2NrIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0d2lkdGg6MTIwcHg7XG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDoyMHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdG1heC13aWR0aDoxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC50ZXh0LWJsb2NrIHtcblx0XHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTozcHg7XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5vcmdhbmlzYXRpb24tZW1haWwsXG5cdFx0XHRcdC5vcmdhbmlzYXRpb24td2Vic2l0ZSxcblx0XHRcdFx0Lm9yZ2FuaXNhdGlvbi1waG9uZS1udW1iZXIge1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OjcwMDtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG5cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OjUwMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcblxuXHRcdFx0XHRcdCYubW9yZSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6MjBweDtcblx0XHRcdFx0XHRcdGNvbG9yOiRibGFjaztcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBpY29tb29uKGFycm93LXJpZ2h0LCBhZnRlcikge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDotMnB4O1xuXHRcdFx0XHRcdFx0XHRyaWdodDowO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDo1cHg7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6NHB4O1xuXHRcdFx0XHRcdFx0fSBcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSBcblxuXG5cdHVsLnRhZ3Mge1xuXHRcdG1hcmdpbjo1cHggMCAwO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjowIDhweCA4cHggMDtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFxuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0Y29sb3I6JGdyZXk7ICBcblx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuNCk7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXHRcdFx0XHRwYWRkaW5nOjVweCAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblx0XHRcdFx0Ym9yZGVyOjFweCBzb2xpZCAkYmxhY2s7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6ICRyYWQvNTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cblx0Lm5vLWJ1bGxldHMge1x0XHRcdFxuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRsaXN0LXN0eWxlOm5vbmU7IFxuXHRcdFxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0bGlzdC1zdHlsZTpub25lOyBcblx0XHR9XG5cdH1cblxuXG5cdC5hcnJvd3MtYWZ0ZXIge1xuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0cGFkZGluZzoxMHB4IDA7XG5cdFx0XHRcdGNvbG9yOiR0ZWFsO1xuXHRcdFx0XHRAaW5jbHVkZSBpY29tb29uKGFycm93LXJpZ2h0LCBhZnRlcilcblx0XHRcdFx0e1xuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjIpO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuIiwiLyotLS0tLS0tLS0tLS0qL1xuLyogTU9CSUxFIE5BViAqL1xuLyotLS0tLS0tLS0tLS0qL1xuXG5cdC5tb2JpbGVOYXYge1xuXHRcdFx0XG5cdFx0Ly8gZGlzcGxheTogYmxvY2s7XG5cblx0XHQvLyBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdC8vIFx0ZGlzcGxheTogbm9uZTtcblx0XHQvLyB9XG5cblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHotaW5kZXg6IDUwMDtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAkZmFzdC1hbmltKTtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0cGFkZGluZzogMTIwcHggMCAzMHB4O1xuXG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApKTsgIC8vcG9zaXRpb24gaXQgb2Zmc2NyZWVuXG5cdFx0XG5cdFx0Ji5hY3RpdmUge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDAsIDAsIDApICFpbXBvcnRhbnQpOyAgLy9tb3ZlIGludG8gdmlldyB3aGVuIGl0J3MgYWN0aXZlXG5cdFx0fVxuXHRcdFxuXHRcdC8vIGx0LWllOSBvdmVycmlkZSAtIGRvbid0IGV2ZXIgc2hvd1xuXHRcdC5pZTkgJixcblx0XHQubHQtaWU5ICYge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKG5vbmUgIWltcG9ydGFudCk7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXG5cblxuXHRcdC8vbGkncyB0aGF0IGhhdmUgY2hpbGRyZW4gZ2VuZXJpY1xuXHRcdC5oYXMtY2hpbGRyZW4ge1xuXHRcdFx0XG5cdFx0XHQvLyBhcHBseSB0byBkaXJlY3QgbmF2IG5hbWVcblx0XHRcdD4gLm5hdi1uYW1lIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0Y29sb3I6ICR5ZWxsb3c7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGljb21vb24oYXJyb3ctZG93biwgYWZ0ZXIpXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0cmlnaHQ6IDEwcHg7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTEzcHg7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuOCk7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdGNvbG9yOiAkeWVsbG93O1xuXHRcdFx0XHR9XG5cdFx0XHR9XHRcdFx0XG5cdFx0XHRcblx0XHRcdC8vIHdoZW4gb3BlbiBsb2FkIGFycm93IHVwXG5cdFx0XHQmLmFjdGl2ZSA+IC5uYXYtbmFtZSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBpY29tb29uKGFycm93LXVwLCBhZnRlcik7XG5cdFx0XHR9XG5cdFx0XG5cdFx0fSAvL2hhcy1jaGlsZHJlblxuXG5cblxuXHRcdC8vIGluZGVudCBjaGlsZCB1bCdzIGZvciBzaWRlICYgbW9iaWxlIG5hdlxuXHRcdC5zdWJuYXYtY29udGVudHMge1xuXHRcdFx0XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjp3aGl0ZTtcblx0XHRcdH1cblxuXHRcdFx0Lmhhcy1jaGlsZHJlbiB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOndoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9IC8vc3VibmF2LWNvbnRlbnRzXG5cblx0fSAvL21vYmlsZU5hdiIsIi8qLS0tLS0tLS0tLS0tLSovXG4vKlx0TkFWSUdBVElPTiAqL1xuLyotLS0tLS0tLS0tLS0tKi9cblxuJHN1Yk5hdlBhZGRpbmc6IDQwcHg7XG4kc3ViTmF2RGFya2VuOiA1O1xuXG4ucHJpbWFyeS1uYXYtY29udGFpbmVyIHtcblxuXHQvL1RPUCBMRVZFTCBcblx0LnRvcC1sZXZlbC1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLXRvcDoxMzBweDtcblxuXHRcdC50b3AtbGV2ZWwtYmFja2dyb3VuZCB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDowO1xuXHRcdFx0cmlnaHQ6MDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHR3aWR0aDo5MCU7XG5cdFx0XHR9XG5cdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdH1cblxuXHRcdC50b3AtbGV2ZWwtYmFja2dyb3VuZC10cmlhbmdsZSB7XG5cdFx0XHRcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR9XG5cblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0dG9wOi01MCU7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHR3aWR0aDoxMCU7XG5cdFx0XHRoZWlnaHQ6MTUwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgxMGRlZykpO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbigwJSAxMDAlKTtcblx0XHR9XG5cdH0gIC8vLnRvcC1sZXZlbC1jb250YWluZXJcblxuXG5cblx0Ly9CT1RUT00gTEVWRUxcblx0LmJvdHRvbS1sZXZlbC1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0cGFkZGluZy1ib3R0b206MTAwcHg7XG5cdFx0fVxuXG5cdFx0LmJvdHRvbS1sZXZlbC1iYWNrZ3JvdW5kIHtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0dG9wOjA7XG5cdFx0XHRyaWdodDowO1xuXHRcdFx0XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdFx0d2lkdGg6NjAlO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdH1cblx0XHRcblx0XHQuYm90dG9tLWxldmVsLWJhY2tncm91bmQtdHJpYW5nbGUge1xuXG5cdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDowO1xuXHRcdFx0bGVmdDowJTtcblx0XHRcdHdpZHRoOjUwJTtcblx0XHRcdGhlaWdodDo1MDAlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC02NWRlZykpO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbigwJSAwJSk7XG5cdFx0fVxuXHR9ICAvLy5ib3R0b20tbGV2ZWwtY29udGFpbmVyXG5cblxuXG5cdC8vU2hvdyB0aGUgdGhlIDFzdCBsZXZlbCBuYXYgYW5kIGl0cyAxc3QgbGV2ZWwgY2hpbGRyZW5cblx0I21haW4tbWVudSAge1xuXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XHRcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdHdpZHRoOjkwJTtcblx0XHRcdG1hcmdpbi1ib3R0b206NTBweDtcblx0XHR9XG5cdFx0XG5cdFx0YSwgLmJhY2stbGluayB7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS42MCk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmc6MTVweDtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgcmVkO1xuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MDtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuXHRcdH1cblxuXHRcdGxpLm1lbnUtcGFyZW50LWxpbmsgPiBhIHtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjMpO1x0XHRcdFx0XHRcdFxuXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUhaW1wb3J0YW50O1x0XG5cdFx0XHR9XG5cdFx0fSBcblxuXHRcdC8vaGlkZSBhbGwgdGhlIHN1YiBuYXZzLCB3ZSB3YW50IHRvIGNvbnRyb2wgdGhlaXIgYXBwZWFyYW5jZVxuXHRcdC5zdWJuYXYtY29udGVudHMge1xuXHRcdFx0Ly9kaXNwbGF5Om5vbmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IC0xMDAlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogbGVmdCAuMjVzIGVhc2UtaW4tb3V0O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAkc3ViTmF2UGFkZGluZztcblxuXHRcdFx0Ji5tZW51LWV4cGFuZGVkIHtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0QGV4dGVuZCAuaGlnaGVzdFo7XG5cdFx0XHR9XG5cblx0XHRcdD4gLm1lbnUtYmFjayB7XG4gICAgICAgICAgICBcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZ3JleSwgJHN1Yk5hdkRhcmtlbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmJhY2stYmFyIHtcbiAgICAgICAgICAgIFx0d2lkdGg6ICRzdWJOYXZQYWRkaW5nO1xuICAgICAgICAgICAgXHRoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIFx0dG9wOiAwO1xuICAgICAgICAgICAgXHRyaWdodDogMDtcbiAgICAgICAgICAgIFx0Ym94LXNoYWRvdzogMnB4IDFweCAzcHggMCByZ2JhKDAsMCwwLC40KTtcblxuICAgICAgICAgICAgXHRAaW5jbHVkZSBpY29tb29uKGFycm93LWxlZnQsIGJlZm9yZSl7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDo1cHg7XG5cdFx0XHRcdFx0bGVmdDowcHg7XG5cdFx0XHRcdFx0d2lkdGg6NDBweDtcblx0XHRcdFx0XHRoZWlnaHQ6NDBweDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0XHR6LWluZGV4Ojk5OTk7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjIwcHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6NDBweDtcblx0XHRcdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlOyBcblx0XHRcdFx0fVxuXG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgICAgIFx0Lm1lbnUtYmFjayB7XG4gICAgICAgICAgICBcdFx0ZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIFx0fVxuICAgICAgICAgICAgfVxuXG5cdFx0XHQvLyBOZXN0ZWQgbG9vcCB0byBpbmNyZW1lbnQgc3ViIG1lbnUgcGFkZGluZ1xuXHRcdFx0JHNlbDogJyc7XG5cdFx0ICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggNSB7XG5cdFx0ICAgICAgICAkc2VsOiBpZigkaSA9PSAyLCAnLnN1Ym5hdi1jb250ZW50cycsIHNlbGVjdG9yLW5lc3QoJHNlbCwgJy5zdWJuYXYtY29udGVudHMnKSk7IFxuXG5cdFx0ICAgICAgICAjeyRzZWx9IHtcblx0XHQgICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6ICRzdWJOYXZQYWRkaW5nICogJGk7XG5cblx0XHQgICAgICAgICAgICA+IC5tZW51LWJhY2sge1xuXHRcdCAgICAgICAgICAgIFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRncmV5LCAkc3ViTmF2RGFya2VuKiRpKTtcblx0XHQgICAgICAgICAgICB9XG5cdFx0ICAgICAgICB9XG5cdFx0ICAgIH1cblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcblxuXG5cdFx0XHRcdCYubWVudS1leHBhbmRlZCB7XG5cdFx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY3VycmVudCBhIHtcblx0XHRcdFx0QGluY2x1ZGUgbXEoJHVudGlsOiBkZXNrdG9wKSB7IFxuXHRcdFx0XHRcdGNvbG9yOiRncmV5O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Lm1lbnUtcGFyZW50LWxpbmsge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCR1bnRpbDogZGVza3RvcCkgeyBcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cblx0XHR9XG5cdFx0XG5cdFx0PiB1bCB7ICAvL3ZlcnkgdG9wIGxldmVsIFVMXG5cdFx0XHRcblx0XHRcdD4gLmhhcy1jaGlsZHJlbiA+IC5zdWJuYXYtY29udGVudHMge1xuXHRcdFx0XHQvL3RvcDogMDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0bGkge1xuXHRcdFx0XHRcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cblx0XHRcdH1cblx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgbGltZTtcblx0XHRcdFxuXHRcdFx0PiBsaSB7XG5cdFx0XHRcdFxuXHRcdFx0XHQvLyBib3JkZXI6MXB4IHNvbGlkIHJlZDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOjE4JTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDoyLjUlO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6MDtcblx0XHRcdFx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgeWVsbG93XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblxuXHRcdFx0XHQ+IC5uYXYtbmFtZSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRsaWdodDtcblx0XHRcdFx0XHQvLyBiYWNrZ3JvdW5kOmJsYWNrO1xuXG5cdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRjb2xvcjokeWVsbG93O1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDIuMyk7XHRcdFx0XHRcdFx0XG5cblx0XHRcdFx0XHRcdCY6Zm9jdXMsXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSFpbXBvcnRhbnQ7XHRcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmN1cnJlbnQgYSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IGRlc2t0b3ApIHsgXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiAuc3VibmF2LWNvbnRlbnRzIHtcblx0XHRcdFx0XHQubmF2LW5hbWU6YmVmb3JlIHtcblx0XHRcdFx0XHRcdHRvcDo0cHg7XG5cdFx0XHRcdFx0XHRyaWdodDogMi41JTtcblx0XHRcdFx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgbGltZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9IC8vI21haW4tbWVudVxuXG5cblxuXHQvL2FsbCBMSSdzIHRoYXQgaGF2ZSBjaGlsZHJlblxuXHQuaGFzLWNoaWxkcmVuIHtcblx0XHRcblxuXHRcdC8vIGFwcGx5IHRvIGRpcmVjdCBuYXYgbmFtZVxuXHRcdD4gLm5hdi1uYW1lIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG92ZXJmbG93OmhpZGRlbjtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRcblx0XHRcdC8vU2hvdyArLy0gYXQgZGVza3RvcFxuXHRcdFx0QGluY2x1ZGUgaWNvbW9vbihwbHVzLCBiZWZvcmUpXG5cdFx0XHR7XG5cdFx0XHRcdGJvcmRlcjoxcHggc29saWQgd2hpdGU7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6M3B4O1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDoxMHB4O1xuXHRcdFx0XHRyaWdodDoyLjUlO1xuXHRcdFx0XHR3aWR0aDo0MHB4O1xuXHRcdFx0XHRoZWlnaHQ6NDBweDtcblx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdHotaW5kZXg6OTk5OTtcblx0XHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjQwcHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdH1cblxuXHRcdFx0Ji5jdXJyZW50OmJlZm9yZSB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkZ3JleTtcblx0XHRcdH1cblxuXG5cdFx0fVxuXG5cdFx0XG5cdFx0Ly8gd2hlbiBzdWIgbmF2IGlzIGV4cGFuZGVkXG5cdFx0Ji5hY3RpdmUgPiAubmF2LW5hbWUge1xuXHRcdFx0XHRcblx0XHRcdEBpbmNsdWRlIGljb21vb24obWludXMsIGJlZm9yZSlcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjQwcHg7XG5cdFx0XHRcdH1cblx0XHR9XG5cdFxuXHR9IC8vaGFzLWNoaWxkcmVuXG5cblxuXHQua2VlcC1pbi10b3VjaC1jb250YWluZXIge1xuXG5cdFx0cGFkZGluZzoyMHB4IDA7XG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0Y29sb3I6JHdoaXRlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdGJvcmRlci10b3A6MXB4IHNvbGlkICRsaWdodGdyZXk7XG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHRncmV5O1xuXHRcdFx0fVxuXHRcdFx0cGFkZGluZzoyMHB4IDMwcHg7XG5cdFx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdHdpZHRoOjkwJTtcblx0XHR9XG5cblx0XHRcblx0XHQuc29jaWFsLWNvbnRhaW5lciB7XG5cdFx0XHQvLyBib3JkZXI6MXB4IHNvbGlkIHJlZDtcblx0XHRcdG1hcmdpbi1ib3R0b206MjBweDtcblx0XHRcdFxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHR9XG5cblx0XHRcdHAge1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTo1cHg7XG5cdFx0XHR9XG5cblx0XHRcdHVsIHtcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRcdFxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0gIC8vLnNvY2lhbC1jb250YWluZXJcblxuXG5cdFx0XG5cdFx0Lm5ld3NsZXR0ZXItY29udGFpbmVyIHtcblxuXHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXG5cdFx0XHRwIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206NXB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRcblx0XHRcdFx0ZmxvYXQ6cmlnaHQ7XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6MTBweDtcblx0XHRcdFx0XHRwYWRkaW5nOjA7IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblxuXHRcdFx0LmhlYWRlci1uZXdzbGV0dGVyLXNpZ251cCB7XG5cblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcblx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRcdFx0XHRcdGJvcmRlcjowO1xuXHRcdFx0XHRcdG1hcmdpbjowO1xuXHRcdFx0XHRcdHBhZGRpbmc6MTBweCA1MHB4IDEwcHggMTBweDtcblx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNpZ24tdXAge1xuXHRcdFx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0XHRyaWdodDowO1xuXHRcdFx0XHRcdHdpZHRoOjQwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OjEwMCU7XG5cdFx0XHRcdFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy1yaWdodCwgYWZ0ZXIsIHRydWUpIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cdFx0XHRcdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjA7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3ZlcjphZnRlcixcblx0XHRcdFx0XHQmOmZvY3VzOmFmdGVyIHtcblx0XHRcdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gIC8vLnNpZ24tdXBcblxuXHRcdFx0fSAgLy8uaGVhZGVyLW5ld3NsZXR0ZXItc2lnbnVwXG5cdFx0XG5cdFx0fSAgLy8ubmV3c2xldHRlci1jb250YWluZXJcblx0XG5cdH0gIC8vLmtlZXAtaW4tdG91Y2gtY29udGFpbmVyXG5cblxuXG59ICAvLy5wcmltYXJ5LW5hdi1jb250YWluZXJcblxuXG4uanMgLnByaW1hcnktbmF2LWNvbnRhaW5lciB7XG5cblx0ZGlzcGxheTpub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdHotaW5kZXg6IDE1MDA7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtICRmYXN0LWFuaW0pO1xuXHRvdmVyZmxvdzpoaWRkZW47XG5cdHBhZGRpbmc6MDtcblxuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkpOyAgLy9wb3NpdGlvbiBpdCBvZmZzY3JlZW5cblxuXHQmLnNob3cge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdH1cblx0Ji5hY3RpdmUge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwLCAwLCAwKSAhaW1wb3J0YW50KTsgIC8vbW92ZSBpbnRvIHZpZXcgd2hlbiBpdCdzIGFjdGl2ZVxuXHR9XG5cdFxuXHQvLyBsdC1pZTkgb3ZlcnJpZGUgLSBkb24ndCBldmVyIHNob3dcblx0LmllOSAmLFxuXHQubHQtaWU5ICYge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybShub25lICFpbXBvcnRhbnQpO1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG4ubm8tanMgLnByaW1hcnktbmF2LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6YmxvY2tcbn0iLCIvKi0tLS0tLS0tLS0tLS0qL1xuLypcdE5BVklHQVRJT04gKi9cbi8qLS0tLS0tLS0tLS0tLSovXG5cbi5sZWZ0LW1lbnUtY29udGFpbmVyIHtcblxuXHRoMiB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzowO1xuXHRcdGNvbG9yOiR3aGl0ZTtcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuOSk7IFxuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0cGFkZGluZzo4cHggMFxuXHRcdH1cblx0fVxuXG5cdC8vU2hvdyB0aGUgdGhlIDFzdCBsZXZlbCBuYXYgYW5kIGl0cyAxc3QgbGV2ZWwgY2hpbGRyZW5cblx0I2xlZnQtbWVudSAge1xuXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGdyZWVuO1xuXHRcdGJvcmRlcjowcHg7XHRcblx0XHRcblx0XHRhIHtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjQ1KTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZzoxNXB4IDEwcHggMTVweCA1MHB4O1xuXHRcdFx0Y29sb3I6JGdyZWVuO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRib2xkO1xuXHRcdH1cblxuXHRcdC8vaGlkZSBhbGwgdGhlIHN1YiBuYXZzLCB3ZSB3YW50IHRvIGNvbnRyb2wgdGhlaXIgYXBwZWFyYW5jZVxuXHRcdC5zdWJuYXYtY29udGVudHMge1xuXG5cdFx0XHQuc3VibmF2LWNvbnRlbnRzIHtcblx0XHRcdFx0ZGlzcGxheTpub25lO1xuXG5cdFx0XHRcdC8vM3JkIGxldmVsXG5cdFx0XHRcdC5uYXYtbmFtZSB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XG5cblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHR0b3A6N3B4O1xuXHRcdFx0XHRcdFx0bGVmdDozNXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGNvbG9yOiRibGFjaztcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkcmVndWxhcjtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOjEycHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbToxMnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5zdWJuYXYtY29udGVudHMge1xuXG5cdFx0XHRcdFx0Ly80dGggbGV2ZWxcblx0XHRcdFx0XHQubmF2LW5hbWUge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjQ1cHg7XG5cblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bGVmdDo1NXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5zdWJuYXYtY29udGVudHMge1xuXG5cdFx0XHRcdFx0XHQvLzV0aCBsZXZlbFxuXHRcdFx0XHRcdFx0Lm5hdi1uYW1lIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjYwcHg7XG5cblx0XHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6NzBweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdFxuXHRcdD4gdWwgeyAgLy92ZXJ5IHRvcCBsZXZlbCBVTFxuXG5cdFx0XHQvLyBib3JkZXI6MXB4IHNvbGlkIGxpbWU7XG5cdFx0XHRcblx0XHRcdD4gbGkge1xuXHRcdFx0XHRcblx0XHRcdFx0Ly8gYm9yZGVyOjFweCBzb2xpZCByZWQ7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNjY2M7XG5cblxuXHRcdFx0XHQ+IC5uYXYtbmFtZSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XG5cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuNyk7XG5cblx0XHRcdFx0XHRcdCY6Zm9jdXMsXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmN1cnJlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdC8vYm9yZGVyOjFweCBzb2xpZCAkd2hpdGU7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHR9XG5cdFx0XHRhIHtcblx0XHRcdFx0Y29sb3I6JHdoaXRlIWltcG9ydGFudDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6JGJvbGQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0XG5cblx0Ly9hbGwgTEkncyB0aGF0IGhhdmUgY2hpbGRyZW5cblx0Lmhhcy1jaGlsZHJlbiB7XG5cdFx0XG5cdFx0Ly8gYXBwbHkgdG8gZGlyZWN0IG5hdiBuYW1lXG5cdFx0PiAubmF2LW5hbWUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXHRcdFx0XG5cdFx0XHQvL1Nob3cgKy8tIGF0IGRlc2t0b3Bcblx0XHRcdEBpbmNsdWRlIGljb21vb24ocGx1cywgYmVmb3JlKVxuXHRcdFx0e1xuXHRcdFx0XHQvL2JvcmRlcjoxcHggc29saWQgJGdyZWVuO1xuXHRcdFx0XHQvL2JvcmRlci1yYWRpdXM6M3B4O1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDoxMnB4O1xuXHRcdFx0XHRsZWZ0OjEwcHg7XG5cdFx0XHRcdHdpZHRoOjI1cHg7XG5cdFx0XHRcdGhlaWdodDoyNXB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdHotaW5kZXg6MTAwMDtcblx0XHRcdFx0Zm9udC1zaXplOjI1cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjI1cHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0Y29sb3I6ICRncmVlbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRcblx0XHQvLyB3aGVuIHN1YiBuYXYgaXMgZXhwYW5kZWRcblx0XHQmLmFjdGl2ZSA+IC5uYXYtbmFtZSB7XG5cdFx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgaWNvbW9vbihtaW51cywgYmVmb3JlKVxuXHRcdFx0e1xuXHRcdFx0XHRmb250LXNpemU6MjVweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6MjVweDtcblx0XHRcdH1cblxuXHRcdH1cblx0XG5cdH0gLy9oYXMtY2hpbGRyZW5cblxuXG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLSovXG4vKlx0UEFHRSBUT09MUyAqL1xuLyotLS0tLS0tLS0tLS0tKi9cblxuLmRhcnRtb29yLWF0dHJhY3Rpb24tZmlsdGVyIHtcblx0d2lkdGg6MTAwJTtcblx0bWFyZ2luOjAgYXV0bztcblx0cGFkZGluZzowO1xuXHRsaXN0LXN0eWxlOm5vbmU7XG5cblx0bGkge1xuXHRcdHBhZGRpbmctcmlnaHQ6MzBweDtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRhIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDoxcHggc29saWQgJGdyZXk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0cGFkZGluZzoxMHB4IDEwcHg7XG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkICRncmV5O1xuXHRcdFx0Ym9yZGVyLXRvcDowO1xuXHRcdFx0Y29sb3I6JGdyZXk7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRjb250ZW50OlwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRyaWdodDoxN3B4O1xuXHRcdFx0XHR3aWR0aDo0MHB4O1xuXHRcdFx0XHRoZWlnaHQ6NDBweDtcblx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbig1MCUgNTAlKTtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyxcblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyotLS0tLS0tLS0tLS0tKi9cbi8qXHRQQUdJTkFUSU9OICovXG4vKi0tLS0tLS0tLS0tLS0qL1xuXG5cdC8qIFBhZ2luYXRpb24gRmlsdGVyIENvbnRhaW5lciAqL1xuXHRcdC5wYWdpbmF0aW9uLWZpbHRlci1jb250YWluZXIge1xuXHRcdFx0XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjsgXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkbm9ybWFsLXBhZGQ7XG5cdFx0XHRcblxuXHRcdFx0Ly9cblx0XHRcdC8vIDwgMSB8IDIgfCAzIHwgNCA+XG5cdFx0XHQvL1xuXHRcdFx0LnBhZ2luYXRpb24ge1xuXHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDsgXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbjowcHg7XG5cdFx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR3aWR0aDozMHB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OjMwcHg7IFxuXHRcdFx0XHRcdFx0cGFkZGluZzo1cHg7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0XHRcdFx0XHRjb2xvcjokYmxhY2s7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cblxuXHRcdFx0XHRcdFx0Ly9QcmV2IC8gTmV4dCBhcnJvd3Ncblx0XHRcdFx0XHRcdCYucHJldixcblx0XHRcdFx0XHRcdCYubmV4dCB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOjVweCAxNXB4O1xuXHRcdFx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6JGJsYWNrO1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ji5wcmV2IHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy1sZWZ0LCBiZWZvcmUsIHRydWUpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0Ji5uZXh0IHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgaWNvbW9vbihhcnJvdy1yaWdodCwgYmVmb3JlLCB0cnVlKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jjpmb2N1cyxcblx0XHRcdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0fVx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0JjpmaXJzdC1jaGlsZCBhLFxuXHRcdFx0XHRcdCY6bnRoLWxhc3QtY2hpbGQoLW4rMikgYSB7XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Ym9yZGVyOjA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XHRcdFxuXHRcdH0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXHRTRUFSQ0ggUkVTVUxUUyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLSovXG5cblx0LnNlYXJjaC1yZXN1bHRzLXN1bW1hcnkge1xuXHRcdHBhZGRpbmc6IDI1cHggMDtcblx0XHRtYXJnaW4tdG9wOiAkbm9ybWFsLXBhZGQ7XG5cdH1cblx0LnNlYXJjaC1yZXN1bHRzIHtcblx0XHRtYXJnaW4tYm90dG9tOjIwcHg7XG5cdFx0cGFkZGluZzowO1xuXHRcdFxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjoxNXB4IDAgMDtcblx0XHRcdHBhZGRpbmc6MTVweCAwIDA7XG5cdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGJsYWNrO1xuXHRcdFx0XG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucmVzdWx0X190aXRsZSB7XG5cdFx0bWFyZ2luOjA7XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHR9XG5cdH1cblxuXHQucmVzdWx0X19zdW1tYXJ5IHtcblx0bWFyZ2luOjA7XG5cdHBhZGRpbmctYm90dG9tOjdweDtcblx0fVxuXG5cdC5yZXN1bHRfX2xpbmsge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XG5cdH0iLCIvKi0tLS0tLS0tLS0tLSovXG4vKlx0U1BPVExJR0hUICovXG4vKi0tLS0tLS0tLS0tLSovXG5cblx0Ly9UcmFkaXRpb25hbCBzcG90bGlnaHQgd2l0aCBpbWFnZSBhdCB0aGUgdG9wLCB0ZXh0IGNvbnRhaW5lciB1bmRlcm5lYXRoLCBjb3VsZCBiZSBzaWRlIGJ5IHNpZGVcblx0LnNwb3RsaWdodC1jb250YWluZXIge1xuXG5cdFx0LnNwb3RsaWdodCB7XG5cdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdG1hcmdpbi1ib3R0b206MjBweDtcblx0XHRcdFx0XG5cdFx0XHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHRcdFx0XG5cdFx0XHRcdGltZyAge1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OmF1dG87IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50ZXh0LWNvbnRhaW5lciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXHRcdFx0XHRwYWRkaW5nOiRtb2JpbGUtcGFkZDtcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQudGl0bGUge1xuXHRcdFx0XHRcdG1hcmdpbjowO1xuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOjIwcHg7XG5cdFx0XHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDIuMSk7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6JHJlZ3VsYXI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdFx0XHRmb250LXdlaWdodDokcmVndWxhcjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5tb3JlIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS44KTtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjIwcHg7XG5cdFx0XHRcdFx0Y29sb3I6JGJsYWNrO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiRyZWd1bGFyO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGljb21vb24oYXJyb3ctcmlnaHQsIGFmdGVyKSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR0b3A6LTJweDtcblx0XHRcdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDo1cHg7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjRweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fS8vdGV4dC1jb250YWluZXJcblx0XHRcdFxuXHRcdFx0YSB7XG5cdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQudGV4dC1jb250YWluZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG5cdFx0XHRcdFx0XHQudGl0bGUge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0Lm1vcmUge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9Ly9hXG5cdFx0XG5cdFx0fS8vc3BvdGxpZ2h0XG5cblx0fS8vc3BvdGxpZ2h0IGNvbnRhaW5lclxuXG5cblxuXG5cblx0Ly9EYXJ0bW9vciBzdG9yeSBzcG90bGlnaHRcblx0LnN0b3J5LWNvbnRhaW5lciB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0XHRtYXJnaW46NDBweCAwO1xuXG5cdFx0YTpob3ZlciB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LnNwb3RsaWdodC1zdG9yeSB7XG5cdFx0bWFyZ2luLWJvdHRvbTo1MHB4O1x0XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0aDIge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjdweCAwO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOi0yMHB4O1xuXHRcdFx0bGVmdDo1MCU7XG5cdFx0XHRtYXJnaW4tbGVmdDotNDUlO1xuXHRcdFx0d2lkdGg6OTAlO1xuXHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuOSk7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0fVxuXHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0aW1nICB7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYm90dG9tLWNvbnRhaW5lciB7XG5cdFx0XHRib3JkZXI6MnB4IHNvbGlkICRncmV5O1xuXHRcdFx0Ym9yZGVyLXRvcDowO1xuXHRcdFx0cGFkZGluZzo0cHg7XG5cdFx0XHQudGV4dC1jb250YWluZXIge1xuXHRcdFx0XHRwYWRkaW5nOjIwcHggMjBweCAwO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHQuaWNvbi1jb250YWluZXIge1xuXHRcdFx0XHRcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdG1hcmdpbjowO1xuXHRcdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0XHRmb250LXdlaWdodDokYm9sZDtcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS43KTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnN0b3J5LWljb25zIHtcblx0XHRcdFx0XHRtYXJnaW46MjBweCBhdXRvO1xuXHRcdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0XHRcdGJvcmRlci1jb2xsYXBzZTogc2VwZXJhdGU7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDEuMik7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cblx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOjgwcHg7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6ODBweDtcblx0XHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjoycHggc29saWQgd2hpdGU7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsLCAkZmFzdC1hbmltKTtcblxuXHRcdFx0XHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6MnB4IHNvbGlkICRibGFjaztcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW5mby1wYW5lbCB7XG5cdFx0XHRcdHBhZGRpbmc6MTBweCAzMHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0bWFyZ2luOjAgMCA3cHg7XG5cdFx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDokYm9sZDtcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS41KTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdH1cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjQ1KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tXG5cdC8vQW5nbGVkIFNwb3RsaWdodHNcblx0Ly8tLS0tLS0tLS0tLS0tLS0tLVxuXHRcblx0XHQvL0Jhc2UgU3R5bGVzXG5cdFx0XHQuc3BvdGxpZ2h0LWZ1bGwtd2lkdGgge1xuXHRcdFx0XHRvdmVyZmxvdzpoaWRkZW47XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7IFxuXHRcdFx0XHQvLyBib3JkZXI6M3B4IHNvbGlkIHJlZDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0XHRcdHdpZHRoOjc1JTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdFx0XHR3aWR0aDo1MCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cblx0XHRcdFx0Ji5zcG90bGlnaHQtaW50ZXJuYWwge1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHRcdHdpZHRoOjc1JTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuXHRcdFx0XHRcdFx0d2lkdGg6NjAlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0fVxuXG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRcdFx0d2lkdGg6NzUlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZWRlc2t0b3ApIHtcblx0XHRcdFx0XHRcdHdpZHRoOjYwJTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYmFja2dyb3VuZCB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0XHRcdFx0XHQvLyBib3JkZXI6NnB4IHNvbGlkIGxpbWU7XG5cblx0XHRcdFx0XHQuaW50ZXJuYWwge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyAvL2ZpeGVzIHotaW5kZXggaXNzdWVzXG5cdFx0XHRcdFx0XHRwYWRkaW5nOjFweCAyMHB4IDMwcHg7XG5cdFx0XHRcdFx0XHQvLyBib3JkZXI6M3B4IHNvbGlkIGN5YW47XG5cdFx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuXHRcdFx0XHRcdFx0XHQvLyB3aWR0aDo0MDBweDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6JGxpZ2h0O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC50cmlhbmdsZSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6MTUwJTtcblx0XHRcdFx0XHRcdHdpZHRoOjI1MHB4O1xuXHRcdFx0XHRcdFx0Ly8gYm9yZGVyOjNweCBzb2xpZCBibGFjaztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0XG5cblx0XHQvL1Nwb3RsaWdodCBvbiB0aGUgTEVGVFxuXHRcdFx0LnNwb3RsaWdodC1mdWxsLXdpZHRoLWxlZnQge1xuXG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjE1MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTkwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC5iYWNrZ3JvdW5kIHsgIC8vdGhpcyBpcyB3aGVyZSB3ZSBhcHBseSBvdXIgY29sb3VyIGNsYXNzZXNcblxuXHRcdFx0XHRcdC5pbnRlcm5hbCB7XG5cdFx0XHRcdFx0XHQvLyBmbG9hdDpyaWdodDtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnNwb3RsaWdodC1pbnRlcm5hbCB7XG5cdFx0XHRcdFx0LmJhY2tncm91bmQgeyAgLy90aGlzIGlzIHdoZXJlIHdlIGFwcGx5IG91ciBjb2xvdXIgY2xhc3Nlc1xuXG5cdFx0XHRcdFx0XHQuaW50ZXJuYWwge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6YXV0bztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuc3BvdGxpZ2h0LWludGVybmFsIHtcblxuXHRcdFx0fVxuXG5cdFx0XG5cblx0XHQvL1Nwb3RsaWdodCBvbiB0aGUgUklHSFRcblx0XHRcdC5zcG90bGlnaHQtZnVsbC13aWR0aC1yaWdodCB7XG5cblx0XHRcdFx0ZmxvYXQ6cmlnaHQ7XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTUwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjE5MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmJhY2tncm91bmQgeyAgLy90aGlzIGlzIHdoZXJlIHdlIGFwcGx5IG91ciBjb2xvdXIgY2xhc3Nlc1xuXG5cdFx0XHRcdFx0LmludGVybmFsIHtcblx0XHRcdFx0XHRcdC8vIGZsb2F0OmxlZnQ7XHRcblx0XHRcdFx0XHRcdHBhZGRpbmc6MjBweDtcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XHRcdFx0XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnNwb3RsaWdodC1pbnRlcm5hbCB7XG5cdFx0XHRcdFx0LmJhY2tncm91bmQgeyAgLy90aGlzIGlzIHdoZXJlIHdlIGFwcGx5IG91ciBjb2xvdXIgY2xhc3Nlc1xuXG5cdFx0XHRcdFx0XHQuaW50ZXJuYWwge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6YXV0bztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cblxuXG5cdFx0Ly9UcmlhbmdsZSBwb2ludHMgdG93YXJkcyB0aGUgY2xhc3NuYW1lIGkuZS4gdG9wIHJpZ2h0XG5cdFx0XHQudHJpYW5nbGUtdG9wUmlnaHQge1xuXHRcdFx0XHRib3R0b206MDtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbigxMDAlIDEwMCUpO1xuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDE1ZGVnKSk7XG5cdFx0XHRcdFx0cmlnaHQ6MTUwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgyMGRlZykpO1xuXHRcdFx0XHRcdHJpZ2h0OjE5MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50cmlhbmdsZS1ib3R0b21SaWdodCB7XG5cdFx0XHRcdHRvcDowO1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKDEwMCUgMCUpO1xuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC0xNWRlZykpO1xuXHRcdFx0XHRcdHJpZ2h0OjE1MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTIwZGVnKSk7XG5cdFx0XHRcdFx0cmlnaHQ6MTkwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnRyaWFuZ2xlLXRvcExlZnQge1xuXHRcdFx0XHRib3R0b206MDtcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbigwJSAxMDAlKTtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtMTVkZWcpKTtcblx0XHRcdFx0XHRsZWZ0OjE1MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTIwZGVnKSk7XG5cdFx0XHRcdFx0bGVmdDoxOTBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQudHJpYW5nbGUtYm90dG9tTGVmdCB7XG5cdFx0XHRcdHRvcDowO1x0XHRcdFxuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKDAlIDAlKTtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgxNWRlZykpO1xuXHRcdFx0XHRcdGxlZnQ6MTUwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgyMGRlZykpO1xuXHRcdFx0XHRcdGxlZnQ6MTkwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ly9FTkQgQW5nbGVkIFNwb3RsaWdodHNcblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG5cdFxuXG5cblxuXHQvL1Byb21vIHNwb3RsaWdodHMsIHdoZXJlIHRoZSB0ZXh0IGNvbnRhaW5lciBpcyB0aGUgbWFpbiBjb250YWluZXIgd2l0aCBhIGJhY2tncm91bmQgaW1hZ2Vcblx0LnByb21vLXNwb3RsaWdodC1jb250YWluZXIge1xuXG5cdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0XHRcblx0XHQucHJvbW8tc3BvdGxpZ2h0IHtcblxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdG1pbi1oZWlnaHQ6MjUwcHg7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICR1bnRpbDogZGVza3RvcCkge1xuXHRcdFx0XHR3aWR0aDo1MCU7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6MzYwcHg7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdHdpZHRoOjI1JTtcblx0XHRcdFx0bWluLWhlaWdodDozNjBweDtcblx0XHRcdH1cblxuXG5cblx0XHRcdGEuaG92ZXIge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwsICRmYXN0LWFuaW0pO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OicnO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0XHRib3R0b206NTAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC42NSkgMCUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjY1KSAwJSxyZ2JhKDAsMCwwLDApIDEwMCUpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDAuNjUpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG5cdFx0XHRcdFx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNhNjAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwMDAnLEdyYWRpZW50VHlwZT0wICk7XG5cdFx0XHRcdH1cblxuXG5cdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGJvdHRvbTowO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNDUpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudGV4dC1jb250YWluZXIge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHBhZGRpbmc6MCAwIDgwcHg7XG5cdFx0XHRcdC8vbWluLWhlaWdodDozNTBweDtcblxuXG5cdFx0XHRcdCYudmlkZW8tcm93IHtcblx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogc21hbGxkZXNrdG9wKSB7XG5cdFx0XHRcdFx0XHRtaW4taGVpZ2h0OjUwMHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cblx0XHRcdFx0Ly93aGVuIDIgcHJvbW9zIGFyZSBzdGFja2VkIG9uIHRvcCBvZiBlYWNoIG90aGVyIGluc2lkZSBhbiBvcmRpbmFpcnkgcHJvbW8gXCJ3aWR0aFwiIGJveFxuXHRcdFx0XHQmLnRleHQtY29udGFpbmVyLXN0YWNrZWQge1xuXHRcdFx0XHRcdG1pbi1oZWlnaHQ6MjUwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLm5vLWJ1dHRvbiB7XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MjVweDtcblx0XHRcdFx0fVxuXG5cblx0XHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0XHRwYWRkaW5nOjI1cHg7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDMsMy4zKTtcblx0XHRcdFx0XHRmb250LXdlaWdodDokbGlnaHQ7XG5cblx0XHRcdFx0XHQubHQtaWUxMCAme1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjY1KSAwJSwgcmdiYSgwLDAsMCwwKSAxMDAlKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMCwwLDAsMC42NSkgMCUscmdiYSgwLDAsMCwwKSAxMDAlKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDAuNjUpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7XG5cdFx0XHRcdFx0XHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2E2MDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0Ji5ub1NoYWRlIHtcblx0XHRcdFx0XHRcdFx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmLmxhcmdlciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMy4yLDMpO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MC44ZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lm1vcmUtY29udGFpbmVyIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOjIwcHg7XG5cdFx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdH1cdFx0XG5cdH1cblxuXG5cdC8vVHdpdHRlciBwcm9tbyBzcG90bGlnaHRcblx0LnNvY2lhbC1tZXNzYWdlLWNvbnRhaW5lciB7XG5cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0aGVpZ2h0OjEwMCU7XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDowO1xuXHRcdFx0bGVmdDowO1xuXHRcdFx0d2lkdGg6MTAwcHg7XG5cdFx0XHRoZWlnaHQ6MTAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybCgvYXNzZXRzL2ltYWdlcy9kZXNpZ24vbGVmdC1xdW90ZS5wbmcpOyBcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246NTAlIDUwJTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgXG5cdFx0XHQtd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuXHRcdFx0LW1vei1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcblx0XHRcdC1vLWJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHR0b3A6YXV0bztcblx0XHRcdGxlZnQ6YXV0bztcblx0XHRcdGJvdHRvbTowO1xuXHRcdFx0cmlnaHQ6MDtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oNTAlIDUwJSk7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDE4MGRlZykpO1xuXHRcdH1cblxuXHRcdC50d2VldCB7XG5cdFx0XHRwYWRkaW5nOjUwcHg7XG5cblx0XHRcdGltZyB7XG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdH1cblxuXHRcdFx0LnR3aXR0ZXItdGV4dCB7XG5cdFx0XHRcdG92ZXJmbG93OmhpZGRlbjtcblx0XHRcdFx0XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjIsIDIpOyBcblx0XHRcdFx0XHRmb250LXdlaWdodDokbGlnaHQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQudHdpdHRlci1uYW1lIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMS43KTsgXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6JGJvbGQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnR3aXR0ZXItaGFuZGxlIHtcblx0XHRcdFx0XHRmb250LXdlaWdodDokbGlnaHQ7XG5cdFx0XHRcdFx0Y29sb3I6JGxpZ2h0Z3JleTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblxuXG5cblxuXHRcdH1cblx0fVxuXG5cblx0Ly9UZXh0IG9ubHksIG5vIGltYWdlcywgdXN1YWxseSBhIGJhY2tncm91bmQgZmlsbCBjb2xvdXJcblx0LnNwb3RsaWdodC10ZXh0LW9ubHkge1xuXHRcdC5pbnRlcm5hbCB7XG5cdFx0XHRwYWRkaW5nOjIwcHggNDBweDtcblx0XHRcdGRpc3BsYXk6dGFibGUtY2VsbDtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdFx0d2lkdGg6NzUlXG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZWRlc2t0b3ApIHtcblx0XHRcdFx0d2lkdGg6NjAlXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vRnVuem9uZSBzcG90bGlnaHRzXHRcblx0LmZ1bnpvbmVfc3BvdGxpZ2h0IHtcblx0XHRcblx0XHRkaXYge1xuXHRcdFx0XG5cdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0d2lkdGg6MTAwJTtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJHVudGlsOiBsYXJnZXBob25lKSB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6bm9uZSFpbXBvcnRhbnQ7XG5cdFx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgcmVkO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0bWluLWhlaWdodDo0NTBweCFpbXBvcnRhbnQ7XG5cdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0XHQvLyBib3JkZXI6MXB4IHNvbGlkIGxpbWU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly9uZWVkIGEgd3JhcHBlciBhcyBmbG9hdGVkIGVsZW1lbnRzIGRvbid0IHN1cHBvcnQgZGlzcGxheTp0YWJsZVxuXHRcdC5mdW56b25lLXNwb3RsaWdodC13cmFwcGVyIHtcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdFx0XG5cdFx0XHRcdCYucmlnaHQge1xuXHRcdFx0XHRcdGZsb2F0OnJpZ2h0O1xuXHRcdFx0XHRcdHdpZHRoOjUwJTtcblxuXHRcdFx0XHRcdCYuZXh0ZW5kZWQtd2lkdGgge1xuXHRcdFx0XHRcdFx0d2lkdGg6NjUlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYubGVmdCB7XG5cdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHR3aWR0aDo1MCU7XG5cblx0XHRcdFx0XHQmLmV4dGVuZGVkLXdpZHRoIHtcblx0XHRcdFx0XHRcdHdpZHRoOjY1JTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0XG5cblx0XHQuZnVuem9uZS1zcG90bGlnaHQtY29udGVudCB7XG5cdFx0XHRwYWRkaW5nOjIwcHg7XG5cdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0XHRwYWRkaW5nOjIwcHggNDBweDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0aDIge1xuXHRcdFx0XHRmb250LWZhbWlseTokZnVuem9uZS1mb250O1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMylcblx0XHRcdH1cblx0XHRcdHAge1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMiwgMi4zKVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblxuXG5cdC8vUGxhbm5pbmcgc3BvdGxpZ2h0c1xuXG5cdGEgPiAucGxhbm5pbmctc3BvdGxpZ2h0ICB7XG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG5cblx0XHRcdGgyIHtcblx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5wbGFubmluZy1zcG90bGlnaHQge1xuXHRcdG1hcmdpbi1ib3R0b206MjBweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Ym9yZGVyOjNweCBzb2xpZCBibGFjaztcblx0XHRwYWRkaW5nOjAgMCAzMHB4O1xuXHRcdFxuXHRcdHdpZHRoOjEwMCU7XG5cblx0XHQudmVydENlbnRlciB7XG5cdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFxuXHRcdFx0aDIge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdG1hcmdpbjozMHB4O1xuXHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjUpO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRtYXJnaW46MCBhdXRvIDMwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0ZGl2LnR3ZWV0IHtcblx0XHQudHdpdHRlci10ZXh0IHtcblx0XHRcdG1pbi13aWR0aDogMTcwcHg7XG5cdFx0fVxuXHR9XG4vKlxuXHQuZnVuem9uZS1zcG90bGlnaHQtd3JhcHBlciB7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRoMiwgcHtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcblx0XHR9XG5cdFx0aDJ7bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRcdH1cblx0XHRwe21hcmdpbi10b3A6IDBweDt9XG5cdH1cblx0Ki9cbiIsIi8qLS0tLS0tLS0tLS0tLS0qL1xuLypcdFZJREVPIEVNQkVEICovXG4vKi0tLS0tLS0tLS0tLS0tKi9cblxuXHQudmlkZW8tZW1iZWQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcblx0XHQudmlkZW8tZW1iZWRfX3RodW1ibmFpbCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XG5cdFx0XHRpbWcge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdFx0fVxuXG5cdFx0XHRhLnBsYXktaWNvbiB7XG5cdFx0XHRcdHdpZHRoOjcycHg7XG5cdFx0XHRcdGhlaWdodDo1M3B4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czo1cHg7XG5cdFx0XHRcdEBpbmNsdWRlIGNlbnRlcmVyKCk7XG5cblx0XHRcdFx0Ly8gQGluY2x1ZGUgaWNvbW9vbihhcnJvdy1wbGF5LCBhZnRlcil7XG5cdFx0XHRcdC8vIFx0Y29sb3I6d2hpdGU7XG5cdFx0XHRcdC8vIFx0QGluY2x1ZGUgZm9udC1zaXplKDMpO1xuXHRcdFx0XHQvLyBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ly8gXHR0b3A6IDUyJTtcblx0XHQgIC8vICAgICAgICAgICBsZWZ0OiA0NyU7XG5cdCAgIC8vICAgICAgICAgIFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSk7XG5cdFx0XHRcdC8vIH1cblxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRpZnJhbWUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdH1cblx0fVxuXG5cblx0LmVtYmVkLWNvbnRhaW5lciB7IFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cdFx0bWFyZ2luLWJvdHRvbTo0MHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IFxuXHRcdGhlaWdodDogMDsgb3ZlcmZsb3c6IFxuXHRcdGhpZGRlbjsgXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9IFxuXG5cdC5lbWJlZC1jb250YWluZXIgaWZyYW1lLCBcblx0LmVtYmVkLWNvbnRhaW5lciBvYmplY3QsIFxuXHQuZW1iZWQtY29udGFpbmVyIGVtYmVkIHsgXG5cdFx0cG9zaXRpb246IGFic29sdXRlOyBcblx0XHR0b3A6IDA7IFxuXHRcdGxlZnQ6IDA7IFxuXHRcdHdpZHRoOiAxMDAlOyBcblx0XHRoZWlnaHQ6IDEwMCU7IH1cblxuXG5cdCIsIi8qLS0tLS0tLS0tKi9cbi8qXHRXWVNXSUcgKi9cbi8qLS0tLS0tLS0tKi9cblxuXHQuYWNjb3JkaW9uIC5jb250ZW50RGV0YWlscyxcblx0Lnd5c2l3eWcge1xuXHRcdGgyIHttYXJnaW4tdG9wOiAwO31cblx0XHRcblx0XHR1bCwgb2wge21hcmdpbjogMTBweCAwIDE1cHggMDt9XG5cdFx0bGkge21hcmdpbi1ib3R0b206IDhweDt9XG5cdFx0cCwgbGkge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHR9XG5cdFx0XG5cdFx0aHIge21hcmdpbjogMzBweCAwO31cblx0fSIsIi8qLS0tLS0tLS0tKi9cbi8qXHRUQUJMRVMgKi9cbi8qLS0tLS0tLS0tKi9cblxudGFibGUsIHRoLCB0ZCB7XG5cdGJvcmRlcjoxcHggc29saWQgJHRlYWw7XG5cdGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcbn1cbnRhYmxlIHtcblx0bWFyZ2luOjQwcHggYXV0bztcbn1cbnRoLCB0ZCB7XG5cdHBhZGRpbmc6MTVweCAxMHB4O1xufVxuXG4udGVhbC10YWJsZSB7XG5cdHRoIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcblx0XHRjb2xvcjp3aGl0ZTtcblx0XHRmb250LXdlaWdodDokbGlnaHQ7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0fVxudHI6bnRoLWNoaWxkKG9kZCkge2NvbG9yOmJsYWNrO2JhY2tncm91bmQtY29sb3I6IHdoaXRlO31cbnRyOm50aC1jaGlsZChldmVuKSB7Y29sb3I6YmxhY2s7YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjcsIDE1MywgMC41KTt9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuXHR0YWJsZS50ZWFsLXRhYmxlIHtcblx0d2lkdGg6IDgwJTtcblx0Zm9udC1zaXplOiAxNHB4O1xuXHR9XG59IiwiLyotLS0tLS0qL1xuLypcdE1BUCAqL1xuLyotLS0tLS0qL1xuXG5cdCNtYXAge1xuXHRcdGhlaWdodDogNDUwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTo2MHB4O1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGdyZXk7XG5cdH1cblxuXHQjc2VsZWN0Qm94IHtcblx0XHRmb250LXNpemU6IGxhcmdlO1xuXHRcdGhlaWdodDogMzBweDtcblx0XHR3aWR0aDogMTcwcHg7XG5cdH0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogICBTVFJVQ1RVUkVcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICBcdFx0XHRcdFx0XHQgIFx0Ki9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblx0KiAge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1ib3g7XG5cdH1cblxuXHRodG1sIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0YmFja2dyb3VuZDp3aGl0ZTtcblx0XHRmb250LXNpemU6NjIuNSU7XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiAjZjNmNWY2O1xuXHRcdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgXG5cdFx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG5cdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0XG5cdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdCYubHQtaWU5IHtcblx0XHRcdG92ZXJmbG93LXg6IHZpc2libGU7XG5cdFx0fVxuXHR9XG5cdFxuXHRib2R5IHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoJGJhc2UtZm9udC1zaXplLCAxLjkpO1xuXHQgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQ7XG5cdCAgICBmb250LXdlaWdodDogJHJlZ3VsYXI7XG5cdCAgICBjb2xvcjokZ3JleTtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHRiYWNrZ3JvdW5kOndoaXRlO1xuXHRcdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0XHQtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb24gIWltcG9ydGFudDtcblx0XHRtaW4td2lkdGg6ICRnbG9iYWwtbWluLXdpZHRoO1xuXHRcdFxuXHRcdC5sdC1pZTkgJiB7XG5cdFx0XHRtaW4td2lkdGg6ICRwYWdlLXdpZHRoO1xuXHRcdFx0b3ZlcmZsb3cteDogdmlzaWJsZTtcblx0XHR9XG5cdH1cblx0XG5cdC5tYWluLXdyYXAge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0fVxuXHRcdFxuXHRcdFx0XG5cdC53aWR0aC1zY3JlZW4ge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHR3aWR0aDoxMDAlO1xuXHR9XG5cdFxuXHQud2lkdGgtcGFnZSB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0bWFyZ2luOjAgYXV0bztcblx0XHRwYWRkaW5nOjA7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0bWF4LXdpZHRoOiAkcGFnZS13aWR0aDtcblx0XHQvLyBib3JkZXI6MnB4IGRhc2hlZCBjeWFuO1xuXHRcdHdpZHRoOjk1JTsgXG5cblx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHRcdFx0XG5cdFx0XHR3aWR0aDo5OCU7IFxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHR3aWR0aDoxMDAlOyBcblx0XHR9XG5cblx0fVxuXG5cdC53aWR0aC1wYWdlLndpZHRoLXBhZ2UtZnVsbCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQubGVmdC1tZW51LWNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHR3aWR0aDokbGVmdC1jb2wtd2lkdGg7XG5cdFx0bWFyZ2luLXJpZ2h0OiRjb2wtc3BhY2luZztcblx0XHRtYXJnaW4tYm90dG9tOjQwcHg7XG5cdFx0cGFkZGluZzowO1xuXHRcdGRpc3BsYXk6bm9uZTtcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiAxMTgwcHgpIHsgLy9jb3JyZWN0aW9uIGFkZGVkIG5vdCB0byBzaG93IHRvZ2V0aGVyIHdpdGggbW9iaWxlIG1lbnVcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0fVxuXG5cdFx0Ji5wZXJtYW5lbnQge1xuXHRcdFx0QGluY2x1ZGUgbXEoJHVudGlsOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0ZmxvYXQ6bm9uZTtcblx0XHRcdFx0d2lkdGg6YXV0bztcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmNvbnRlbnQtY29udGFpbmVyIHtcdFx0XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6aGlkZGVuOyBcblx0XG5cdFx0Lm1haW4tY29udGVudCB7XHRcdFx0XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTsgXG5cdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDsgXG5cblx0XHRcdC8qIHJpZ2h0IGNvbCBvbmx5ICovXG5cdFx0XHQmLmhhcy1yaWdodC1jb2wge1xuXHRcdFx0XHRmbG9hdDpsZWZ0OyBcblx0XHRcdFx0d2lkdGg6JHBhZ2Utd2lkdGggLSAoJHJpZ2h0LWNvbC13aWR0aCArICRjb2wtc3BhY2luZyk7XG5cdFx0XHR9ICBcblx0XHRcdFxuXHRcdFx0LyogbGVmdCAmIHJpZ2h0IGNvbCAqL1xuXHRcdFx0Ji5oYXMtYm90aC1jb2xzIHtcblx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0d2lkdGg6JHBhZ2Utd2lkdGggLSAoICgkbGVmdC1jb2wtd2lkdGggKyAkY29sLXNwYWNpbmcpICsgKCRyaWdodC1jb2wtd2lkdGggKyAkY29sLXNwYWNpbmcpICk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnJpZ2h0LWNvbC1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246cmVsYXRpdmU7IFxuXHRcdFx0ZmxvYXQ6cmlnaHQ7XG5cdFx0XHR3aWR0aDokcmlnaHQtY29sLXdpZHRoO1xuXHRcdH1cblx0fVxuXG5cblx0LmRpdmlkZXItbGluZS1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiA1MDAwO1xuXG5cdFx0LmRpdmlkZXItbGluZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiA2MDAwO1xuXG5cdFx0XHQudHJpYW5nbGUge1xuXHRcdFx0XHRjb250ZW50OlwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHR0b3A6ODAlO1xuXHRcdFx0XHRyaWdodDowO1xuXHRcdFx0XHR3aWR0aDoxMTAlO1xuXHRcdFx0XHRoZWlnaHQ6MzBweDtcblx0XHRcdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0XHRcdHotaW5kZXg6IDYwMDA7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oMTAwJSAxMDAlKTtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtMWRlZykpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbHBob25lKSB7XG5cdFx0XHRcdFx0dG9wOjUwJTtcblx0XHRcdFx0XHRoZWlnaHQ6MjBweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbHBob25lKSB7XG5cdFx0XHRcdFx0dG9wOjQ1JTtcblx0XHRcdFx0XHRoZWlnaHQ6MjVweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG5cdFx0XHRcdFx0dG9wOjI1JTtcblx0XHRcdFx0XHRoZWlnaHQ6MzVweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZWRlc2t0b3ApIHtcblx0XHRcdFx0XHR0b3A6MTclO1xuXHRcdFx0XHRcdGhlaWdodDozNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGgxLGgyLGgzIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0cGFkZGluZzoyMHB4IDEwcHggMjBweDtcblx0XHRcdFx0ei1pbmRleDogNjAwMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cblx0LmJyZWFkY3J1bWItcGFnZS1sZXZlbC1zb2NpYWwtY29udGFpbmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuXHRcdC5wYWdlLWxldmVsLXNvY2lhbEljb25zLWNvbnRhaW5lciB7XG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHR0b3A6NHB4O1xuXHRcdFx0XHRyaWdodDowO1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0LmZvb3Rlci1wYWdlLWxldmVsLXNvY2lhbC1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5cdFx0PiBwIHtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRcdHBhZGRpbmc6MjBweCAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlx0Rk9STVNcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCAgXHRcdFx0XHRcdFx0ICBcdCAgXHQgIFx0Ki9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuXHRpbnB1dFt0eXBlPVwidGV4dFwiXSxcblx0dGV4dGFyZWEge1xuXHRcdGJvcmRlci1yYWRpdXM6MDtcblx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkZ3JleTtcblx0fVxuXG5cblx0ZmllbGRzZXQge1xuXG5cblx0XHQmLnF1YXJ0ZXIge1xuXHRcdFx0d2lkdGg6MTAwJTtcblxuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuXHRcdFx0XHR3aWR0aDoyNSU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5oYWxmIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdFx0d2lkdGg6NTAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYudGhyZWVRdWFydGVyIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cblx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcblx0XHRcdFx0d2lkdGg6NzUlO1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0cGFkZGluZzowO1xuXHRcdFxuXHRcdGxlZ2VuZCB7XG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkICRncmV5O1xuXHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKCRiYXNlLWZvbnQtc2l6ZSk7XG5cdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0fVxuXG5cdFx0LmZpZWxkc2V0LWlubmVyLWNvbnRhaW5lciB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6MjBweDtcdFx0XHRcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdH1cblxuXHRcdC5jbG9uZS1ibG9jayB7XG5cdFx0XHRvdmVyZmxvdzpoaWRkZW47IFxuXHRcdFx0bWFyZ2luLWJvdHRvbTozMHB4O1xuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdFx0XG5cdC5mb3JtLXJvdy1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlOyBcblx0XHRtYXJnaW4tYm90dG9tOjMwcHg7XG5cdFx0cGFkZGluZzowO1xuXHRcdC8vIHdpZHRoOjEwMCU7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0fVxuXG5cdFx0LyogXCJvdGhlclwiIHRpdGxlLCBtdWx0aS1saW5lIGFkZHJlc3MgaW5wdXQgKi9cblx0XHQuZXh0cmEtcm93IHtcblx0XHRcdG1hcmdpbi10b3A6NXB4O1xuXHRcdH0gXG5cdFx0XG5cdFx0LmNvdW50ZXItY29udGFpbmVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206MTBweDtcblxuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbjowO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYud2l0aC1idXR0b24ge1xuXHRcdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHQgICAgICAgIG1hcmdpbi1yaWdodDoxNTBweCFpbXBvcnRhbnQ7XG5cdFx0ICAgIH1cblx0XHRcdFxuXHRcdFx0YnV0dG9uIHtcblxuXHRcdFx0XHRtYXJnaW4tdG9wOjVweDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0ICAgICAgICBtYXJnaW4tdG9wOjA7XG5cdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7IFxuXHRcdFx0XHRcdGJvdHRvbTowO1xuXHRcdFx0XHRcdHJpZ2h0Oi0xNTBweDtcblx0XHRcdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdCAgICB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQvKiBEZWZhdWx0IHZhbHVlcyAqL1xuXHRcdGlucHV0LFxuXHRcdHNlbGVjdCxcblx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFzZS1mb250LXNpemUpO1xuXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0b3V0bGluZTowO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdFxuXHRcdC8qIFByZXNlbnRhdGlvbiAqL1xuXHRcdEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcblx0XHRcdGxpbmUtaGVpZ2h0OjEuMmVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRyZWd1bGFyO1xuXHRcdH1cblx0XHRcblx0XHRcblx0XHRcblxuXG5cblx0XHQvKiBPdmVycmlkZSB2YWx1ZXMgKi9cblx0XHRsYWJlbCB7XG5cdFx0XHRjdXJzb3I6cG9pbnRlcjsgXG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoJGJhc2UtZm9udC1zaXplKTtcblxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdG91dGxpbmU6MXB4IHNvbGlkIHJlZDtcblx0XHRcdH1cblxuXHRcdH1cblx0XHRcblx0XHQubGFiZWwge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6JGJvbGQ7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRjdXJzb3I6cG9pbnRlcjtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFzZS1mb250LXNpemUpO1xuXHRcdH1cblxuXHRcdGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5cdFx0aW5wdXRbdHlwZT1cInRleHRcIl0sXG5cdFx0aW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuXHRcdGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6MTBweCAxMHB4IDhweDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkICRncmV5O1xuXHRcdH1cblxuXHRcdGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcblx0XHRpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjVweDtcblx0XHRcdHdpZHRoOjIwcHg7XG5cdFx0XHRoZWlnaHQ6MjBweDtcblx0XHR9XG5cblx0XHRcblx0XHRzZWxlY3Qge1xuXHRcdFx0cGFkZGluZzoxMXB4IDEwcHggOXB4O1xuXHRcdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdGJvcmRlcjoxcHggc29saWQgJGdyZXk7XG5cdFx0fVxuXG5cblx0XHQuc2VsZWN0LXN0eWxlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHRcdFx0d2lkdGg6MTAwJTtcblxuXHRcdFx0c2VsZWN0IHtcblx0XHRcdFx0d2lkdGg6MTAwJVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2VwaG9uZSkge1xuXHRcdFx0XHRzZWxlY3Qge1xuXHRcdFx0XHRcdHdpZHRoOmF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXG5cblxuXHRcdFx0Ji5pbmxpbmUtYXQtbGFyZ2UtcGhvbmUge1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHR3aWR0aDozMiU7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjIlO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRzZWxlY3Qge1xuXHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHR9XG5cdFx0XHQgICAgfVxuXHRcdFx0fVxuXHRcdH1cdFx0XG5cblxuXHRcdHRleHRhcmVhIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzo1cHg7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OjgwcHg7XG5cdFx0fVxuXG5cdFxuXHRcdFxuXHRcdFxuXG5cblx0XHQvKiBJY29ucyAqL1xuXHRcdC5yZXF1aXJlZCB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDo1cHg7XG5cdFx0XHRsZWZ0Oi0xMHB4O1xuXHRcdFx0d2lkdGg6MTBweDtcblx0XHRcdGhlaWdodDoxMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTp1cmwoI3skcGF0aC1mb3JtLWltYWdlc31yZXF1aXJlZC5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjowIDA7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0fVxuXHRcdFxuXHRcdC50aWNrSWNvbiB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDo1MCU7XG5cdFx0XHRyaWdodDo0MHB4O1xuXHRcdFx0bWFyZ2luLXRvcDotMjBweDtcblx0XHRcdHdpZHRoOjIwcHg7XG5cdFx0XHRoZWlnaHQ6NDBweDtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6dXJsKCN7JHBhdGgtZm9ybS1pbWFnZXN9dGljay5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjo5OCUgNTAlO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdH1cblx0XHRcblx0XHQuY3Jvc3NJY29uIHtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0dG9wOjUwJTtcblx0XHRcdHJpZ2h0OjQwcHg7XG5cdFx0XHRtYXJnaW4tdG9wOi0yMHB4O1xuXHRcdFx0d2lkdGg6MjBweDtcblx0XHRcdGhlaWdodDo0MHB4O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTp1cmwoI3skcGF0aC1mb3JtLWltYWdlc31jcm9zcy5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjo5OCUgNTAlO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdH1cblx0XHRcblx0XHRcblxuXHRcdFxuXG5cblx0XHQvKiBXcmFwcGVycyBhbmQgSWNvbnMgKi9cblx0XHQuaW5wdXRXcmFwcGVyIHtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdH1cblx0XHRcdFxuXHRcdC5jbGVhckljb24ge1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHR0b3A6M3B4O1xuXHRcdFx0cmlnaHQ6MDtcblx0XHRcdHdpZHRoOjQwcHg7XG5cdFx0XHRoZWlnaHQ6NDBweDtcblx0XHRcdGN1cnNvcjpwb2ludGVyOyBcblx0XHRcdHotaW5kZXg6Mztcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6dXJsKCN7JHBhdGgtZm9ybS1pbWFnZXN9Y2xlYXIucG5nKTsgXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSA1MCU7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0fVxuXHRcdFxuXHRcdC5jbGVhckljb25QYWRkaW5nIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6MjhweCFpbXBvcnRhbnRcblx0XHR9XG5cdFx0XG5cdFx0LnBhc3N3b3JkSWNvbiB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHRvcDo1MCU7XG5cdFx0XHRyaWdodDo1cHg7XG5cdFx0XHRtYXJnaW4tdG9wOi0yMHB4O1xuXHRcdFx0d2lkdGg6MzVweDtcblx0XHRcdGhlaWdodDo0MHB4O1xuXHRcdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0XHR6LWluZGV4OjM7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybCgjeyRwYXRoLWZvcm0taW1hZ2VzfXdpbmsucG5nKTsgXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjVweCA1MCU7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0fVxuXHRcdFxuXHRcdC5wYXNzd29yZEljb24tc2hvdyB7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOi00MHB4IDUwJVxuXHRcdH1cblx0XHRcblx0XHQubW92ZVBhc3N3b3JkSWNvbiB7XG5cdFx0XHRyaWdodDo0NXB4IWltcG9ydGFudFxuXHRcdH1cblx0XHRcblx0XHQuZG91YmxlSWNvblBhZGRpbmcge1xuXHRcdFx0cGFkZGluZy1yaWdodDo4MHB4IWltcG9ydGFudFxuXHRcdH1cblx0XHRcblx0XHRcblx0XHRcblx0XHQvKiBFcnJvciAvIEhlbHAgbWVzc2FnZXMgKi9cblx0XHQubWVzc2FnZUNvbnRhaW5lciB7XG5cdFx0XHRtYXJnaW4tdG9wOjVweDtcblx0XHRcdHBhZGRpbmc6NnB4IDVweCA1cHggMzBweDtcblxuXHRcdFx0cCB7XHRcdFx0XHRcblx0XHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdH1cblx0XHR9XHRcdFxuXHRcdFxuXHRcdC5lcnJvci1tZXNzYWdlIHtcblx0XHRcdGJvcmRlcjoxcHggc29saWQgI2RmOGY5MDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmZDJkMztcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6dXJsKCN7JHBhdGgtZm9ybS1pbWFnZXN9Y3Jvc3MucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246NXB4IDUwJTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0XHR9XG5cdFx0XG5cdFx0LmhlbHAtbWVzc2FnZSB7XG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkICM5ZmM3ZjU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNkYmVjZmY7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybCgjeyRwYXRoLWZvcm0taW1hZ2VzfWhlbHAucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246NXB4IDUwJTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcblx0XHR9XG5cdFxuXG5cdFx0XG5cblx0XHQvKiBJbmZvIFBhbmVsIC0gXCJkYXRhIHByb3RlY3Rpb25cIiAqL1xuXHRcdC5pbmZvUGFuZWwge1xuXHRcdFx0cG9zaXRpb246cmVsYXRpdmU7IFxuXHRcdFx0bWFyZ2luOjA7XG5cblx0XHRcdGlucHV0IHtcblx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7IFxuXHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRib3JkZXI6MDtcblx0XHRcdH1cblxuXHRcdFx0bGFiZWwge1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDoyNXB4O1xuXHRcdFx0XHRjdXJzb3I6cG9pbnRlcjtcblx0XHRcdH1cblx0XHR9XHRcblx0fVxuXHRcblxuLyogUkFESU8gLyBDSEVDS0JPWEVTICovXHRcdFx0XG4vKiBlLmcuIEdlbmRlciAqL1xuLmNvbXBhY3QtbGlzdCB7XHRcdFx0XG5cdG1hcmdpbjowO1xuXHRwYWRkaW5nOjA7XG5cdGxpc3Qtc3R5bGU6bm9uZTtcblxuXHRsaSB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7IFxuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6NXB4IDAgMDtcblxuXHRcdGlucHV0IHtkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZX1cblx0XHRcblx0XHRsYWJlbCB7XHRcdFx0XHRcdFxuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjIwcHg7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vKiBTaW5nbGUgUm93IExpc3QgLSBlLmcuIENhbGwgbWUgKi9cbi5zaW5nbGUtcm93LWxpc3Qge1xuXHRtYXJnaW46MDtcblx0cGFkZGluZzowO1xuXHRsaXN0LXN0eWxlOm5vbmU7XG5cblx0bGkge1x0XHRcdFx0XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzo1cHggMCAwO1xuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZXBob25lKSB7XG5cdCAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDo0OSU7XG5cdCAgICB9XG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuXHQgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6MjQlO1xuXHQgICAgfVxuXG5cdFx0aW5wdXQge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlfVxuXG5cdFx0bGFiZWwge1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MjBweDtcblx0XHRcdHBhZGRpbmc6MDtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi8qIE11bHRpIENvbCBMaXN0IC0gXCJPcHRpb24gbGlzdFwiICovXG4ubXVsdGktY29sLWxpc3Qge1xuXHRtYXJnaW46MDtcblx0cGFkZGluZzowO1xuXHRsaXN0LXN0eWxlOm5vbmU7XG5cblx0XG5cdEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgbGkge1xuXHRcdFx0Ly8gb3V0bGluZToxcHggc29saWQgcmVkO1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDo0OCU7XG5cdFx0fVxuICAgIH1cblx0QGluY2x1ZGUgbXEoJGZyb206IHNtYWxsZGVza3RvcCkge1xuICAgICAgICBsaSB7XG4gICAgICAgIFx0Ly8gb3V0bGluZToxcHggc29saWQgbGltZTtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6MzAlO1xuXHRcdH1cbiAgICB9XG5cblx0bGkge1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6NXB4IDAgMDtcblxuXHRcdGlucHV0IHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0fVxuXG5cdFx0bGFiZWwge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdG1hcmdpbi1yaWdodDoyMHB4O1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxufVxuXG5cbi5ibG9jay1saXN0IHtcblx0bWFyZ2luOjA7XG5cdHBhZGRpbmc6MDtcblx0bGlzdC1zdHlsZTpub25lO1xuXG5cdGxpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW46MCAwIDEwcHg7XG5cdFx0cGFkZGluZzowO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdH1cblxuXHRcdGlucHV0IHtcblx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRtYXJnaW46MnB4IDE1cHggMCAwO1xuXHRcdH1cblxuXHRcdGxhYmVsIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjIwcHg7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0fVxuXHR9XG59XG5cblxuXHRcbi8vIElubGluZSBmb3JtIGVsZW1lbnRzXG4ub25lLWxpbmUtZm9ybSB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcblx0aW5wdXQsXG5cdGJ1dHRvbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjogMDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cdFxuXHRpbnB1dCB7XG5cdFx0d2lkdGg6IDcyJTtcblx0XHRib3JkZXI6IDA7XG5cdFx0bWFyZ2luLXJpZ2h0OiAzJTtcblx0XHRwYWRkaW5nOiAxMnB4IDIwcHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdH1cblx0YnV0dG9uIHtcblx0XHR3aWR0aDogMjUlO1xuXHRcdHBhZGRpbmc6IDEwcHggMDtcblx0fVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXHRMSVNUSU5HXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICBcdFx0XHRcdFx0XHQgIFx0Ki9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIiwiLyotLS0tLS0tLS0qL1xuLyogRlVOWk9ORSAqL1xuLyotLS0tLS0tLS0qL1xuXG4ucmFuZ2VyLXJhbHBoLWN0YSB7XG5cdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzoyMHB4IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcdFxuXG5cdHAge1xuXHRcdGZvbnQtZmFtaWx5OiRmdW56b25lLWZvbnQ7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDIuOCk7XG5cdFx0bWFyZ2luOjEwcHggMCAyMHB4O1xuXHRcdHBhZGRpbmc6MDtcblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdGZsb2F0OmxlZnQ7IFxuXHRcdFx0d2lkdGg6NzUlO1xuXHRcdFx0bWFyZ2luOjEwcHggMDtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uIHtcblx0XHRmb250LWZhbWlseTokZnVuem9uZS1mb250O1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjUpO1xuXHRcdGNvbG9yOiRyZWQ7XG5cdFx0cGFkZGluZzoxMHB4IDMwcHg7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRtYXJnaW46MCBhdXRvO1xuXG5cdFx0QGluY2x1ZGUgbXEoJGZyb206IGxhcmdlcGhvbmUpIHtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1xKCRmcm9tOiBzbWFsbGRlc2t0b3ApIHtcblx0XHRcdGZsb2F0OnJpZ2h0O1xuXHRcdH1cblx0fVxufVxuXG4iXSwibWFwcGluZ3MiOiJBRUFBLGdCQUFnQjtBQUNoQixlQUFlO0FBQ2YsZ0JBQWdCO0FBNEJkLEFBQUEsVUFBVSxDQUFDO0VBQUMsS0FBSyxFQWZYLE9BQU87Q0FlWTs7QUFHekIsQUFBQSxVQUFVLENBQUM7RUFBQyxLQUFLLEVBWlgsT0FBTztDQVlZOztBQUt6QixBQUFBLFlBQVksQ0FBQztFQUNaLGdCQUFnQixFQTNCVCxJQUFJO0NBK0JYOztBQUxELEFBRUMsWUFGVyxDQUVYLFNBQVMsQ0FBQztFQUNULGdCQUFnQixFQTdCVixJQUFJO0NBOEJWOztBQUdGLEFBQUEsaUJBQWlCLENBQUM7RUFDakIsZ0JBQWdCLEVBakNOLE9BQU87Q0FxQ2pCOztBQUxELEFBRUMsaUJBRmdCLENBRWhCLFNBQVMsQ0FBQztFQUNULGdCQUFnQixFQW5DUCxPQUFPO0NBb0NoQjs7QUFHRixBQUFBLGtCQUFrQixDQUFDO0VBQ2xCLGdCQUFnQixFQXZDTCxPQUFPO0NBMkNsQjs7QUFMRCxBQUVDLGtCQUZpQixDQUVqQixTQUFTLENBQUM7RUFDVCxnQkFBZ0IsRUF6Q04sT0FBTztDQTBDakI7O0FBR0YsQUFBQSxXQUFXLENBQUM7RUFDWCxnQkFBZ0IsRUE3Q1gsT0FBTztDQWlEWjs7QUFMRCxBQUVDLFdBRlUsQ0FFVixTQUFTLENBQUM7RUFDVCxnQkFBZ0IsRUEvQ1osT0FBTztD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bkJnQixDQW1CaEIsT0FBTyxDQUFDO0VBQ1AsV0FBVyxFbkMySVEsaUJBQWlCO0VHOUNwQyxTQUFTLEVBQUcsSUFBVTtFQUN0QixTQUFTLEVnQzdGVSxNQUFHO0VoQytGdEIsV0FBVyxFQUFHLE1BQVk7RUFDMUIsV0FBVyxFQUxtQyxPQUFVO0VnQzFGeEQsS0FBSyxFbkNEQSxPQUFPO0VtQ0VaLE9BQU8sRUFBQyxTQUFVO0VBQ2xCLE9BQU8sRUFBQyxLQUFNO0VBQ2QsTUFBTSxFQUFDLE1BQU87Q0FTZDs7QWpDMExNLE1BQU0sRUFBTCxTQUFTLEVBQUUsTUFBTTtFaUM1TjFCLEFBbUJDLGlCQW5CZ0IsQ0FtQmhCLE9BQU8sQ0FBQztJQVNOLE9BQU8sRUFBQyxZQUFhO0dBTXRCOzs7QWpDMExNLE1BQU0sRUFBTCxTQUFTLEVBQUUsSUFBSTtFaUM1TnhCLEFBbUJDLGlCQW5CZ0IsQ0FtQmhCLE9BQU8sQ0FBQztJQWFOLEtBQUssRUFBQyxLQUFNO0dBRWIiLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */
