﻿@charset "UTF-8";
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document ========================================================================== */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS. */
html { line-height: 1.15; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/* Sections ========================================================================== */
/** Remove the margin in all browsers (opinionated). */
body { margin: 0; }

/** Add the correct display in IE 9-. */
article, aside, footer, header, nav, section { display: block; }

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1 { font-size: 2em; margin: 0.67em 0; }

/* Grouping content ========================================================================== */
/** Add the correct display in IE 9-. 1. Add the correct display in IE. */
figcaption, figure, main { /* 1 */ display: block; }

/** Add the correct margin in IE 8. */
figure { margin: 1em 40px; }

/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { -webkit-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/* Text-level semantics ========================================================================== */
/** 1. Remove the gray background on active links in IE 10. 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */
a { background-color: transparent; /* 1 */ -webkit-text-decoration-skip: objects; /* 2 */ }

/** 1. Remove the bottom border in Chrome 57- and Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }

/** Prevent the duplicate application of `bolder` by the next rule in Safari 6. */
b, strong { font-weight: inherit; }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct font style in Android 4.3-. */
dfn { font-style: italic; }

/** Add the correct background and color in IE 9-. */
mark { background-color: #ff0; color: #000; }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** Add the correct display in IE 9-. */
audio, video { display: inline-block; }

/** Add the correct display in iOS 4-7. */
audio:not([controls]) { display: none; height: 0; }

/** Remove the border on images inside links in IE 10-. */
img { border-style: none; }

/** Hide the overflow in IE. */
svg:not(:root) { overflow: hidden; }

/* Forms ========================================================================== */
/** 1. Change the font styles in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: sans-serif; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` controls in Android 4. 2. Correct the inability to style clickable types in iOS and Safari. */
button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; /* 2 */ }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.75em 0.625em; }

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** 1. Add the correct display in IE 9-. 2. Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ }

/** Remove the default vertical scrollbar in IE. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10-. 2. Remove the padding in IE 10-. */
[type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding and cancel buttons in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/* Interactive ========================================================================== */
/* Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. */
details, menu { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Scripting ========================================================================== */
/** Add the correct display in IE 9-. */
canvas { display: inline-block; }

/** Add the correct display in IE. */
template { display: none; }

/* Hidden ========================================================================== */
/** Add the correct display in IE 10-. */
[hidden] { display: none; }

/*! lightslider - v1.1.6 - 2016-10-25 https://github.com/sachinchoolur/lightslider Copyright (c) 2016 Sachin N; Licensed MIT */
/*! lightslider - v1.1.3 - 2015-04-14 https://github.com/sachinchoolur/lightslider Copyright (c) 2015 Sachin N; Licensed MIT */
/** /!!! core css Should not edit !!!/**/
.lSSlideOuter { overflow: hidden; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.lightSlider:before, .lightSlider:after { content: " "; display: table; }

.lightSlider { overflow: hidden; margin: 0; }

.lSSlideWrapper { max-width: 100%; overflow: hidden; position: relative; }

.lSSlideWrapper > .lightSlider:after { clear: both; }

.lSSlideWrapper .lSSlide { -webkit-transform: translate(0px, 0px); transform: translate(0px, 0px); -webkit-transition: all 1s; -webkit-transition-property: -webkit-transform,height; -webkit-transition-property: height,-webkit-transform; transition-property: height,-webkit-transform; transition-property: transform,height; transition-property: transform,height,-webkit-transform; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }

.lSSlideWrapper .lSFade { position: relative; }

.lSSlideWrapper .lSFade > * { position: absolute !important; top: 0; left: 0; z-index: 9; margin-right: 0; width: 100%; }

.lSSlideWrapper.usingCss .lSFade > * { opacity: 0; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-property: opacity; transition-property: opacity; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }

.lSSlideWrapper .lSFade > *.active { z-index: 10; }

.lSSlideWrapper.usingCss .lSFade > *.active { opacity: 1; }

/** /!!! End of core css Should not edit !!!/**/
/* Pager */
.lSSlideOuter .lSPager.lSpg { margin: 10px 0 0; padding: 0; text-align: center; }

.lSSlideOuter .lSPager.lSpg > li { cursor: pointer; display: inline-block; padding: 0 5px; }

.lSSlideOuter .lSPager.lSpg > li a { background-color: #222222; border-radius: 30px; display: inline-block; height: 8px; overflow: hidden; text-indent: -999em; width: 8px; position: relative; z-index: 10; -webkit-transition: all 0.5s linear 0s; transition: all 0.5s linear 0s; }

.lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a { background-color: #428bca; }

.lSSlideOuter .media { opacity: 0.8; }

.lSSlideOuter .media.active { opacity: 1; }

/* End of pager */
/** Gallery */
.lSSlideOuter .lSPager.lSGallery { list-style: none outside none; padding-left: 0; margin: 0; overflow: hidden; transform: translate3d(0px, 0px, 0px); -moz-transform: translate3d(0px, 0px, 0px); -ms-transform: translate3d(0px, 0px, 0px); -webkit-transform: translate3d(0px, 0px, 0px); -o-transform: translate3d(0px, 0px, 0px); -webkit-transition-property: -webkit-transform; -moz-transition-property: -moz-transform; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.lSSlideOuter .lSPager.lSGallery li { overflow: hidden; -webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s; transition: border-radius 0.12s linear 0s 0.35s linear 0s; }

.lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover { border-radius: 5px; }

.lSSlideOuter .lSPager.lSGallery img { display: block; height: auto; max-width: 100%; }

.lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after { content: " "; display: table; }

.lSSlideOuter .lSPager.lSGallery:after { clear: both; }

/* End of Gallery*/
/* slider actions */
.lSAction > a { width: 32px; display: block; top: 50%; height: 32px; background-image: url("../img/controls.png"); cursor: pointer; position: absolute; z-index: 10; margin-top: -16px; opacity: 0.5; -webkit-transition: opacity 0.35s linear 0s; transition: opacity 0.35s linear 0s; }

.lSAction > a:hover { opacity: 1; }

.lSAction > .lSPrev { background-position: 0 0; left: 10px; }

.lSAction > .lSNext { background-position: -32px 0; right: 10px; }

.lSAction > a.disabled { pointer-events: none; }

.cS-hidden { height: 1px; opacity: 0; filter: alpha(opacity=0); overflow: hidden; }

/* vertical */
.lSSlideOuter.vertical { position: relative; }

.lSSlideOuter.vertical.noPager { padding-right: 0px !important; }

.lSSlideOuter.vertical .lSGallery { position: absolute !important; right: 0; top: 0; }

.lSSlideOuter.vertical .lightSlider > * { width: 100% !important; max-width: none !important; }

/* vertical controlls */
.lSSlideOuter.vertical .lSAction > a { left: 50%; margin-left: -14px; margin-top: 0; }

.lSSlideOuter.vertical .lSAction > .lSNext { background-position: 31px -31px; bottom: 10px; top: auto; }

.lSSlideOuter.vertical .lSAction > .lSPrev { background-position: 0 -31px; bottom: auto; top: 10px; }

/* vertical */
/* Rtl */
.lSSlideOuter.lSrtl { direction: rtl; }

.lSSlideOuter .lightSlider, .lSSlideOuter .lSPager { padding-left: 0; list-style: none outside none; }

.lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager { padding-right: 0; }

.lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li { float: left; }

.lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li { float: right !important; }

/* Rtl */
@-webkit-keyframes rightEnd { 0% { left: 0; }
  50% { left: -15px; }
  100% { left: 0; } }

@keyframes rightEnd { 0% { left: 0; }
  50% { left: -15px; }
  100% { left: 0; } }

@-webkit-keyframes topEnd { 0% { top: 0; }
  50% { top: -15px; }
  100% { top: 0; } }

@keyframes topEnd { 0% { top: 0; }
  50% { top: -15px; }
  100% { top: 0; } }

@-webkit-keyframes leftEnd { 0% { left: 0; }
  50% { left: 15px; }
  100% { left: 0; } }

@keyframes leftEnd { 0% { left: 0; }
  50% { left: 15px; }
  100% { left: 0; } }

@-webkit-keyframes bottomEnd { 0% { bottom: 0; }
  50% { bottom: -15px; }
  100% { bottom: 0; } }

@keyframes bottomEnd { 0% { bottom: 0; }
  50% { bottom: -15px; }
  100% { bottom: 0; } }

.lSSlideOuter .rightEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }

.lSSlideOuter .leftEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }

.lSSlideOuter.vertical .rightEnd { -webkit-animation: topEnd 0.3s; animation: topEnd 0.3s; position: relative; }

.lSSlideOuter.vertical .leftEnd { -webkit-animation: bottomEnd 0.3s; animation: bottomEnd 0.3s; position: relative; }

.lSSlideOuter.lSrtl .rightEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }

.lSSlideOuter.lSrtl .leftEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }

/*/  GRab cursor */
.lightSlider.lsGrab > * { cursor: -webkit-grab; cursor: -o-grab; cursor: -ms-grab; cursor: grab; }

.lightSlider.lsGrabbing > * { cursor: move; cursor: -webkit-grabbing; cursor: -o-grabbing; cursor: -ms-grabbing; cursor: grabbing; }

/* Magnific Popup CSS */
.mfp-bg { top: 0; left: 0; width: 100%; height: 100%; z-index: 1042; overflow: hidden; position: fixed; background: #0b0b0b; opacity: 0.8; }

.mfp-wrap { top: 0; left: 0; width: 100%; height: 100%; z-index: 1043; position: fixed; outline: none !important; -webkit-backface-visibility: hidden; }

.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; padding: 0 8px; -webkit-box-sizing: border-box; box-sizing: border-box; }

.mfp-container:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }

.mfp-align-top .mfp-container:before { display: none; }

.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 1045; }

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }

.mfp-ajax-cur { cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: -webkit-zoom-out; cursor: zoom-out; }

.mfp-zoom { cursor: pointer; cursor: -webkit-zoom-in; cursor: zoom-in; }

.mfp-auto-cursor .mfp-content { cursor: auto; }

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.mfp-loading.mfp-figure { display: none; }

.mfp-hide { display: none !important; }

.mfp-preloader { color: #CCC; position: absolute; top: 50%; width: auto; text-align: center; margin-top: -0.8em; left: 8px; right: 8px; z-index: 1044; }

.mfp-preloader a { color: #CCC; }

.mfp-preloader a:hover { color: #FFF; }

.mfp-s-ready .mfp-preloader { display: none; }

.mfp-s-error .mfp-content { display: none; }

button.mfp-close, button.mfp-arrow { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; display: block; outline: none; padding: 0; z-index: 1046; -webkit-box-shadow: none; box-shadow: none; -ms-touch-action: manipulation; touch-action: manipulation; }

button::-moz-focus-inner { padding: 0; border: 0; }

.mfp-close { width: 44px; height: 44px; line-height: 44px; position: absolute; right: 0; top: 0; text-decoration: none; text-align: center; opacity: 0.65; padding: 0 0 18px 10px; color: #FFF; font-style: normal; font-size: 28px; font-family: Arial, Baskerville, monospace; }

.mfp-close:hover, .mfp-close:focus { opacity: 1; }

.mfp-close:active { top: 1px; }

.mfp-close-btn-in .mfp-close { color: #333; }

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close { color: #FFF; right: -6px; text-align: right; padding-right: 6px; width: 100%; }

.mfp-counter { position: absolute; top: 0; right: 0; color: #CCC; font-size: 12px; line-height: 18px; white-space: nowrap; }

.mfp-arrow { position: absolute; opacity: 0.65; margin: 0; top: 50%; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }

.mfp-arrow:active { margin-top: -54px; }

.mfp-arrow:hover, .mfp-arrow:focus { opacity: 1; }

.mfp-arrow:before, .mfp-arrow:after { content: ''; display: block; width: 0; height: 0; position: absolute; left: 0; top: 0; margin-top: 35px; margin-left: 35px; border: medium inset transparent; }

.mfp-arrow:after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }

.mfp-arrow:before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }

.mfp-arrow-left { left: 0; }

.mfp-arrow-left:after { border-right: 17px solid #FFF; margin-left: 31px; }

.mfp-arrow-left:before { margin-left: 25px; border-right: 27px solid #3F3F3F; }

.mfp-arrow-right { right: 0; }

.mfp-arrow-right:after { border-left: 17px solid #FFF; margin-left: 39px; }

.mfp-arrow-right:before { border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }

.mfp-iframe-holder .mfp-close { top: -40px; }

.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }

.mfp-iframe-scaler iframe { position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000; }

/* Main image in popup */
img.mfp-img { width: auto; max-width: 100%; height: auto; display: block; line-height: 0; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 40px 0 40px; margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure { line-height: 0; }

.mfp-figure:after { content: ''; position: absolute; left: 0; top: 40px; bottom: 40px; display: block; right: 0; width: auto; height: auto; z-index: -1; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444; }

.mfp-figure small { color: #BDBDBD; display: block; font-size: 12px; line-height: 14px; }

.mfp-figure figure { margin: 0; }

.mfp-bottom-bar { margin-top: -36px; position: absolute; top: 100%; left: 0; width: 100%; cursor: auto; }

.mfp-title { text-align: left; line-height: 18px; color: #F3F3F3; word-wrap: break-word; padding-right: 36px; }

.mfp-image-holder .mfp-content { max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) { /** Remove all paddings around the image on small screen */
  .mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
  .mfp-img-mobile img.mfp-img { padding: 0; }
  .mfp-img-mobile .mfp-figure:after { top: 0; bottom: 0; }
  .mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
  .mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
  .mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; } }

@media all and (max-width: 900px) { .mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
  .mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
  .mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%; }
  .mfp-container { padding-left: 6px; padding-right: 6px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9yLmNzcyIsInNvdXJjZXMiOlsidmVuZG9yLnNjc3MiLCJ2ZW5kb3IvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9yL19mb250cy5zY3NzIiwidmVuZG9yL19mb250ZWxsby5zY3NzIiwidmVuZG9yL19mb250ZWxsby12YXJpYWJsZXMuc2NzcyIsInZlbmRvci9fbGlnaHRzbGlkZXIuc2NzcyIsInZlbmRvci9fbWFnbmlmaWMuc2NzcyIsInZlbmRvci9fbWFnbmlmaWNfc2V0dGluZ3Muc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0XHJcbiAgJ3ZlbmRvci9ub3JtYWxpemUnLFxyXG4gICd2ZW5kb3IvZm9udHMnLFxuICAndmVuZG9yL2ZvbnRlbGxvJyxcbiAgJ3ZlbmRvci9saWdodHNsaWRlcicsXG4gICd2ZW5kb3IvbWFnbmlmaWMnO1xyXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHsgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vXG4vLyBGb250c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy9OT1RFOlxuLy8gQXQgc29tZSBwb2ludCwgSSBoYWQgcmVhZCB0aGF0IGl0J3MgYmV0dGVyIHVzaW5nIHRoZSA8bGluaz4gaW5zdGVhZFxuLy8gb2YgQGltcG9ydCBmb3IgR29vZ2xlIGZvbnRzLiAgU28gdGhlc2UgQGltcG9ydCBsaW5lcyBhcmUgY29tbWVudGVkLW91dCBoZXJlLlxuLy8gVGhlIGxpbmsgaXMgaW4gX21ldGEvMDAtaGVhZC5tdXN0YWNoZS5cbi8vIFNlZSBodHRwOi8vd3d3LnN0ZXZlc291ZGVycy5jb20vYmxvZy8yMDA5LzA0LzA5L2RvbnQtdXNlLWltcG9ydC8uXG5cbi8vICoqKiBVc2UgdGhpcyBmaWxlIG9ubHkgZm9yIG1hbnVhbCBAZm9udC1mYWNlIGRlY2xhcmF0aW9ucy4gKioqXG5cbi8vIE1vbnRzZXJyYXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL0BpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TW9udHNlcnJhdDozMDAsMzAwaSw0MDAsNDAwaSw1MDAsNTAwaSw3MDAnKTtcblxuXG4vLyBNZXJyaXdlYXRoZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL0BpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TWVycml3ZWF0aGVyOjMwMCwzMDBpLDQwMCw0MDBpLDcwMCw3MDBpJyk7XG4iLCJAaW1wb3J0ICd2ZW5kb3IvZm9udGVsbG8tdmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGVsbG8uZW90PyN7JGZvbnRlbGxvLXZlcnNpb259Jyk7XG4gIHNyYzogdXJsKCcuLi9mb250cy9mb250ZWxsby5lb3Q/I3skZm9udGVsbG8tdmVyc2lvbn0jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZWxsby53b2ZmMj8jeyRmb250ZWxsby12ZXJzaW9ufScpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLndvZmY/I3skZm9udGVsbG8tdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLnR0Zj8jeyRmb250ZWxsby12ZXJzaW9ufScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLnN2Zz8jeyRmb250ZWxsby12ZXJzaW9ufSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4uaWNvbiB7XG4gIC8vIFRoaXMgaXMgYmFzZWQgb24gZm9udGF3ZXNvbWUgLmZhIGNsYXNzXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIFwiZm9udGVsbG9cIjsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgLy8gVGhlIGZvbGxvd2luZyBmcm9tIGZvbnRlbGxvXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgd2lkdGg6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAvLyBGb3Igc2FmZXR5IC0gcmVzZXQgcGFyZW50IHN0eWxlcywgdGhhdCBjYW4gYnJlYWsgZ2x5cGggY29kZXNcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vLyBHZW5lcmF0ZSBpY29uIGNsYXNzZXNcbkBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGZvbnRlbGxvLWljb25zIHtcbiAgLmljb24tI3skbmFtZX06OmJlZm9yZSB7XG4gICAgY29udGVudDogJHZhbHVlO1xuICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kZm9udGVsbG8tdmVyc2lvbjogXCIxNzkwMzc4MlwiO1xuXG4vLzo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6XG5AZnVuY3Rpb24gZ2V0aWNvbigkbmFtZSkge1xuICBAcmV0dXJuIG1hcC1nZXQoJGZvbnRlbGxvLWljb25zLCAkbmFtZSk7XG59XG5cbiRmb250ZWxsby1pY29uczogKFxuICBcImFuZ2xlLWRvd25cIjogXCJcXGYxMDdcIixcbiAgXCJhbmdsZS1sZWZ0XCI6IFwiXFxmMTA0XCIsXG4gIFwiYW5nbGUtcmlnaHRcIjogXCJcXGYxMDVcIixcbiAgXCJhbmdsZS11cFwiOiBcIlxcZjEwNlwiLFxuICBcImJpZy1nYW1lXCI6IFwiXFxlODE1XCIsXG4gIFwiYmlub2N1bGFyc1wiOiBcIlxcZjFlNVwiLFxuICBcImNhbmNlbFwiOiBcIlxcZTgwNVwiLFxuICBcImNhbmNlbC1jaXJjbGVcIjogXCJcXGU4MDRcIixcbiAgXCJjaXJjbGUtZW1wdHlcIjogXCJcXGYxMGNcIixcbiAgXCJjbG9zZVwiOiBcIlxcZTgyNVwiLFxuICBcImNvbXBldGl0aXZlXCI6IFwiXFxlODFkXCIsXG4gIFwiZGVlclwiOiBcIlxcZTgxNFwiLFxuICBcImRvYy10ZXh0XCI6IFwiXFxmMGY2XCIsXG4gIFwiZG93blwiOiBcIlxcZjE3NVwiLFxuICBcImRvd25sb2FkXCI6IFwiXFxlODBjXCIsXG4gIFwiZmFjZWJvb2tcIjogXCJcXGYwOWFcIixcbiAgXCJmaXJlYXJtc1wiOiBcIlxcZTgyMlwiLFxuICBcImZvcndhcmRcIjogXCJcXGU4MGRcIixcbiAgXCJncmlkXCI6IFwiXFxlODEzXCIsXG4gIFwiaGFuZGd1blwiOiBcIlxcZTgxZVwiLFxuICBcImhlbHBcIjogXCJcXGYxMjhcIixcbiAgXCJpbnN0YWdyYW1cIjogXCJcXGYxNmRcIixcbiAgXCJsZWZ0XCI6IFwiXFxmMTc3XCIsXG4gIFwibGlzdFwiOiBcIlxcZTgxMlwiLFxuICBcImxvY2F0aW9uXCI6IFwiXFxlODAxXCIsXG4gIFwibWFpbFwiOiBcIlxcZTgxMVwiLFxuICBcIm1lbnVcIjogXCJcXGYwYzlcIixcbiAgXCJtb3JlLWhvcml6b250YWxcIjogXCJcXGU4MjRcIixcbiAgXCJtb3JlLXZlcnRpY2FsXCI6IFwiXFxlODIzXCIsXG4gIFwib2tcIjogXCJcXGU4MDZcIixcbiAgXCJvay1jaXJjbGVcIjogXCJcXGU4MDdcIixcbiAgXCJwZW5jaWxcIjogXCJcXGU4MTBcIixcbiAgXCJwZXJzb25hbC1kZWZlbnNlXCI6IFwiXFxlODFiXCIsXG4gIFwicGxheS1jaXJjbGUyXCI6IFwiXFxlODAyXCIsXG4gIFwicGx1c1wiOiBcIlxcZTgyNlwiLFxuICBcInBsdXMtY2lyY2xlXCI6IFwiXFxlODAzXCIsXG4gIFwicHJlZGF0b3ItdmFybWludFwiOiBcIlxcZTgxOFwiLFxuICBcInByaW50XCI6IFwiXFxlODA4XCIsXG4gIFwicmVjcmVhdGlvbmFsXCI6IFwiXFxlODFjXCIsXG4gIFwicmVzaXplLWZ1bGxcIjogXCJcXGU4MGVcIixcbiAgXCJyZXNpemUtc21hbGxcIjogXCJcXGU4MGZcIixcbiAgXCJyaWZsZVwiOiBcIlxcZTgxZlwiLFxuICBcInJpZ2h0XCI6IFwiXFxmMTc4XCIsXG4gIFwicmltZmlyZVwiOiBcIlxcZTgyMVwiLFxuICBcInNlYXJjaFwiOiBcIlxcZTgwOVwiLFxuICBcInNob3RzaGVsbFwiOiBcIlxcZTgyMFwiLFxuICBcInNsaWRlcnNcIjogXCJcXGYxZGVcIixcbiAgXCJzbWFsbC1nYW1lXCI6IFwiXFxlODE5XCIsXG4gIFwic3Rhci1lbXB0eVwiOiBcIlxcZTgwYlwiLFxuICBcInN1aXRjYXNlXCI6IFwiXFxmMGYyXCIsXG4gIFwidC1zaGlydFwiOiBcIlxcZTgwMFwiLFxuICBcInRhcmdldFwiOiBcIlxcZTgwYVwiLFxuICBcInRyYXNoXCI6IFwiXFxmMWY4XCIsXG4gIFwidHVya2V5XCI6IFwiXFxlODFhXCIsXG4gIFwidHdpdHRlclwiOiBcIlxcZjA5OVwiLFxuICBcInVwXCI6IFwiXFxmMTc2XCIsXG4gIFwidXBsYW5kXCI6IFwiXFxlODE3XCIsXG4gIFwid2F0ZXJmb3dsXCI6IFwiXFxlODE2XCIsXG4gIFwieW91dHViZS1wbGF5XCI6IFwiXFxmMTZhXCJcbik7XG4iLCIvKiEgbGlnaHRzbGlkZXIgLSB2MS4xLjYgLSAyMDE2LTEwLTI1XG4qIGh0dHBzOi8vZ2l0aHViLmNvbS9zYWNoaW5jaG9vbHVyL2xpZ2h0c2xpZGVyXG4qIENvcHlyaWdodCAoYykgMjAxNiBTYWNoaW4gTjsgTGljZW5zZWQgTUlUICovXG4vKiEgbGlnaHRzbGlkZXIgLSB2MS4xLjMgLSAyMDE1LTA0LTE0XG4qIGh0dHBzOi8vZ2l0aHViLmNvbS9zYWNoaW5jaG9vbHVyL2xpZ2h0c2xpZGVyXG4qIENvcHlyaWdodCAoYykgMjAxNSBTYWNoaW4gTjsgTGljZW5zZWQgTUlUICovXG4vKiogLyEhISBjb3JlIGNzcyBTaG91bGQgbm90IGVkaXQgISEhLyoqLyBcblxuLmxTU2xpZGVPdXRlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmVcbn1cbi5saWdodFNsaWRlcjpiZWZvcmUsIC5saWdodFNsaWRlcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG4ubGlnaHRTbGlkZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwO1xufVxuLmxTU2xpZGVXcmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZVdyYXBwZXIgPiAubGlnaHRTbGlkZXI6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuLmxTU2xpZGVXcmFwcGVyIC5sU1NsaWRlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtLGhlaWdodDtcbiAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IC1tb3otdHJhbnNmb3JtLGhlaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0saGVpZ2h0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcbn1cbi5sU1NsaWRlV3JhcHBlciAubFNGYWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZVdyYXBwZXIgLmxTRmFkZSA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLmxTU2xpZGVXcmFwcGVyLnVzaW5nQ3NzIC5sU0ZhZGUgPiAqIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuLmxTU2xpZGVXcmFwcGVyIC5sU0ZhZGUgPiAqLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTA7XG59XG4ubFNTbGlkZVdyYXBwZXIudXNpbmdDc3MgLmxTRmFkZSA+ICouYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLyoqIC8hISEgRW5kIG9mIGNvcmUgY3NzIFNob3VsZCBub3QgZWRpdCAhISEvKiovXG5cbi8qIFBhZ2VyICovXG4ubFNTbGlkZU91dGVyIC5sU1BhZ2VyLmxTcGcge1xuICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubFNTbGlkZU91dGVyIC5sU1BhZ2VyLmxTcGcgPiBsaSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDVweDtcbn1cbi5sU1NsaWRlT3V0ZXIgLmxTUGFnZXIubFNwZyA+IGxpIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWluZGVudDogLTk5OWVtO1xuICAgIHdpZHRoOiA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyIDBzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhciAwcztcbn1cbi5sU1NsaWRlT3V0ZXIgLmxTUGFnZXIubFNwZyA+IGxpOmhvdmVyIGEsIC5sU1NsaWRlT3V0ZXIgLmxTUGFnZXIubFNwZyA+IGxpLmFjdGl2ZSBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI4YmNhO1xufVxuLmxTU2xpZGVPdXRlciAubWVkaWEge1xuICAgIG9wYWNpdHk6IDAuODtcbn1cbi5sU1NsaWRlT3V0ZXIgLm1lZGlhLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cbi8qIEVuZCBvZiBwYWdlciAqL1xuXG4vKiogR2FsbGVyeSAqL1xuLmxTU2xpZGVPdXRlciAubFNQYWdlci5sU0dhbGxlcnkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZSBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1vei10cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmxTU2xpZGVPdXRlciAubFNQYWdlci5sU0dhbGxlcnkgbGkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItcmFkaXVzIDAuMTJzIGxpbmVhciAwcyAwLjM1cyBsaW5lYXIgMHM7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLXJhZGl1cyAwLjEycyBsaW5lYXIgMHMgMC4zNXMgbGluZWFyIDBzO1xufVxuLmxTU2xpZGVPdXRlciAubFNQYWdlci5sU0dhbGxlcnkgbGkuYWN0aXZlLCAubFNTbGlkZU91dGVyIC5sU1BhZ2VyLmxTR2FsbGVyeSBsaTpob3ZlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuLmxTU2xpZGVPdXRlciAubFNQYWdlci5sU0dhbGxlcnkgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLmxTU2xpZGVPdXRlciAubFNQYWdlci5sU0dhbGxlcnk6YmVmb3JlLCAubFNTbGlkZU91dGVyIC5sU1BhZ2VyLmxTR2FsbGVyeTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG4ubFNTbGlkZU91dGVyIC5sU1BhZ2VyLmxTR2FsbGVyeTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG4vKiBFbmQgb2YgR2FsbGVyeSovXG5cbi8qIHNsaWRlciBhY3Rpb25zICovXG4ubFNBY3Rpb24gPiBhIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDUwJTtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY29udHJvbHMucG5nJyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGxpbmVhciAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGxpbmVhciAwcztcbn1cbi5sU0FjdGlvbiA+IGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG59XG4ubFNBY3Rpb24gPiAubFNQcmV2IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgbGVmdDogMTBweDtcbn1cbi5sU0FjdGlvbiA+IC5sU05leHQge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IDA7XG4gICAgcmlnaHQ6IDEwcHg7XG59XG4ubFNBY3Rpb24gPiBhLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5jUy1oaWRkZW4ge1xuICAgIGhlaWdodDogMXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLyogdmVydGljYWwgKi9cbi5sU1NsaWRlT3V0ZXIudmVydGljYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sU1NsaWRlT3V0ZXIudmVydGljYWwubm9QYWdlciB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG4ubFNTbGlkZU91dGVyLnZlcnRpY2FsIC5sU0dhbGxlcnkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbn1cbi5sU1NsaWRlT3V0ZXIudmVydGljYWwgLmxpZ2h0U2xpZGVyID4gKiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogdmVydGljYWwgY29udHJvbGxzICovXG4ubFNTbGlkZU91dGVyLnZlcnRpY2FsIC5sU0FjdGlvbiA+IGEge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTE0cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cbi5sU1NsaWRlT3V0ZXIudmVydGljYWwgLmxTQWN0aW9uID4gLmxTTmV4dCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMzFweCAtMzFweDtcbiAgICBib3R0b206IDEwcHg7XG4gICAgdG9wOiBhdXRvO1xufVxuLmxTU2xpZGVPdXRlci52ZXJ0aWNhbCAubFNBY3Rpb24gPiAubFNQcmV2IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMXB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwcHg7XG59XG4vKiB2ZXJ0aWNhbCAqL1xuXG5cbi8qIFJ0bCAqL1xuLmxTU2xpZGVPdXRlci5sU3J0bCB7XG4gICAgZGlyZWN0aW9uOiBydGw7XG59XG4ubFNTbGlkZU91dGVyIC5saWdodFNsaWRlciwgLmxTU2xpZGVPdXRlciAubFNQYWdlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZSBub25lO1xufVxuLmxTU2xpZGVPdXRlci5sU3J0bCAubGlnaHRTbGlkZXIsIC5sU1NsaWRlT3V0ZXIubFNydGwgLmxTUGFnZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4ubFNTbGlkZU91dGVyIC5saWdodFNsaWRlciA+ICosICAubFNTbGlkZU91dGVyIC5sU0dhbGxlcnkgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuLmxTU2xpZGVPdXRlci5sU3J0bCAubGlnaHRTbGlkZXIgPiAqLCAgLmxTU2xpZGVPdXRlci5sU3J0bCAubFNHYWxsZXJ5IGxpIHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi8qIFJ0bCAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmlnaHRFbmQge1xuICAgIDAlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIHJpZ2h0RW5kIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHRvcEVuZCB7XG4gICAgMCUge1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdG9wOiAtMTVweDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgdG9wRW5kIHtcbiAgICAwJSB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0b3A6IC0xNXB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGxlZnRFbmQge1xuICAgIDAlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgbGVmdEVuZCB7XG4gICAgMCUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdHRvbUVuZCB7XG4gICAgMCUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgYm90dG9tOiAtMTVweDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgYm90dG9tRW5kIHtcbiAgICAwJSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBib3R0b206IC0xNXB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxufVxuLmxTU2xpZGVPdXRlciAucmlnaHRFbmQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiByaWdodEVuZCAwLjNzO1xuICAgIGFuaW1hdGlvbjogcmlnaHRFbmQgMC4zcztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZU91dGVyIC5sZWZ0RW5kIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogbGVmdEVuZCAwLjNzO1xuICAgIGFuaW1hdGlvbjogbGVmdEVuZCAwLjNzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sU1NsaWRlT3V0ZXIudmVydGljYWwgLnJpZ2h0RW5kIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdG9wRW5kIDAuM3M7XG4gICAgYW5pbWF0aW9uOiB0b3BFbmQgMC4zcztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZU91dGVyLnZlcnRpY2FsIC5sZWZ0RW5kIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYm90dG9tRW5kIDAuM3M7XG4gICAgYW5pbWF0aW9uOiBib3R0b21FbmQgMC4zcztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZU91dGVyLmxTcnRsIC5yaWdodEVuZCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGxlZnRFbmQgMC4zcztcbiAgICBhbmltYXRpb246IGxlZnRFbmQgMC4zcztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubFNTbGlkZU91dGVyLmxTcnRsIC5sZWZ0RW5kIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogcmlnaHRFbmQgMC4zcztcbiAgICBhbmltYXRpb246IHJpZ2h0RW5kIDAuM3M7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLyovICBHUmFiIGN1cnNvciAqL1xuLmxpZ2h0U2xpZGVyLmxzR3JhYiA+ICoge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuLmxpZ2h0U2xpZGVyLmxzR3JhYmJpbmcgPiAqIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtby1ncmFiYmluZztcbiAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59IiwiLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG5cbkBpbXBvcnQgXCJtYWduaWZpY19zZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vXG4vLyBDb250ZW50czpcbi8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8gICAgLSBUcmFuc2x1c2NlbnQgb3ZlcmxheVxuLy8gICAgLSBDb250YWluZXJzLCB3cmFwcGVyc1xuLy8gICAgLSBDdXJzb3JzXG4vLyAgICAtIEhlbHBlciBjbGFzc2VzXG4vLyAyLiBBcHBlYXJhbmNlXG4vLyAgICAtIFByZWxvYWRlciAmIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLy8gICAgLSBDU1MgcmVzZXQgZm9yIGJ1dHRvbnNcbi8vICAgIC0gQ2xvc2UgaWNvblxuLy8gICAgLSBcIjEgb2YgWFwiIGNvdW50ZXJcbi8vICAgIC0gTmF2aWdhdGlvbiAobGVmdC9yaWdodCkgYXJyb3dzXG4vLyAgICAtIElmcmFtZSBjb250ZW50IHR5cGUgc3R5bGVzXG4vLyAgICAtIEltYWdlIGNvbnRlbnQgdHlwZSBzdHlsZXNcbi8vICAgIC0gTWVkaWEgcXVlcnkgd2hlcmUgc2l6ZSBvZiBhcnJvd3MgaXMgcmVkdWNlZFxuLy8gICAgLSBJRTcgc3VwcG9ydFxuLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIFRyYW5zbHVzY2VudCBvdmVybGF5XG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcblxuICBiYWNrZ3JvdW5kOiAkbWZwLW92ZXJsYXktY29sb3I7XG4gIG9wYWNpdHk6ICRtZnAtb3ZlcmxheS1vcGFjaXR5O1xufVxuXG4vLyBXcmFwcGVyIGZvciBwb3B1cFxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLy8gZml4ZXMgd2Via2l0IGJ1ZyB0aGF0IGNhbiBjYXVzZSBcImZhbHNlXCIgc2Nyb2xsYmFyXG59XG5cbi8vIFJvb3QgY29udGFpbmVyXG4ubWZwLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDAgJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIFZlcnRpY2FsIGNlbnRlcmVyIGhlbHBlclxuLm1mcC1jb250YWluZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi8vIFJlbW92ZSB2ZXJ0aWNhbCBjZW50ZXJpbmcgd2hlbiBwb3B1cCBoYXMgY2xhc3MgYG1mcC1hbGlnbi10b3BgXG4ubWZwLWFsaWduLXRvcCB7XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQb3B1cCBjb250ZW50IGhvbGRlclxuLm1mcC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDU7XG59XG4ubWZwLWlubGluZS1ob2xkZXIsXG4ubWZwLWFqYXgtaG9sZGVyIHtcbiAgLm1mcC1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLy8gQ3Vyc29yc1xuLm1mcC1hamF4LWN1ciB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG4ubWZwLXpvb20tb3V0LWN1ciB7XG4gICYsIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICAgIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbiAgfVxufVxuLm1mcC16b29tIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cbi5tZnAtYXV0by1jdXJzb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxufVxuXG4ubWZwLWNsb3NlLFxuLm1mcC1hcnJvdyxcbi5tZnAtcHJlbG9hZGVyLFxuLm1mcC1jb3VudGVyIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8gSGlkZSB0aGUgaW1hZ2UgZHVyaW5nIHRoZSBsb2FkaW5nXG4ubWZwLWxvYWRpbmcge1xuICAmLm1mcC1maWd1cmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gSGVscGVyIGNsYXNzIHRoYXQgaGlkZXMgc3R1ZmZcbkBpZiAkbWZwLXVzZS12aXN1YWxseWhpZGRlbiB7XG4gIC8vIEZyb20gSFRNTDUgQm9pbGVycGxhdGUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi92NC4yLjAvZG9jL2Nzcy5tZCN2aXN1YWxseWhpZGRlblxuICAubWZwLWhpZGUge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB9XG59IEBlbHNlIHtcbiAgLm1mcC1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIDIuIEFwcGVhcmFuY2Vcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBQcmVsb2FkZXIgYW5kIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLm1mcC1wcmVsb2FkZXIge1xuICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMC44ZW07XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyA0O1xuICBhIHtcbiAgICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGlkZSBwcmVsb2FkZXIgd2hlbiBjb250ZW50IHN1Y2Nlc3NmdWxseSBsb2FkZWRcbi5tZnAtcy1yZWFkeSB7XG4gIC5tZnAtcHJlbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIEhpZGUgY29udGVudCB3aGVuIGl0IHdhcyBub3QgbG9hZGVkXG4ubWZwLXMtZXJyb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gQ1NTLXJlc2V0IGZvciBidXR0b25zXG5idXR0b24ge1xuICAmLm1mcC1jbG9zZSxcbiAgJi5tZnAtYXJyb3cge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgfVxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDBcbiAgfVxufVxuXG5cbi8vIENsb3NlIGljb25cbi5tZnAtY2xvc2Uge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkbWZwLWNvbnRyb2xzLW9wYWNpdHk7XG4gIHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7XG4gIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0b3A6IDFweDtcbiAgfVxufVxuLm1mcC1jbG9zZS1idG4taW4ge1xuICAubWZwLWNsb3NlIHtcbiAgICBjb2xvcjogJG1mcC1pbm5lci1jbG9zZS1pY29uLWNvbG9yO1xuICB9XG59XG4ubWZwLWltYWdlLWhvbGRlcixcbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIC5tZnAtY2xvc2Uge1xuICAgIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuICAgIHJpZ2h0OiAtNnB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBcIjEgb2YgWFwiIGNvdW50ZXJcbi5tZnAtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gTmF2aWdhdGlvbiBhcnJvd3NcbkBpZiAkbWZwLWluY2x1ZGUtYXJyb3dzIHtcbiAgLm1mcC1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6ICRtZnAtY29udHJvbHMtb3BhY2l0eTtcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTU1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtNTRweDtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMTNweDtcbiAgICAgIHRvcDo4cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMjFweDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIxcHg7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG4gIH1cblxuICAubWZwLWFycm93LWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgJG1mcC1jb250cm9scy1jb2xvcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICRtZnAtY29udHJvbHMtY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMzlweFxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItbGVmdDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIElmcmFtZSBjb250ZW50IHR5cGVcbkBpZiAkbWZwLWluY2x1ZGUtaWZyYW1lLXR5cGUge1xuICAubWZwLWlmcmFtZS1ob2xkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1wYWRkaW5nLXRvcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJG1mcC1pZnJhbWUtcGFkZGluZy10b3A7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6ICRtZnAtaWZyYW1lLW1heC13aWR0aDtcbiAgICB9XG4gICAgLm1mcC1jbG9zZSB7XG4gICAgICB0b3A6IC00MHB4O1xuICAgIH1cbiAgfVxuICAubWZwLWlmcmFtZS1zY2FsZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1yYXRpbyAqIDEwMCU7XG4gICAgaWZyYW1lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWlmcmFtZS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gSW1hZ2UgY29udGVudCB0eXBlXG5AaWYgJG1mcC1pbmNsdWRlLWltYWdlLXR5cGUge1xuXG4gIC8qIE1haW4gaW1hZ2UgaW4gcG9wdXAgKi9cbiAgaW1nIHtcbiAgICAmLm1mcC1pbWcge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBhZGRpbmc6ICRtZnAtaW1hZ2UtcGFkZGluZy10b3AgMCAkbWZwLWltYWdlLXBhZGRpbmctYm90dG9tO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovXG4gIC5tZnAtZmlndXJlIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogJG1mcC1pbWFnZS1wYWRkaW5nLXRvcDtcbiAgICAgIGJvdHRvbTogJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWltYWdlLWJhY2tncm91bmQ7XG4gICAgfVxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiAkbWZwLWNhcHRpb24tc3VidGl0bGUtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIH1cbiAgICBmaWd1cmUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAubWZwLWJvdHRvbS1iYXIge1xuICAgIG1hcmdpbi10b3A6IC0kbWZwLWltYWdlLXBhZGRpbmctYm90dG9tICsgNDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG4gIC5tZnAtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgY29sb3I6ICRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgcGFkZGluZy1yaWdodDogMzZweDsgLy8gbGVhdmUgc29tZSBzcGFjZSBmb3IgY291bnRlciBhdCByaWdodCBzaWRlXG4gIH1cblxuICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubWZwLWdhbGxlcnkge1xuICAgIC5tZnAtaW1hZ2UtaG9sZGVyIHtcbiAgICAgIC5tZnAtZmlndXJlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgQGlmICRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzAwcHgpIHtcbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlblxuICAgICAgICovXG4gICAgICAubWZwLWltZy1tb2JpbGUge1xuICAgICAgICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAmLm1mcC1pbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1maWd1cmUge1xuICAgICAgICAgIC8vIFRoZSBzaGFkb3cgYmVoaW5kIHRoZSBpbWFnZVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZwLWJvdHRvbS1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC42KTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1jb3VudGVyIHtcbiAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICB9XG4gICAgICAgIC5tZnAtY2xvc2Uge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gU2NhbGUgbmF2aWdhdGlvbiBhcnJvd3MgYW5kIHJlZHVjZSBwYWRkaW5nIGZyb20gc2lkZXNcbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5tZnAtYXJyb3cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB9XG4gIC5tZnAtYXJyb3ctbGVmdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7XG4gIH1cbiAgLm1mcC1hcnJvdy1yaWdodCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gIH1cbiAgLm1mcC1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQtbW9iaWxlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTtcbiAgfVxufVxuXG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vICAgICAgU2V0dGluZ3MgICAgICAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIG92ZXJsYXlcbiRtZnAtb3ZlcmxheS1jb2xvcjogICAgICAgICAgICAgICAgICAgIzBiMGIwYiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLW92ZXJsYXktb3BhY2l0eTogICAgICAgICAgICAgICAgIDAuOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgIDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpICFkZWZhdWx0OyAvLyBTaGFkb3cgb24gaW1hZ2Ugb3IgaWZyYW1lXG5cbi8vIHNwYWNpbmdcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgOHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhZGRpbmcgZnJvbSBsZWZ0IGFuZCBmcm9tIHJpZ2h0IHNpZGVcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTogICAgICAgNnB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNhbWUgYXMgYWJvdmUsIGJ1dCBpcyBhcHBsaWVkIHdoZW4gd2lkdGggb2Ygd2luZG93IGlzIGxlc3MgdGhhbiA4MDBweFxuXG4kbWZwLXotaW5kZXgtYmFzZTogICAgICAgICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYXNlIHotaW5kZXggb2YgcG9wdXBcblxuLy8gY29udHJvbHNcbiRtZnAtaW5jbHVkZS1hcnJvd3M6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEluY2x1ZGUgc3R5bGVzIGZvciBuYXYgYXJyb3dzXG4kbWZwLWNvbnRyb2xzLW9wYWNpdHk6ICAgICAgICAgICAgICAgIDAuNjUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIGNvbnRyb2xzXG4kbWZwLWNvbnRyb2xzLWNvbG9yOiAgICAgICAgICAgICAgICAgICNGRkYgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjb250cm9sc1xuJG1mcC1jb250cm9scy1ib3JkZXItY29sb3I6ICAgICAgICAgICAjM0YzRjNGICFkZWZhdWx0OyBcdCAgICAgICAgICAgICAgICAgLy8gQm9yZGVyIGNvbG9yIG9mIGNvbnRyb2xzXG4kbWZwLWlubmVyLWNsb3NlLWljb24tY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjbG9zZSBidXR0b24gd2hlbiBpbnNpZGVcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjogICAgICAgICAgICAgI0NDQyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjogICAgICAgI0ZGRiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEhvdmVyIGNvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcblxuLy8gSWZyYW1lLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWlmcmFtZS10eXBlOiAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIElmcmFtZS10eXBlIHBvcHVwc1xuJG1mcC1pZnJhbWUtcGFkZGluZy10b3A6ICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSWZyYW1lIHBhZGRpbmcgdG9wXG4kbWZwLWlmcmFtZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGlmcmFtZXNcbiRtZnAtaWZyYW1lLW1heC13aWR0aDogICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vIE1heGltdW0gd2lkdGggb2YgaWZyYW1lc1xuJG1mcC1pZnJhbWUtcmF0aW86ICAgICAgICAgICAgICAgICAgICA5LzE2ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gUmF0aW8gb2YgaWZyYW1lICg5LzE2ID0gd2lkZXNjcmVlbiwgMy80ID0gc3RhbmRhcmQsIGV0Yy4pXG5cbi8vIEltYWdlLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWltYWdlLXR5cGU6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIEltYWdlLXR5cGUgcG9wdXBzXG4kbWZwLWltYWdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbWZwLWltYWdlLXBhZGRpbmctdG9wOiAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbWFnZSBwYWRkaW5nIHRvcFxuJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTogICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSW1hZ2UgcGFkZGluZyBib3R0b21cbiRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZTogdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlbW92ZXMgcGFkZGluZ3MgZnJvbSB0b3AgYW5kIGJvdHRvbVxuXG4vLyBJbWFnZSBjYXB0aW9uIG9wdGlvbnNcbiRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgI0YzRjNGMyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gdGl0bGUgY29sb3JcbiRtZnAtY2FwdGlvbi1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgI0JEQkRCRCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gc3VidGl0bGUgY29sb3JcblxuLy8gQTExeVxuJG1mcC11c2UtdmlzdWFsbHloaWRkZW46ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgLy8gSGlkZSBjb250ZW50IGZyb20gYnJvd3NlcnMsIGJ1dCBtYWtlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDQUEsNEVBQTRFO0FBRTVFLHlGQUNnRjtBQUVoRixtSkFJRztBQUVILEFBQUEsSUFBSSxDQUFDLEVBQ0gsV0FBVyxFQUFFLElBQUksRUFBRyxPQUFPLENBQzNCLG9CQUFvQixFQUFFLElBQUksRUFBRyxPQUFPLENBQ3BDLHdCQUF3QixFQUFFLElBQUksRUFBRyxPQUFPLEVBQ3pDOztBQUVELHlGQUNnRjtBQUVo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 */
