From 6e66cfdf37c1955c48f5bc5ba378f928d4d57384 Mon Sep 17 00:00:00 2001 From: Winston Chang Date: Fri, 26 Apr 2024 15:51:57 -0500 Subject: [PATCH] Update shiny.js --- shiny/www/shared/_version.json | 2 +- shiny/www/shared/bootstrap/_version.json | 2 +- shiny/www/shared/bootstrap/bootstrap.min.css | 2 -- shiny/www/shared/ionrangeslider/css/ion.rangeSlider.css | 2 -- shiny/www/shared/shiny.js | 6 +++--- shiny/www/shared/shiny.js.map | 4 ++-- shiny/www/shared/shiny.min.js | 2 +- shiny/www/shared/shiny.min.js.map | 4 ++-- 8 files changed, 10 insertions(+), 14 deletions(-) diff --git a/shiny/www/shared/_version.json b/shiny/www/shared/_version.json index 8afb16b01..0db4b2569 100644 --- a/shiny/www/shared/_version.json +++ b/shiny/www/shared/_version.json @@ -1,5 +1,5 @@ { "note!": "This file is auto-generated by scripts/htmlDependencies.R", "package": "shiny", - "version": "Github (rstudio/shiny@3edf9bfad8ad69a93f744a4f63447442d23e7c9a)" + "version": "Github (rstudio/shiny@950c63049b37cb3156bf134fa4ff13ad3cedee48)" } diff --git a/shiny/www/shared/bootstrap/_version.json b/shiny/www/shared/bootstrap/_version.json index e6a5edd69..3a4f0d1de 100644 --- a/shiny/www/shared/bootstrap/_version.json +++ b/shiny/www/shared/bootstrap/_version.json @@ -1,6 +1,6 @@ { "note!": "This file is auto-generated by scripts/htmlDependencies.R", - "shiny_version": "Github (rstudio/shiny@3edf9bfad8ad69a93f744a4f63447442d23e7c9a)", + "shiny_version": "Github (rstudio/shiny@950c63049b37cb3156bf134fa4ff13ad3cedee48)", "bslib_version": "Github (rstudio/bslib@2c87d0c8753d003fef66858235ead8c9206aefa9)", "htmltools_version": "Github (rstudio/htmltools@038ef7be3b02a9248f122b745ad7830cc429d437)", "bootstrap_version": "5.3.1" diff --git a/shiny/www/shared/bootstrap/bootstrap.min.css b/shiny/www/shared/bootstrap/bootstrap.min.css index 4e8d3d64d..0a67bde9b 100644 --- a/shiny/www/shared/bootstrap/bootstrap.min.css +++ b/shiny/www/shared/bootstrap/bootstrap.min.css @@ -3,5 +3,3 @@ * Copyright 2011-2023 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */:root,[data-bs-theme="light"]{--bs-blue: #007bc2;--bs-indigo: #4b00c1;--bs-purple: #74149c;--bs-pink: #bf007f;--bs-red: #c10000;--bs-orange: #f45100;--bs-yellow: #f9b928;--bs-green: #00891a;--bs-teal: #00bf7f;--bs-cyan: #03c7e8;--bs-black: #000;--bs-white: #fff;--bs-gray: #707782;--bs-gray-dark: #343A46;--bs-gray-100: #f8f8f8;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #cdd4da;--bs-gray-500: #8D959E;--bs-gray-600: #707782;--bs-gray-700: #48505F;--bs-gray-800: #343A46;--bs-gray-900: #1D1F21;--bs-default: #dee2e6;--bs-primary: #007bc2;--bs-secondary: #404040;--bs-success: #00891a;--bs-info: #03c7e8;--bs-warning: #f9b928;--bs-danger: #c10000;--bs-light: #f8f8f8;--bs-dark: #202020;--bs-default-rgb: 222,226,230;--bs-primary-rgb: 0,123,194;--bs-secondary-rgb: 64,64,64;--bs-success-rgb: 0,137,26;--bs-info-rgb: 3,199,232;--bs-warning-rgb: 249,185,40;--bs-danger-rgb: 193,0,0;--bs-light-rgb: 248,248,248;--bs-dark-rgb: 32,32,32;--bs-primary-text-emphasis: #00314e;--bs-secondary-text-emphasis: #1a1a1a;--bs-success-text-emphasis: #00370a;--bs-info-text-emphasis: #01505d;--bs-warning-text-emphasis: #644a10;--bs-danger-text-emphasis: #4d0000;--bs-light-text-emphasis: #48505F;--bs-dark-text-emphasis: #48505F;--bs-primary-bg-subtle: #cce5f3;--bs-secondary-bg-subtle: #d9d9d9;--bs-success-bg-subtle: #cce7d1;--bs-info-bg-subtle: #cdf4fa;--bs-warning-bg-subtle: #fef1d4;--bs-danger-bg-subtle: #f3cccc;--bs-light-bg-subtle: #fcfcfc;--bs-dark-bg-subtle: #cdd4da;--bs-primary-border-subtle: #99cae7;--bs-secondary-border-subtle: #b3b3b3;--bs-success-border-subtle: #99d0a3;--bs-info-border-subtle: #9ae9f6;--bs-warning-border-subtle: #fde3a9;--bs-danger-border-subtle: #e69999;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #8D959E;--bs-white-rgb: 255,255,255;--bs-black-rgb: 0,0,0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255,255,255,0.15), rgba(255,255,255,0));--bs-body-font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #1D1F21;--bs-body-color-rgb: 29,31,33;--bs-body-bg: #fff;--bs-body-bg-rgb: 255,255,255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0,0,0;--bs-secondary-color: rgba(29,31,33,0.75);--bs-secondary-color-rgb: 29,31,33;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233,236,239;--bs-tertiary-color: rgba(29,31,33,0.5);--bs-tertiary-color-rgb: 29,31,33;--bs-tertiary-bg: #f8f8f8;--bs-tertiary-bg-rgb: 248,248,248;--bs-heading-color: inherit;--bs-link-color: #007bc2;--bs-link-color-rgb: 0,123,194;--bs-link-decoration: underline;--bs-link-hover-color: #00629b;--bs-link-hover-color-rgb: 0,98,155;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-highlight-bg: #fef1d4;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(40,70,94,0.1);--bs-border-radius: 3px;--bs-border-radius-sm: .25rem;--bs-border-radius-lg: .5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08);--bs-box-shadow-sm: 0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16);--bs-box-shadow-lg: 0px 4px 10px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.17);--bs-box-shadow-inset: inset 0 1px 2px rgba(0,0,0,0.075);--bs-focus-ring-width: .25rem;--bs-focus-ring-opacity: .25;--bs-focus-ring-color: rgba(0,123,194,0.25);--bs-form-valid-color: #00891a;--bs-form-valid-border-color: #00891a;--bs-form-invalid-color: #c10000;--bs-form-invalid-border-color: #c10000}[data-bs-theme="dark"]{color-scheme:dark;--bs-body-color: #dee2e6;--bs-body-color-rgb: 222,226,230;--bs-body-bg: #1D1F21;--bs-body-bg-rgb: 29,31,33;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255,255,255;--bs-secondary-color: rgba(222,226,230,0.75);--bs-secondary-color-rgb: 222,226,230;--bs-secondary-bg: #343A46;--bs-secondary-bg-rgb: 52,58,70;--bs-tertiary-color: rgba(222,226,230,0.5);--bs-tertiary-color-rgb: 222,226,230;--bs-tertiary-bg: #292d34;--bs-tertiary-bg-rgb: 41,45,52;--bs-primary-text-emphasis: #66b0da;--bs-secondary-text-emphasis: #8c8c8c;--bs-success-text-emphasis: #66b876;--bs-info-text-emphasis: #68ddf1;--bs-warning-text-emphasis: #fbd57e;--bs-danger-text-emphasis: #da6666;--bs-light-text-emphasis: #f8f8f8;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #001927;--bs-secondary-bg-subtle: #0d0d0d;--bs-success-bg-subtle: #001b05;--bs-info-bg-subtle: #01282e;--bs-warning-bg-subtle: #322508;--bs-danger-bg-subtle: #270000;--bs-light-bg-subtle: #343A46;--bs-dark-bg-subtle: #1a1d23;--bs-primary-border-subtle: #004a74;--bs-secondary-border-subtle: #262626;--bs-success-border-subtle: #005210;--bs-info-border-subtle: #02778b;--bs-warning-border-subtle: #956f18;--bs-danger-border-subtle: #740000;--bs-light-border-subtle: #48505F;--bs-dark-border-subtle: #343A46;--bs-heading-color: inherit;--bs-link-color: #66b0da;--bs-link-hover-color: #85c0e1;--bs-link-color-rgb: 102,176,218;--bs-link-hover-color-rgb: 133,192,225;--bs-code-color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));--bs-border-color: #495057;--bs-border-color-translucent: rgba(255,255,255,0.1);--bs-form-valid-color: #66b876;--bs-form-valid-border-color: #66b876;--bs-form-invalid-color: #da6666;--bs-form-invalid-border-color: #da6666}*,*::before,*::after{box-sizing:border-box}@media (prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:2rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:400;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.335rem + 1.02vw)}@media (min-width: 1200px){h1,.h1{font-size:2.1rem}}h2,.h2{font-size:calc(1.325rem + .9vw)}@media (min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + .6vw)}@media (min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + .3vw)}@media (min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #e9ecef}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em;color:RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);padding:.5rem;border:1px solid var(--bs-border-color, #dee2e6);border-radius:3px}pre code{background-color:transparent;font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04);border-radius:3px;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role="button"]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator{display:none !important}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#707782}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){.container-sm,.container{max-width:540px}}@media (min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media (min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media (min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media (min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;-webkit-flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media (min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media (min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media (min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media (min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media (min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.col{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: .25rem}.g-1,.gy-1{--bs-gutter-y: .25rem}.g-2,.gx-2{--bs-gutter-x: .5rem}.g-2,.gy-2{--bs-gutter-y: .5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media (min-width: 576px){.col-sm{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-sm-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-sm-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-sm-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-sm-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-sm-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-sm-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-sm-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-sm-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-sm-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media (min-width: 768px){.col-md{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-md-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-md-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-md-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-md-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-md-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-md-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-md-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-md-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-md-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: .25rem}.g-md-1,.gy-md-1{--bs-gutter-y: .25rem}.g-md-2,.gx-md-2{--bs-gutter-x: .5rem}.g-md-2,.gy-md-2{--bs-gutter-y: .5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media (min-width: 992px){.col-lg{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-lg-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-lg-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-lg-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-lg-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-lg-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-lg-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-lg-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-lg-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-lg-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media (min-width: 1200px){.col-xl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media (min-width: 1400px){.col-xxl{flex:1 0 0%;-webkit-flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.row-cols-xxl-4>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-auto{flex:0 0 auto;-webkit-flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;-webkit-flex:0 0 auto;width:8.33333%}.col-xxl-2{flex:0 0 auto;-webkit-flex:0 0 auto;width:16.66667%}.col-xxl-3{flex:0 0 auto;-webkit-flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;-webkit-flex:0 0 auto;width:33.33333%}.col-xxl-5{flex:0 0 auto;-webkit-flex:0 0 auto;width:41.66667%}.col-xxl-6{flex:0 0 auto;-webkit-flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;-webkit-flex:0 0 auto;width:58.33333%}.col-xxl-8{flex:0 0 auto;-webkit-flex:0 0 auto;width:66.66667%}.col-xxl-9{flex:0 0 auto;-webkit-flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;-webkit-flex:0 0 auto;width:83.33333%}.col-xxl-11{flex:0 0 auto;-webkit-flex:0 0 auto;width:91.66667%}.col-xxl-12{flex:0 0 auto;-webkit-flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333%}.offset-xxl-2{margin-left:16.66667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333%}.offset-xxl-5{margin-left:41.66667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333%}.offset-xxl-8{margin-left:66.66667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333%}.offset-xxl-11{margin-left:91.66667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-body-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: rgba(0,0,0,0);--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0,123,194,0.06);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0,0,0,0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0,123,194,0.1);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(even)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cce5f3;--bs-table-border-color: #b8cedb;--bs-table-striped-bg: #c2dae7;--bs-table-striped-color: #000;--bs-table-active-bg: #b8cedb;--bs-table-active-color: #000;--bs-table-hover-bg: #bdd4e1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #d9d9d9;--bs-table-border-color: #c3c3c3;--bs-table-striped-bg: #cecece;--bs-table-striped-color: #000;--bs-table-active-bg: #c3c3c3;--bs-table-active-color: #000;--bs-table-hover-bg: #c9c9c9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #cce7d1;--bs-table-border-color: #b8d0bc;--bs-table-striped-bg: #c2dbc7;--bs-table-striped-color: #000;--bs-table-active-bg: #b8d0bc;--bs-table-active-color: #000;--bs-table-hover-bg: #bdd6c1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cdf4fa;--bs-table-border-color: #b9dce1;--bs-table-striped-bg: #c3e8ee;--bs-table-striped-color: #000;--bs-table-active-bg: #b9dce1;--bs-table-active-color: #000;--bs-table-hover-bg: #bee2e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fef1d4;--bs-table-border-color: #e5d9bf;--bs-table-striped-bg: #f1e5c9;--bs-table-striped-color: #000;--bs-table-active-bg: #e5d9bf;--bs-table-active-color: #000;--bs-table-hover-bg: #ebdfc4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f3cccc;--bs-table-border-color: #dbb8b8;--bs-table-striped-bg: #e7c2c2;--bs-table-striped-color: #000;--bs-table-active-bg: #dbb8b8;--bs-table-active-color: #000;--bs-table-hover-bg: #e1bdbd;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f8f8;--bs-table-border-color: #dfdfdf;--bs-table-striped-bg: #ececec;--bs-table-striped-color: #000;--bs-table-active-bg: #dfdfdf;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e5e5;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #202020;--bs-table-border-color: #363636;--bs-table-striped-bg: #2b2b2b;--bs-table-striped-color: #fff;--bs-table-active-bg: #363636;--bs-table-active-color: #fff;--bs-table-hover-bg: #313131;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text,.help-text,.help-block{margin-top:.25rem;font-size:.875em;color:#707782}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:.9375rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid #8D959E;border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type="file"]{overflow:hidden}.form-control[type="file"]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#80bde1;outline:0;box-shadow:0 0 0 .25rem rgba(0,123,194,0.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343A46' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:.9375rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid #8D959E;border-radius:var(--bs-border-radius);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#80bde1;outline:0;box-shadow:0 0 0 .25rem rgba(0,123,194,0.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme="dark"] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.25rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-reverse{padding-right:0;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:0;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{--bs-form-check-bg: var(--bs-body-bg);width:1.2em;height:1.2em;margin-top:.15em;vertical-align:top;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid #8D959E;print-color-adjust:exact}.form-check-input[type="checkbox"],.shiny-input-container .checkbox input[type="checkbox"],.shiny-input-container .checkbox-inline input[type="checkbox"],.shiny-input-container .radio input[type="checkbox"],.shiny-input-container .radio-inline input[type="checkbox"]{border-radius:2px}.form-check-input[type="radio"],.shiny-input-container .checkbox input[type="radio"],.shiny-input-container .checkbox-inline input[type="radio"],.shiny-input-container .radio input[type="radio"],.shiny-input-container .radio-inline input[type="radio"]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#80bde1;outline:0;box-shadow:0 0 0 .25rem rgba(0,123,194,0.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#007bc2;border-color:#007bc2}.form-check-input:checked[type="checkbox"],.shiny-input-container .checkbox input:checked[type="checkbox"],.shiny-input-container .checkbox-inline input:checked[type="checkbox"],.shiny-input-container .radio input:checked[type="checkbox"],.shiny-input-container .radio-inline input:checked[type="checkbox"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type="radio"],.shiny-input-container .checkbox input:checked[type="radio"],.shiny-input-container .checkbox-inline input:checked[type="radio"],.shiny-input-container .radio input:checked[type="radio"],.shiny-input-container .radio-inline input:checked[type="radio"]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox input[type="checkbox"]:indeterminate,.shiny-input-container .checkbox-inline input[type="checkbox"]:indeterminate,.shiny-input-container .radio input[type="checkbox"]:indeterminate,.shiny-input-container .radio-inline input[type="checkbox"]:indeterminate{background-color:#007bc2;border-color:#007bc2;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{cursor:default;opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280,0,0,0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2380bde1'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255,255,255,0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(0,123,194,0.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(0,123,194,0.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#007bc2;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b3d7ed}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#007bc2;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b3d7ed}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity 0.1s ease-in-out,transform 0.1s ease-in-out}@media (prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:transparent}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), .65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label,.form-floating>.form-control:disabled~label{color:#707782}.form-floating>:disabled~label::after,.form-floating>.form-control:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:.9375rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid #8D959E;border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n + 3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n + 4),.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2300891a' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2300891a' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23c10000'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23c10000' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23c10000'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23c10000' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + .75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 2em;--bs-btn-padding-y: .75em;--bs-btn-font-family: ;--bs-btn-font-size:.9375rem;--bs-btn-font-weight: 500;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);--bs-btn-disabled-opacity: .65;--bs-btn-focus-box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show,.btn.in{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn.in:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-default{--bs-btn-color: #000;--bs-btn-bg: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #e3e6ea;--bs-btn-hover-border-color: #e1e5e9;--bs-btn-focus-shadow-rgb: 189,192,196;--bs-btn-active-color: #000;--bs-btn-active-bg: #e5e8eb;--bs-btn-active-border-color: #e1e5e9;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #dee2e6;--bs-btn-disabled-border-color: #dee2e6}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #007bc2;--bs-btn-border-color: #007bc2;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0069a5;--bs-btn-hover-border-color: #00629b;--bs-btn-focus-shadow-rgb: 38,143,203;--bs-btn-active-color: #fff;--bs-btn-active-bg: #00629b;--bs-btn-active-border-color: #005c92;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #007bc2;--bs-btn-disabled-border-color: #007bc2}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #404040;--bs-btn-border-color: #404040;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #363636;--bs-btn-hover-border-color: #333;--bs-btn-focus-shadow-rgb: 93,93,93;--bs-btn-active-color: #fff;--bs-btn-active-bg: #333;--bs-btn-active-border-color: #303030;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #404040;--bs-btn-disabled-border-color: #404040}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #00891a;--bs-btn-border-color: #00891a;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #007416;--bs-btn-hover-border-color: #006e15;--bs-btn-focus-shadow-rgb: 38,155,60;--bs-btn-active-color: #fff;--bs-btn-active-bg: #006e15;--bs-btn-active-border-color: #006714;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #00891a;--bs-btn-disabled-border-color: #00891a}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #03c7e8;--bs-btn-border-color: #03c7e8;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #29cfeb;--bs-btn-hover-border-color: #1ccdea;--bs-btn-focus-shadow-rgb: 3,169,197;--bs-btn-active-color: #000;--bs-btn-active-bg: #35d2ed;--bs-btn-active-border-color: #1ccdea;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #03c7e8;--bs-btn-disabled-border-color: #03c7e8}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #f9b928;--bs-btn-border-color: #f9b928;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #fac448;--bs-btn-hover-border-color: #fac03e;--bs-btn-focus-shadow-rgb: 212,157,34;--bs-btn-active-color: #000;--bs-btn-active-bg: #fac753;--bs-btn-active-border-color: #fac03e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f9b928;--bs-btn-disabled-border-color: #f9b928}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #c10000;--bs-btn-border-color: #c10000;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #a40000;--bs-btn-hover-border-color: #9a0000;--bs-btn-focus-shadow-rgb: 202,38,38;--bs-btn-active-color: #fff;--bs-btn-active-bg: #9a0000;--bs-btn-active-border-color: #910000;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #c10000;--bs-btn-disabled-border-color: #c10000}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f8f8;--bs-btn-border-color: #f8f8f8;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d3d3;--bs-btn-hover-border-color: #c6c6c6;--bs-btn-focus-shadow-rgb: 211,211,211;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c6c6;--bs-btn-active-border-color: #bababa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f8f8;--bs-btn-disabled-border-color: #f8f8f8}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #202020;--bs-btn-border-color: #202020;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #414141;--bs-btn-hover-border-color: #363636;--bs-btn-focus-shadow-rgb: 65,65,65;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d4d4d;--bs-btn-active-border-color: #363636;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #202020;--bs-btn-disabled-border-color: #202020}.btn-outline-default{--bs-btn-color: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #dee2e6;--bs-btn-hover-border-color: #dee2e6;--bs-btn-focus-shadow-rgb: 222,226,230;--bs-btn-active-color: #000;--bs-btn-active-bg: #dee2e6;--bs-btn-active-border-color: #dee2e6;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dee2e6;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dee2e6;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-primary{--bs-btn-color: #007bc2;--bs-btn-border-color: #007bc2;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #007bc2;--bs-btn-hover-border-color: #007bc2;--bs-btn-focus-shadow-rgb: 0,123,194;--bs-btn-active-color: #fff;--bs-btn-active-bg: #007bc2;--bs-btn-active-border-color: #007bc2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #007bc2;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #007bc2;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #404040;--bs-btn-border-color: #404040;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #404040;--bs-btn-hover-border-color: #404040;--bs-btn-focus-shadow-rgb: 64,64,64;--bs-btn-active-color: #fff;--bs-btn-active-bg: #404040;--bs-btn-active-border-color: #404040;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #404040;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #404040;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #00891a;--bs-btn-border-color: #00891a;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #00891a;--bs-btn-hover-border-color: #00891a;--bs-btn-focus-shadow-rgb: 0,137,26;--bs-btn-active-color: #fff;--bs-btn-active-bg: #00891a;--bs-btn-active-border-color: #00891a;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #00891a;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #00891a;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #03c7e8;--bs-btn-border-color: #03c7e8;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #03c7e8;--bs-btn-hover-border-color: #03c7e8;--bs-btn-focus-shadow-rgb: 3,199,232;--bs-btn-active-color: #000;--bs-btn-active-bg: #03c7e8;--bs-btn-active-border-color: #03c7e8;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #03c7e8;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #03c7e8;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #f9b928;--bs-btn-border-color: #f9b928;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f9b928;--bs-btn-hover-border-color: #f9b928;--bs-btn-focus-shadow-rgb: 249,185,40;--bs-btn-active-color: #000;--bs-btn-active-bg: #f9b928;--bs-btn-active-border-color: #f9b928;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #f9b928;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f9b928;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #c10000;--bs-btn-border-color: #c10000;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #c10000;--bs-btn-hover-border-color: #c10000;--bs-btn-focus-shadow-rgb: 193,0,0;--bs-btn-active-color: #fff;--bs-btn-active-bg: #c10000;--bs-btn-active-border-color: #c10000;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #c10000;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #c10000;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f8f8;--bs-btn-border-color: #f8f8f8;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f8f8;--bs-btn-hover-border-color: #f8f8f8;--bs-btn-focus-shadow-rgb: 248,248,248;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f8f8;--bs-btn-active-border-color: #f8f8f8;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #f8f8f8;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f8f8;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #202020;--bs-btn-border-color: #202020;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #202020;--bs-btn-hover-border-color: #202020;--bs-btn-focus-shadow-rgb: 32,32,32;--bs-btn-active-color: #fff;--bs-btn-active-bg: #202020;--bs-btn-active-border-color: #202020;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #202020;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #202020;--bs-btn-bg: transparent;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #707782;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 38,143,203;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: .5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: .25rem;--bs-btn-padding-x: .5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show):not(.in){opacity:0}.collapse:not(.show):not(.in){display:none}.collapsing{height:0;overflow:hidden;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 10rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: .5rem;--bs-dropdown-spacer: .125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: var(--bs-body-bg);--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: .5rem;--bs-dropdown-box-shadow: 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08);--bs-dropdown-link-color: var(--bs-body-color);--bs-dropdown-link-hover-color: var(--bs-body-color);--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #007bc2;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 1rem;--bs-dropdown-item-padding-y: .25rem;--bs-dropdown-header-color: #707782;--bs-dropdown-header-padding-x: 1rem;--bs-dropdown-header-padding-y: .5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider,.dropdown-menu>li.divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item,.dropdown-menu>li>a{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-menu>li>a:hover,.dropdown-item:focus,.dropdown-menu>li>a:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-menu>li>a.active,.dropdown-item:active,.dropdown-menu>li>a:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-menu>li>a.disabled,.dropdown-item:disabled,.dropdown-menu>li>a:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show,.dropdown-menu.in{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343A46;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255,255,255,0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #007bc2;--bs-dropdown-link-disabled-color: #8D959E;--bs-dropdown-header-color: #8D959E}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n + 3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:1.5em;padding-left:1.5em}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link,.nav-tabs>li>a,.nav-pills>li>a,:where(ul.nav.navbar-nav > li)>a{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background:none;border:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.nav-link,.nav-tabs>li>a,.nav-pills>li>a,:where(ul.nav.navbar-nav > li)>a{transition:none}}.nav-link:hover,.nav-tabs>li>a:hover,.nav-pills>li>a:hover,:where(ul.nav.navbar-nav > li)>a:hover,.nav-link:focus,.nav-tabs>li>a:focus,.nav-pills>li>a:focus,:where(ul.nav.navbar-nav > li)>a:focus{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible,.nav-tabs>li>a:focus-visible,.nav-pills>li>a:focus-visible,:where(ul.nav.navbar-nav > li)>a:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(0,123,194,0.25)}.nav-link.disabled,.nav-tabs>li>a.disabled,.nav-pills>li>a.disabled,:where(ul.nav.navbar-nav > li)>a.disabled,.nav-link:disabled,.nav-tabs>li>a:disabled,.nav-pills>li>a:disabled,:where(ul.nav.navbar-nav > li)>a:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link,.nav-tabs>li>a,.nav-tabs .nav-pills>li>a,.nav-tabs :where(ul.nav.navbar-nav > li)>a{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs>li>a:hover,.nav-tabs .nav-pills>li>a:hover,.nav-tabs :where(ul.nav.navbar-nav > li)>a:hover,.nav-tabs .nav-link:focus,.nav-tabs>li>a:focus,.nav-tabs .nav-pills>li>a:focus,.nav-tabs :where(ul.nav.navbar-nav > li)>a:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.active,.nav-tabs>li>a.active,.nav-tabs .nav-pills>li>a.active,.nav-tabs :where(ul.nav.navbar-nav > li)>a.active,.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-item.in .nav-link,.nav-tabs .nav-item.show .nav-tabs>li>a,.nav-tabs .nav-item.in .nav-tabs>li>a,.nav-tabs .nav-item.show .nav-pills>li>a,.nav-tabs .nav-item.in .nav-pills>li>a,.nav-tabs>li.show .nav-link,.nav-tabs>li.in .nav-link,.nav-tabs>li.show .nav-tabs>li>a,.nav-tabs>li.in .nav-tabs>li>a,.nav-tabs>li.show .nav-pills>li>a,.nav-tabs>li.in .nav-pills>li>a,.nav-tabs .nav-pills>li.show .nav-link,.nav-tabs .nav-pills>li.in .nav-link,.nav-tabs .nav-pills>li.show .nav-tabs>li>a,.nav-tabs .nav-pills>li.in .nav-tabs>li>a,.nav-tabs .nav-pills>li.show .nav-pills>li>a,.nav-tabs .nav-pills>li.in .nav-pills>li>a,.nav-tabs .nav-item.show :where(ul.nav.navbar-nav > li)>a,.nav-tabs .nav-item.in :where(ul.nav.navbar-nav > li)>a,.nav-tabs>li.show :where(ul.nav.navbar-nav > li)>a,.nav-tabs>li.in :where(ul.nav.navbar-nav > li)>a,.nav-tabs .nav-pills>li.show :where(ul.nav.navbar-nav > li)>a,.nav-tabs .nav-pills>li.in :where(ul.nav.navbar-nav > li)>a,.nav-tabs .show:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-link,.nav-tabs .in:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-link,.nav-tabs .show:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-tabs>li>a,.nav-tabs .in:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-tabs>li>a,.nav-tabs .show:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-pills>li>a,.nav-tabs .in:where(ul.nav.navbar-nav > li):not(.dropdown) .nav-pills>li>a,.nav-tabs .show:where(ul.nav.navbar-nav > li):not(.dropdown) :where(ul.nav.navbar-nav > li)>a,.nav-tabs .in:where(ul.nav.navbar-nav > li):not(.dropdown) :where(ul.nav.navbar-nav > li)>a{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #007bc2}.nav-pills .nav-link,.nav-pills .nav-tabs>li>a,.nav-pills>li>a,.nav-pills :where(ul.nav.navbar-nav > li)>a{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .nav-tabs>li>a.active,.nav-pills>li>a.active,.nav-pills :where(ul.nav.navbar-nav > li)>a.active,.nav-pills .show>.nav-link,.nav-pills .in>.nav-link,.nav-pills .nav-tabs>li.show>a,.nav-pills .nav-tabs>li.in>a,.nav-pills>li.show>a,.nav-pills>li.in>a,.nav-pills .show:where(ul.nav.navbar-nav > li)>a,.nav-pills .in:where(ul.nav.navbar-nav > li)>a{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: .125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link,.nav-underline .nav-tabs>li>a,.nav-underline .nav-pills>li>a,.nav-underline :where(ul.nav.navbar-nav > li)>a{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:hover,.nav-underline .nav-tabs>li>a:hover,.nav-underline .nav-pills>li>a:hover,.nav-underline :where(ul.nav.navbar-nav > li)>a:hover,.nav-underline .nav-link:focus,.nav-underline .nav-tabs>li>a:focus,.nav-underline .nav-pills>li>a:focus,.nav-underline :where(ul.nav.navbar-nav > li)>a:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .nav-tabs>li>a.active,.nav-underline .nav-pills>li>a.active,.nav-underline :where(ul.nav.navbar-nav > li)>a.active,.nav-underline .show>.nav-link,.nav-underline .in>.nav-link,.nav-underline .nav-tabs>li.show>a,.nav-underline .nav-tabs>li.in>a,.nav-underline .nav-pills>li.show>a,.nav-underline .nav-pills>li.in>a,.nav-underline .show:where(ul.nav.navbar-nav > li)>a,.nav-underline .in:where(ul.nav.navbar-nav > li)>a{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-link,.nav-tabs>li.nav-fill>a,.nav-pills>li.nav-fill>a,.nav-fill:where(ul.nav.navbar-nav > li)>a,.nav-fill .nav-item,.nav-fill .nav-tabs>li,.nav-fill .nav-pills>li,.nav-fill :where(ul.nav.navbar-nav > li):not(.dropdown){flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-tabs>li.nav-justified>a,.nav-pills>li.nav-justified>a,.nav-justified:where(ul.nav.navbar-nav > li)>a,.nav-justified .nav-item,.nav-justified .nav-tabs>li,.nav-justified .nav-pills>li,.nav-justified :where(ul.nav.navbar-nav > li):not(.dropdown){flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-fill .nav-tabs>li .nav-link,.nav-fill .nav-tabs>li>a,.nav-fill .nav-pills>li .nav-link,.nav-fill .nav-pills>li>a,.nav-fill .nav-item :where(ul.nav.navbar-nav > li)>a,.nav-fill .nav-tabs>li :where(ul.nav.navbar-nav > li)>a,.nav-fill .nav-pills>li :where(ul.nav.navbar-nav > li)>a,.nav-fill :where(ul.nav.navbar-nav > li):not(.dropdown) .nav-link,.nav-fill :where(ul.nav.navbar-nav > li):not(.dropdown) :where(ul.nav.navbar-nav > li)>a,.nav-justified .nav-item .nav-link,.nav-justified .nav-tabs>li .nav-link,.nav-justified .nav-tabs>li>a,.nav-justified .nav-pills>li .nav-link,.nav-justified .nav-pills>li>a,.nav-justified .nav-item :where(ul.nav.navbar-nav > li)>a,.nav-justified .nav-tabs>li :where(ul.nav.navbar-nav > li)>a,.nav-justified .nav-pills>li :where(ul.nav.navbar-nav > li)>a,.nav-justified :where(ul.nav.navbar-nav > li):not(.dropdown) .nav-link,.nav-justified :where(ul.nav.navbar-nav > li):not(.dropdown) :where(ul.nav.navbar-nav > li)>a{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x: .66rem;--bs-navbar-padding-y: .5rem;--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: .3125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.25rem;--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x: .5rem;--bs-navbar-toggler-padding-y: .25rem;--bs-navbar-toggler-padding-x: .75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2829,31,33,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: .25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-tabs>li>a.active,.navbar-nav .nav-pills>li>a.active,.navbar-nav :where(ul.nav.navbar-nav > li)>a.active,.navbar-nav .nav-link.show,.navbar-nav .nav-link.in,.navbar-nav .nav-tabs>li>a.show,.navbar-nav .nav-tabs>li>a.in,.navbar-nav .nav-pills>li>a.show,.navbar-nav .nav-pills>li>a.in,.navbar-nav :where(ul.nav.navbar-nav > li)>a.show,.navbar-nav :where(ul.nav.navbar-nav > li)>a.in{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler,.navbar-toggle{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion: reduce){.navbar-toggler,.navbar-toggle{transition:none}}.navbar-toggler:hover,.navbar-toggle:hover{text-decoration:none}.navbar-toggler:focus,.navbar-toggle:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon,.navbar-toggle>.icon-bar:last-child{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media (min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link,.navbar-expand-sm .navbar-nav .nav-tabs>li>a,.navbar-expand-sm .navbar-nav .nav-pills>li>a,.navbar-expand-sm .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler,.navbar-expand-sm .navbar-toggle{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link,.navbar-expand-md .navbar-nav .nav-tabs>li>a,.navbar-expand-md .navbar-nav .nav-pills>li>a,.navbar-expand-md .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler,.navbar-expand-md .navbar-toggle{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 992px){.navbar-expand-lg,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl){flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link,.navbar-expand-lg .navbar-nav .nav-tabs>li>a,.navbar-expand-lg .navbar-nav .nav-pills>li>a,.navbar-expand-lg .navbar-nav :where(ul.nav.navbar-nav > li)>a,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav .nav-link,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav .nav-tabs>li>a,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav .nav-pills>li>a,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler,.navbar-expand-lg .navbar-toggle,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-toggler,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .navbar-toggle{display:none}.navbar-expand-lg .offcanvas,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body,.navbar:not(.navbar-expand):not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl) .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link,.navbar-expand-xl .navbar-nav .nav-tabs>li>a,.navbar-expand-xl .navbar-nav .nav-pills>li>a,.navbar-expand-xl .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler,.navbar-expand-xl .navbar-toggle{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media (min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link,.navbar-expand-xxl .navbar-nav .nav-tabs>li>a,.navbar-expand-xxl .navbar-nav .nav-pills>li>a,.navbar-expand-xxl .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler,.navbar-expand-xxl .navbar-toggle{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link,.navbar-expand .navbar-nav .nav-tabs>li>a,.navbar-expand .navbar-nav .nav-pills>li>a,.navbar-expand .navbar-nav :where(ul.nav.navbar-nav > li)>a{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler,.navbar-expand .navbar-toggle{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:transparent !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar.navbar-inverse,.navbar[data-bs-theme="dark"]{--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.55);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.75);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.25);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme="dark"] .navbar-toggler-icon,[data-bs-theme="dark"] .navbar-toggle>.icon-bar:last-child{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card,.well{--bs-card-spacer-y: 1rem;--bs-card-spacer-x: 1rem;--bs-card-title-spacer-y: .5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: var(--bs-border-color-translucent);--bs-card-border-radius: 8px;--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(8px - (var(--bs-border-width)));--bs-card-cap-padding-y: .5rem;--bs-card-cap-padding-x: 1rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: var(--bs-body-bg);--bs-card-img-overlay-padding: 1rem;--bs-card-group-margin: .75rem;position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr,.well>hr{margin-right:0;margin-left:0}.card>.list-group,.well>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child,.well>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child,.well>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.well>.card-header+.list-group,.card>.list-group+.card-footer,.well>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active,.card-header-tabs .nav-tabs>li>a.active,.card-header-tabs .nav-pills>li>a.active,.card-header-tabs :where(ul.nav.navbar-nav > li)>a.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card,.card-group>.well{margin-bottom:var(--bs-card-group-margin)}@media (min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card,.card-group>.well{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card,.card-group>.well+.card,.card-group>.card+.well,.card-group>.well+.well{margin-left:0;border-left:0}.card-group>.card:not(:last-child),.card-group>.well:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.well:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header,.card-group>.well:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.well:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer,.card-group>.well:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child),.card-group>.well:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.well:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header,.card-group>.well:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.well:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer,.card-group>.well:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231D1F21'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2300314e'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #80bde1;--bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(0,123,194,0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: ;--bs-accordion-active-bg: }.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme="dark"] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2366b0da'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2366b0da'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: .5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(0,123,194,0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #007bc2;--bs-pagination-active-border-color: #007bc2;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size:.75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 1rem;--bs-alert-padding-y: 1rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{--bs-alert-color: var(--bs-default-text-emphasis);--bs-alert-bg: var(--bs-default-bg-subtle);--bs-alert-border-color: var(--bs-default-border-subtle);--bs-alert-link-color: var(--bs-default-text-emphasis)}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size:.75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #007bc2;--bs-progress-bar-transition: width 0.6s ease;display:flex;display:-webkit-flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 1rem;--bs-list-group-item-padding-y: .5rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #007bc2;--bs-list-group-active-border-color: #007bc2;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{--bs-list-group-color: var(--bs-default-text-emphasis);--bs-list-group-bg: var(--bs-default-bg-subtle);--bs-list-group-border-color: var(--bs-default-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-default-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-default-border-subtle);--bs-list-group-active-color: var(--bs-default-bg-subtle);--bs-list-group-active-bg: var(--bs-default-text-emphasis);--bs-list-group-active-border-color: var(--bs-default-text-emphasis)}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(0,123,194,0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:3px;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme="dark"] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: .75rem;--bs-toast-padding-y: .5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 350px;--bs-toast-font-size:.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: var(--bs-secondary-color);--bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color: var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show):not(.in){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 1rem;--bs-modal-margin: .5rem;--bs-modal-color: ;--bs-modal-bg: var(--bs-body-bg);--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: 0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1.5rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: none;--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: .5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: none;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform 0.3s ease-out;transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog,.modal.in .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #464646;--bs-backdrop-opacity: .5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show,.modal-backdrop.in{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width: 576px){.modal{--bs-modal-margin: 10%;--bs-modal-box-shadow: 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media (min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media (min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 200px;--bs-tooltip-padding-x: .5rem;--bs-tooltip-padding-y: .25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:.875rem;--bs-tooltip-color: var(--bs-body-bg);--bs-tooltip-bg: var(--bs-emphasis-color);--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: .9;--bs-tooltip-arrow-width: .8rem;--bs-tooltip-arrow-height: .4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show,.tooltip.in{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:.875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08);--bs-popover-header-padding-x: 1rem;--bs-popover-header-padding-y: .5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 1rem;--bs-popover-body-padding-y: 1rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: .5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme="dark"] .carousel .carousel-control-prev-icon,[data-bs-theme="dark"] .carousel .carousel-control-next-icon,[data-bs-theme="dark"].carousel .carousel-control-prev-icon,[data-bs-theme="dark"].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme="dark"] .carousel .carousel-indicators [data-bs-target],[data-bs-theme="dark"].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme="dark"] .carousel .carousel-caption,[data-bs-theme="dark"].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-border-width: .25em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: .2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -.125em;--bs-spinner-animation-speed: .75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 1rem;--bs-offcanvas-padding-y: 1rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16);--bs-offcanvas-transition: transform .3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media (max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 575.98px) and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media (max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding),.offcanvas-sm.in:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.in{visibility:visible}}@media (min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 767.98px) and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media (max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding),.offcanvas-md.in:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.in{visibility:visible}}@media (min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 991.98px) and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media (max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding),.offcanvas-lg.in:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.in{visibility:visible}}@media (min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media (max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding),.offcanvas-xl.in:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.in{visibility:visible}}@media (min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}@media (max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media (max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.in:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.in{visibility:visible}}@media (min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:transparent !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:transparent !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding),.offcanvas.in:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show,.offcanvas.in{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#464646}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show,.offcanvas-backdrop.in{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0,0,0,0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-default{color:#000 !important;background-color:RGBA(var(--bs-default-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-default{color:RGBA(var(--bs-default-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-default-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-default:hover,.link-default:focus{color:RGBA(229,232,235, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(229,232,235, var(--bs-link-underline-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(0,98,155, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(0,98,155, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(51,51,51, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(51,51,51, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(0,110,21, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(0,110,21, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(53,210,237, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(53,210,237, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(250,199,83, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(250,199,83, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(154,0,0, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(154,0,0, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249,249,249, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249,249,249, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26,26,26, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26,26,26, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;-webkit-flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:0.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: calc(3 / 4 * 100%)}.ratio-16x9{--bs-aspect-ratio: calc(9 / 16 * 100%)}.ratio-21x9{--bs-aspect-ratio: calc(9 / 21 * 100%)}.fixed-top,.navbar-fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom,.navbar-fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top,.navbar-sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start,.float-left{float:left !important}.float-end,.float-right{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08) !important}.shadow-sm{box-shadow:0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16) !important}.shadow-lg{box-shadow:0px 4px 10px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.17) !important}.shadow-none{box-shadow:none !important}.focus-ring-default{--bs-focus-ring-color: rgba(var(--bs-default-rgb), var(--bs-focus-ring-opacity))}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-default{--bs-border-opacity: 1;border-color:rgba(var(--bs-default-rgb), var(--bs-border-opacity)) !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: .1}.border-opacity-25{--bs-border-opacity: .25}.border-opacity-50{--bs-border-opacity: .5}.border-opacity-75{--bs-border-opacity: .75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.25rem !important}.row-gap-2{row-gap:.5rem !important}.row-gap-3{row-gap:1rem !important}.row-gap-4{row-gap:1.5rem !important}.row-gap-5{row-gap:3rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.25rem !important}.column-gap-2{column-gap:.5rem !important}.column-gap-3{column-gap:1rem !important}.column-gap-4{column-gap:1.5rem !important}.column-gap-5{column-gap:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.335rem + 1.02vw) !important}.fs-2{font-size:calc(1.325rem + .9vw) !important}.fs-3{font-size:calc(1.3rem + .6vw) !important}.fs-4{font-size:calc(1.275rem + .3vw) !important}.fs-5{font-size:1.25rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted,.help-text,.help-block{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,0.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,0.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: .25}.text-opacity-50{--bs-text-opacity: .5}.text-opacity-75{--bs-text-opacity: .75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: .1}.link-opacity-10-hover:hover{--bs-link-opacity: .1}.link-opacity-25{--bs-link-opacity: .25}.link-opacity-25-hover:hover{--bs-link-opacity: .25}.link-opacity-50{--bs-link-opacity: .5}.link-opacity-50-hover:hover{--bs-link-opacity: .5}.link-opacity-75{--bs-link-opacity: .75}.link-opacity-75-hover:hover{--bs-link-opacity: .75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-default{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-default-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: .1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: .1}.link-underline-opacity-25{--bs-link-underline-opacity: .25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: .25}.link-underline-opacity-50{--bs-link-underline-opacity: .5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: .5}.link-underline-opacity-75{--bs-link-underline-opacity: .75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: .75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: .1}.bg-opacity-25{--bs-bg-opacity: .25}.bg-opacity-50{--bs-bg-opacity: .5}.bg-opacity-75{--bs-bg-opacity: .75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media (min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.25rem !important}.row-gap-sm-2{row-gap:.5rem !important}.row-gap-sm-3{row-gap:1rem !important}.row-gap-sm-4{row-gap:1.5rem !important}.row-gap-sm-5{row-gap:3rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.25rem !important}.column-gap-sm-2{column-gap:.5rem !important}.column-gap-sm-3{column-gap:1rem !important}.column-gap-sm-4{column-gap:1.5rem !important}.column-gap-sm-5{column-gap:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.25rem !important}.row-gap-md-2{row-gap:.5rem !important}.row-gap-md-3{row-gap:1rem !important}.row-gap-md-4{row-gap:1.5rem !important}.row-gap-md-5{row-gap:3rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.25rem !important}.column-gap-md-2{column-gap:.5rem !important}.column-gap-md-3{column-gap:1rem !important}.column-gap-md-4{column-gap:1.5rem !important}.column-gap-md-5{column-gap:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.25rem !important}.row-gap-lg-2{row-gap:.5rem !important}.row-gap-lg-3{row-gap:1rem !important}.row-gap-lg-4{row-gap:1.5rem !important}.row-gap-lg-5{row-gap:3rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.25rem !important}.column-gap-lg-2{column-gap:.5rem !important}.column-gap-lg-3{column-gap:1rem !important}.column-gap-lg-4{column-gap:1.5rem !important}.column-gap-lg-5{column-gap:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.25rem !important}.row-gap-xl-2{row-gap:.5rem !important}.row-gap-xl-3{row-gap:1rem !important}.row-gap-xl-4{row-gap:1.5rem !important}.row-gap-xl-5{row-gap:3rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.25rem !important}.column-gap-xl-2{column-gap:.5rem !important}.column-gap-xl-3{column-gap:1rem !important}.column-gap-xl-4{column-gap:1.5rem !important}.column-gap-xl-5{column-gap:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media (min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.25rem !important}.row-gap-xxl-2{row-gap:.5rem !important}.row-gap-xxl-3{row-gap:1rem !important}.row-gap-xxl-4{row-gap:1.5rem !important}.row-gap-xxl-5{row-gap:3rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.25rem !important}.column-gap-xxl-2{column-gap:.5rem !important}.column-gap-xxl-3{column-gap:1rem !important}.column-gap-xxl-4{column-gap:1.5rem !important}.column-gap-xxl-5{column-gap:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#000}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#000}.bg-warning{color:#000}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media (min-width: 1200px){.fs-1{font-size:2.1rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.table th[align=left]{text-align:left}.table th[align=right]{text-align:right}.table th[align=center]{text-align:center}.well{display:block;background-color:RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.03);color:RGB(var(--bs-emphasis-color-rgb, 0, 0, 0));padding:1rem;border-radius:3px}.well-lg{padding:1.5rem;border-radius:.5rem}.well-sm{padding:0.5rem;border-radius:.25rem}.dropdown-menu>li.active>a{color:#fff;text-decoration:none;background-color:#007bc2}.navbar .nav.nav-underline{--bs-navbar-nav-link-padding-x: 0}.navbar:not(.fixed-bottom):not(.navbar-fixed-bottom):not(.navbar-fixed-bottom)+div>.tab-content>.tab-pane{--bslib-navbar-margin: 20px;margin-top:var(--bslib-navbar-margin)}ul.nav.navbar-nav{flex:1;-webkit-flex:1}ul.nav.navbar-nav.navbar-right{flex:unset;-webkit-flex:unset;display:flex;display:-webkit-flex;justify-content:flex-end;-webkit-justify-content:flex-end}:where(ul.nav.navbar-nav > li).active>a,:where(ul.nav.navbar-nav > li).show>a,.in:where(ul.nav.navbar-nav > li)>a{color:var(--bs-navbar-active-color)}:where(ul.nav.navbar-nav > li).bslib-nav-item{color:var(--bs-navbar-active-color)}.navbar.navbar-default{background-color:var(--bslib-navbar-default-bg, var(--bs-light)) !important}.navbar.navbar-inverse{background-color:var(--bslib-navbar-inverse-bg, var(--bs-dark)) !important;--bs-emphasis-color: white;--bs-emphasis-color-rgb: 255, 255, 255}[data-bs-theme="dark"] .navbar.navbar-default{background-color:var(--bslib-navbar-default-bg, var(--bs-dark)) !important}.navbar-toggle>.icon-bar{display:none}@media (max-width: 991.98px){.navbar-header{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.navbar-header .navbar-toggle{order:2}}.nav-tabs>li.active>a{color:var(--bs-emphasis-color);background-color:var(--bs-body-bg);border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg)}.nav-pills>li.active>a{color:#fff;background-color:#007bc2}.nav-stacked{flex-direction:column;-webkit-flex-direction:column}.progress-bar-default{background-color:#dee2e6;color:#000}.progress-bar-primary{background-color:#007bc2;color:#fff}.progress-bar-secondary{background-color:#404040;color:#fff}.progress-bar-success{background-color:#00891a;color:#fff}.progress-bar-info{background-color:#03c7e8;color:#000}.progress-bar-warning{background-color:#f9b928;color:#000}.progress-bar-danger{background-color:#c10000;color:#fff}.progress-bar-light{background-color:#f8f8f8;color:#000}.progress-bar-dark{background-color:#202020;color:#fff}.datatables thead .form-group.has-feedback+div{background-color:var(--bs-body-bg) !important;color:var(--bs-body-color) !important;border-color:var(--bs-border-color) !important;border-width:var(--bs-border-width);border-radius:var(--bs-border-radius);border-style:var(--bs-border-style)}@font-face{font-family:'Glyphicons Halflings';src:url("fonts/bootstrap/glyphicons-halflings-regular.eot");src:url("fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"),url("fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"),url("fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"),url("fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"),url("fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before,.glyphicon-eur:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}.form-group{margin-bottom:1rem}.input-daterange .input-group-addon.input-group-prepend.input-group-append{padding:inherit;line-height:inherit;text-shadow:inherit;border-width:0}.input-daterange .input-group-addon.input-group-prepend.input-group-append .input-group-text{border-radius:0}.shiny-input-checkboxgroup .checkbox-inline,.shiny-input-radiogroup .radio-inline{cursor:pointer}.shiny-input-checkboxgroup label~.shiny-options-group,.shiny-input-radiogroup label~.shiny-options-group{margin-top:calc(-.15em - var(--bs-border-width))}pre.shiny-code{padding:0.5rem}:where(.section.level1, section.level1){margin-top:1.5rem}:where(.section.level2, section.level2){margin-top:1.5rem}:where(.section.level3, section.level3){margin-top:1.5rem}:where(.section.level4, section.level4){margin-top:1rem}:where(.section.level5, section.level5){margin-top:1rem}:where(.section.level6, section.level6){margin-top:1rem}:root{--bslib-spacer: 1.5rem;--bslib-mb-spacer: var(--bslib-spacer, 1rem)}.bslib-mb-spacing{margin-bottom:var(--bslib-mb-spacer)}.bslib-gap-spacing{gap:var(--bslib-mb-spacer)}.bslib-gap-spacing>.bslib-mb-spacing,.bslib-gap-spacing>.form-group,.bslib-gap-spacing>p,.bslib-gap-spacing>pre,.bslib-gap-spacing>.shiny-html-output>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-html-output>.form-group,.bslib-gap-spacing>.shiny-html-output>p,.bslib-gap-spacing>.shiny-html-output>pre,.bslib-gap-spacing>.shiny-panel-conditional>.bslib-mb-spacing,.bslib-gap-spacing>.shiny-panel-conditional>.form-group,.bslib-gap-spacing>.shiny-panel-conditional>p,.bslib-gap-spacing>.shiny-panel-conditional>pre{margin-bottom:0}.html-fill-container>.html-fill-item.bslib-mb-spacing{margin-bottom:0}.tab-content>.tab-pane.html-fill-container{display:none}.tab-content>.active.html-fill-container{display:flex}.tab-content.html-fill-container{padding:0}.bg-blue{--bslib-color-bg: #007bc2;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-blue{--bslib-color-fg: #007bc2;color:var(--bslib-color-fg)}.bg-indigo{--bslib-color-bg: #4b00c1;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-indigo{--bslib-color-fg: #4b00c1;color:var(--bslib-color-fg)}.bg-purple{--bslib-color-bg: #74149c;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-purple{--bslib-color-fg: #74149c;color:var(--bslib-color-fg)}.bg-pink{--bslib-color-bg: #bf007f;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-pink{--bslib-color-fg: #bf007f;color:var(--bslib-color-fg)}.bg-red{--bslib-color-bg: #c10000;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-red{--bslib-color-fg: #c10000;color:var(--bslib-color-fg)}.bg-orange{--bslib-color-bg: #f45100;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-orange{--bslib-color-fg: #f45100;color:var(--bslib-color-fg)}.bg-yellow{--bslib-color-bg: #f9b928;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-yellow{--bslib-color-fg: #f9b928;color:var(--bslib-color-fg)}.bg-green{--bslib-color-bg: #00891a;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-green{--bslib-color-fg: #00891a;color:var(--bslib-color-fg)}.bg-teal{--bslib-color-bg: #00bf7f;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-teal{--bslib-color-fg: #00bf7f;color:var(--bslib-color-fg)}.bg-cyan{--bslib-color-bg: #03c7e8;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-cyan{--bslib-color-fg: #03c7e8;color:var(--bslib-color-fg)}.text-default{--bslib-color-fg: #dee2e6}.bg-default{--bslib-color-bg: #dee2e6;--bslib-color-fg: #000}.text-primary{--bslib-color-fg: #007bc2}.bg-primary{--bslib-color-bg: #007bc2;--bslib-color-fg: #fff}.text-secondary{--bslib-color-fg: #404040}.bg-secondary{--bslib-color-bg: #404040;--bslib-color-fg: #fff}.text-success{--bslib-color-fg: #00891a}.bg-success{--bslib-color-bg: #00891a;--bslib-color-fg: #fff}.text-info{--bslib-color-fg: #03c7e8}.bg-info{--bslib-color-bg: #03c7e8;--bslib-color-fg: #000}.text-warning{--bslib-color-fg: #f9b928}.bg-warning{--bslib-color-bg: #f9b928;--bslib-color-fg: #000}.text-danger{--bslib-color-fg: #c10000}.bg-danger{--bslib-color-bg: #c10000;--bslib-color-fg: #fff}.text-light{--bslib-color-fg: #f8f8f8}.bg-light{--bslib-color-bg: #f8f8f8;--bslib-color-fg: #000}.text-dark{--bslib-color-fg: #202020}.bg-dark{--bslib-color-bg: #202020;--bslib-color-fg: #fff}.bg-gradient-blue-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #1e4ac2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #1e4ac2;color:#fff}.bg-gradient-blue-purple{--bslib-color-fg: #fff;--bslib-color-bg: #2e52b3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #2e52b3;color:#fff}.bg-gradient-blue-pink{--bslib-color-fg: #fff;--bslib-color-bg: #4c4aa7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #4c4aa7;color:#fff}.bg-gradient-blue-red{--bslib-color-fg: #fff;--bslib-color-bg: #4d4a74;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #4d4a74;color:#fff}.bg-gradient-blue-orange{--bslib-color-fg: #fff;--bslib-color-bg: #626a74;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #626a74;color:#fff}.bg-gradient-blue-yellow{--bslib-color-fg: #000;--bslib-color-bg: #649484;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #649484;color:#000}.bg-gradient-blue-green{--bslib-color-fg: #fff;--bslib-color-bg: #00817f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #00817f;color:#fff}.bg-gradient-blue-teal{--bslib-color-fg: #000;--bslib-color-bg: #0096a7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #0096a7;color:#000}.bg-gradient-blue-cyan{--bslib-color-fg: #000;--bslib-color-bg: #0199d1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #007bc2 var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #0199d1;color:#000}.bg-gradient-indigo-blue{--bslib-color-fg: #fff;--bslib-color-bg: #2d31c1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #2d31c1;color:#fff}.bg-gradient-indigo-purple{--bslib-color-fg: #fff;--bslib-color-bg: #5b08b2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #5b08b2;color:#fff}.bg-gradient-indigo-pink{--bslib-color-fg: #fff;--bslib-color-bg: #7900a7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #7900a7;color:#fff}.bg-gradient-indigo-red{--bslib-color-fg: #fff;--bslib-color-bg: #7a0074;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #7a0074;color:#fff}.bg-gradient-indigo-orange{--bslib-color-fg: #fff;--bslib-color-bg: #8f2074;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #8f2074;color:#fff}.bg-gradient-indigo-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #914a84;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #914a84;color:#fff}.bg-gradient-indigo-green{--bslib-color-fg: #fff;--bslib-color-bg: #2d377e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #2d377e;color:#fff}.bg-gradient-indigo-teal{--bslib-color-fg: #fff;--bslib-color-bg: #2d4ca7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #2d4ca7;color:#fff}.bg-gradient-indigo-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #2e50d1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #4b00c1 var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #2e50d1;color:#fff}.bg-gradient-purple-blue{--bslib-color-fg: #fff;--bslib-color-bg: #463dab;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #463dab;color:#fff}.bg-gradient-purple-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #640cab;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #640cab;color:#fff}.bg-gradient-purple-pink{--bslib-color-fg: #fff;--bslib-color-bg: #920c90;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #920c90;color:#fff}.bg-gradient-purple-red{--bslib-color-fg: #fff;--bslib-color-bg: #930c5e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #930c5e;color:#fff}.bg-gradient-purple-orange{--bslib-color-fg: #fff;--bslib-color-bg: #a72c5e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #a72c5e;color:#fff}.bg-gradient-purple-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a9566e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #a9566e;color:#fff}.bg-gradient-purple-green{--bslib-color-fg: #fff;--bslib-color-bg: #464368;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #464368;color:#fff}.bg-gradient-purple-teal{--bslib-color-fg: #fff;--bslib-color-bg: #465890;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #465890;color:#fff}.bg-gradient-purple-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #475cba;background:linear-gradient(var(--bg-gradient-deg, 140deg), #74149c var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #475cba;color:#fff}.bg-gradient-pink-blue{--bslib-color-fg: #fff;--bslib-color-bg: #73319a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #73319a;color:#fff}.bg-gradient-pink-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #910099;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #910099;color:#fff}.bg-gradient-pink-purple{--bslib-color-fg: #fff;--bslib-color-bg: #a1088b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #a1088b;color:#fff}.bg-gradient-pink-red{--bslib-color-fg: #fff;--bslib-color-bg: #c0004c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #c0004c;color:#fff}.bg-gradient-pink-orange{--bslib-color-fg: #fff;--bslib-color-bg: #d4204c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #d4204c;color:#fff}.bg-gradient-pink-yellow{--bslib-color-fg: #000;--bslib-color-bg: #d64a5c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #d64a5c;color:#000}.bg-gradient-pink-green{--bslib-color-fg: #fff;--bslib-color-bg: #733757;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #733757;color:#fff}.bg-gradient-pink-teal{--bslib-color-fg: #fff;--bslib-color-bg: #734c7f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #734c7f;color:#fff}.bg-gradient-pink-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #7450a9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #bf007f var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #7450a9;color:#fff}.bg-gradient-red-blue{--bslib-color-fg: #fff;--bslib-color-bg: #74314e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #74314e;color:#fff}.bg-gradient-red-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #92004d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #92004d;color:#fff}.bg-gradient-red-purple{--bslib-color-fg: #fff;--bslib-color-bg: #a2083e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #a2083e;color:#fff}.bg-gradient-red-pink{--bslib-color-fg: #fff;--bslib-color-bg: #c00033;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #c00033;color:#fff}.bg-gradient-red-orange{--bslib-color-fg: #fff;--bslib-color-bg: #d52000;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #d52000;color:#fff}.bg-gradient-red-yellow{--bslib-color-fg: #000;--bslib-color-bg: #d74a10;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #d74a10;color:#000}.bg-gradient-red-green{--bslib-color-fg: #fff;--bslib-color-bg: #74370a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #74370a;color:#fff}.bg-gradient-red-teal{--bslib-color-fg: #fff;--bslib-color-bg: #744c33;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #744c33;color:#fff}.bg-gradient-red-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #75505d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #c10000 var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #75505d;color:#fff}.bg-gradient-orange-blue{--bslib-color-fg: #fff;--bslib-color-bg: #92624e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #92624e;color:#fff}.bg-gradient-orange-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #b0314d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #b0314d;color:#fff}.bg-gradient-orange-purple{--bslib-color-fg: #fff;--bslib-color-bg: #c1393e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #c1393e;color:#fff}.bg-gradient-orange-pink{--bslib-color-fg: #fff;--bslib-color-bg: #df3133;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #df3133;color:#fff}.bg-gradient-orange-red{--bslib-color-fg: #fff;--bslib-color-bg: #e03100;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #e03100;color:#fff}.bg-gradient-orange-yellow{--bslib-color-fg: #000;--bslib-color-bg: #f67b10;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #f67b10;color:#000}.bg-gradient-orange-green{--bslib-color-fg: #fff;--bslib-color-bg: #92670a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #92670a;color:#fff}.bg-gradient-orange-teal{--bslib-color-fg: #000;--bslib-color-bg: #927d33;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #927d33;color:#000}.bg-gradient-orange-cyan{--bslib-color-fg: #000;--bslib-color-bg: #94805d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f45100 var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #94805d;color:#000}.bg-gradient-yellow-blue{--bslib-color-fg: #000;--bslib-color-bg: #95a066;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #95a066;color:#000}.bg-gradient-yellow-indigo{--bslib-color-fg: #000;--bslib-color-bg: #b36f65;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #b36f65;color:#000}.bg-gradient-yellow-purple{--bslib-color-fg: #000;--bslib-color-bg: #c47756;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #c47756;color:#000}.bg-gradient-yellow-pink{--bslib-color-fg: #000;--bslib-color-bg: #e26f4b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #e26f4b;color:#000}.bg-gradient-yellow-red{--bslib-color-fg: #000;--bslib-color-bg: #e36f18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #e36f18;color:#000}.bg-gradient-yellow-orange{--bslib-color-fg: #000;--bslib-color-bg: #f78f18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #f78f18;color:#000}.bg-gradient-yellow-green{--bslib-color-fg: #000;--bslib-color-bg: #95a622;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #95a622;color:#000}.bg-gradient-yellow-teal{--bslib-color-fg: #000;--bslib-color-bg: #95bb4b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #95bb4b;color:#000}.bg-gradient-yellow-cyan{--bslib-color-fg: #000;--bslib-color-bg: #97bf75;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f9b928 var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #97bf75;color:#000}.bg-gradient-green-blue{--bslib-color-fg: #fff;--bslib-color-bg: #00835d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #00835d;color:#fff}.bg-gradient-green-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #1e525d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #1e525d;color:#fff}.bg-gradient-green-purple{--bslib-color-fg: #fff;--bslib-color-bg: #2e5a4e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #2e5a4e;color:#fff}.bg-gradient-green-pink{--bslib-color-fg: #fff;--bslib-color-bg: #4c5242;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #4c5242;color:#fff}.bg-gradient-green-red{--bslib-color-fg: #fff;--bslib-color-bg: #4d5210;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #4d5210;color:#fff}.bg-gradient-green-orange{--bslib-color-fg: #fff;--bslib-color-bg: #627310;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #627310;color:#fff}.bg-gradient-green-yellow{--bslib-color-fg: #000;--bslib-color-bg: #649c20;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #649c20;color:#000}.bg-gradient-green-teal{--bslib-color-fg: #000;--bslib-color-bg: #009f42;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #009f42;color:#000}.bg-gradient-green-cyan{--bslib-color-fg: #000;--bslib-color-bg: #01a26c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00891a var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #01a26c;color:#000}.bg-gradient-teal-blue{--bslib-color-fg: #000;--bslib-color-bg: #00a49a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #00a49a;color:#000}.bg-gradient-teal-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #1e7399;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #1e7399;color:#fff}.bg-gradient-teal-purple{--bslib-color-fg: #fff;--bslib-color-bg: #2e7b8b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #2e7b8b;color:#fff}.bg-gradient-teal-pink{--bslib-color-fg: #fff;--bslib-color-bg: #4c737f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #4c737f;color:#fff}.bg-gradient-teal-red{--bslib-color-fg: #fff;--bslib-color-bg: #4d734c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #4d734c;color:#fff}.bg-gradient-teal-orange{--bslib-color-fg: #000;--bslib-color-bg: #62934c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #62934c;color:#000}.bg-gradient-teal-yellow{--bslib-color-fg: #000;--bslib-color-bg: #64bd5c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #64bd5c;color:#000}.bg-gradient-teal-green{--bslib-color-fg: #000;--bslib-color-bg: #00a957;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #00a957;color:#000}.bg-gradient-teal-cyan{--bslib-color-fg: #000;--bslib-color-bg: #01c2a9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #00bf7f var(--bg-gradient-start, 36%), #03c7e8 var(--bg-gradient-end, 180%)) #01c2a9;color:#000}.bg-gradient-cyan-blue{--bslib-color-fg: #000;--bslib-color-bg: #02a9d9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #007bc2 var(--bg-gradient-end, 180%)) #02a9d9;color:#000}.bg-gradient-cyan-indigo{--bslib-color-fg: #000;--bslib-color-bg: #2077d8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #4b00c1 var(--bg-gradient-end, 180%)) #2077d8;color:#000}.bg-gradient-cyan-purple{--bslib-color-fg: #000;--bslib-color-bg: #307fca;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #74149c var(--bg-gradient-end, 180%)) #307fca;color:#000}.bg-gradient-cyan-pink{--bslib-color-fg: #000;--bslib-color-bg: #4e77be;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #bf007f var(--bg-gradient-end, 180%)) #4e77be;color:#000}.bg-gradient-cyan-red{--bslib-color-fg: #fff;--bslib-color-bg: #4f778b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #c10000 var(--bg-gradient-end, 180%)) #4f778b;color:#fff}.bg-gradient-cyan-orange{--bslib-color-fg: #000;--bslib-color-bg: #63988b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #f45100 var(--bg-gradient-end, 180%)) #63988b;color:#000}.bg-gradient-cyan-yellow{--bslib-color-fg: #000;--bslib-color-bg: #65c19b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #f9b928 var(--bg-gradient-end, 180%)) #65c19b;color:#000}.bg-gradient-cyan-green{--bslib-color-fg: #000;--bslib-color-bg: #02ae96;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #00891a var(--bg-gradient-end, 180%)) #02ae96;color:#000}.bg-gradient-cyan-teal{--bslib-color-fg: #000;--bslib-color-bg: #02c4be;background:linear-gradient(var(--bg-gradient-deg, 140deg), #03c7e8 var(--bg-gradient-start, 36%), #00bf7f var(--bg-gradient-end, 180%)) #02c4be;color:#000}.irs.irs--shiny{margin-top:3px}.irs.irs--shiny .irs-min,.irs.irs--shiny .irs-max,.irs.irs--shiny .irs-from,.irs.irs--shiny .irs-to,.irs.irs--shiny .irs-single{padding:3px 6px;top:-3px}.irs.irs--shiny .irs-handle{top:23px}.irs.irs--shiny .irs-bar{top:31px;height:3px;border:none}.irs.irs--shiny .irs-line{border-radius:8px}.irs.irs--shiny .irs-grid-pol{height:6px}.irs.irs--shiny .irs-grid-text{bottom:8px}.irs.irs--shiny .irs-handle:focus-visible,.irs.irs--shiny .irs-handle:active{color:#005688;background-color:#005688;border-color:#005688;outline:0;box-shadow:0 0 0 .25rem rgba(0,123,194,0.25)}.irs.irs--shiny~.slider-animate-container{text-align:left}.irs.irs--shiny~.slider-animate-container .slider-animate-button{opacity:1}.irs.irs--shiny.irs-with-grid~.slider-animate-container{margin-top:-5px}.irs.irs--shiny:not(.irs-with-grid)~.slider-animate-container{margin-top:5px}.table.dataTable{--dt-row-selected: var(--bs-primary-rgb, "0,123,194");--dt-row-selected-text: var(--bs-white-rgb, "255,255,255");--dt-row-selected-link: var(--bs-light-rgh, "248,248,248")}.table.dataTable.dataTable.table-striped>tbody>tr.odd:not(.selected)>*{box-shadow:none}.table.dataTable.dataTable.table-striped>tbody>tr.even:not(.selected)>*{box-shadow:inset 0 0 0 9999px var(--bs-table-striped-bg)}.table.dataTable.dataTable tbody td.active,.table.dataTable.dataTable tbody tr.active td{background-color:var(--bs-table-active-bg)}.table.dataTable.dataTable.table-hover>tbody>tr:hover:not(.selected)>*{box-shadow:inset 0 0 0 9999px var(--bs-table-hover-bg)}thead,tbody,tfoot,tr,td,th{border:none}.table>thead{border-bottom:1px solid var(--bs-table-color)}th{font-weight:600}.datatables .dataTables_wrapper div.dataTables_info{padding-top:1.65rem;font-size:.95rem}.datatables .dataTables_paginate{padding-top:1rem}.datatables .paginate_button a{font-size:.95rem}.datatables .dataTables_length,.datatables .dataTables_filter{padding-bottom:1rem}.datatables .dataTables_wrapper .dt-row{max-width:100%;overflow:auto}.datatables .dataTables_wrapper .dataTables_length select,.datatables .dataTables_wrapper .dataTables_filter input{border:none;border-bottom:1px solid var(--bs-body-color);border-radius:0}.bslib-card-table-sm.bslib-card[data-full-screen="false"] .datatables .dataTables_wrapper{font-size:85%}.bslib-card-table-sm.bslib-card[data-full-screen="false"] .datatables .dataTables_wrapper .dataTables_length,.bslib-card-table-sm.bslib-card[data-full-screen="false"] .datatables .dataTables_wrapper .dataTables_filter,.bslib-card-table-sm.bslib-card[data-full-screen="false"] .datatables .dataTables_wrapper .dataTables_paginate{display:none}:root{--bslib-box-shadow-color-rgb: 29,31,33}[data-bs-theme="dark"]{--bslib-box-shadow-color-rgb: 0,0,0}.checkbox input,.radio input{margin-right:.35em}.shiny-input-container-inline .shiny-options-group{display:flex;flex-wrap:wrap;flex-direction:row;column-gap:1em}.shiny-input-container-inline .shiny-options-group .checkbox-inline,.shiny-input-container-inline .shiny-options-group .radio-inline{position:relative;padding-left:calc(1.2em + .35em * 2)}.shiny-input-container-inline .shiny-options-group .checkbox-inline input,.shiny-input-container-inline .shiny-options-group .radio-inline input{position:absolute;margin-top:0;left:0;top:calc(.15em + var(--bs-border-width))}.shiny-date-range-input .input-daterange .input-group-addon{margin-right:-1px}.btn-outline-default,.btn-default:not(.btn-primary,.btn-secondary,.btn-info,.btn-success,.btn-danger,.btn-warning,.btn-light,.btn-dark,.btn-link,[class*="btn-outline-"]){--bs-btn-color: #404040;--bs-btn-border-color: #404040;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #404040;--bs-btn-hover-border-color: #404040;--bs-btn-focus-shadow-rgb: 64,64,64;--bs-btn-active-color: #fff;--bs-btn-active-bg: #404040;--bs-btn-active-border-color: #404040;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #404040;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #404040;--bs-btn-bg: transparent;--bs-gradient: none}[data-bs-theme="dark"] .btn-outline-default,[data-bs-theme="dark"] .btn-default:not(.btn-primary,.btn-secondary,.btn-info,.btn-success,.btn-danger,.btn-warning,.btn-light,.btn-dark,.btn-link,[class*="btn-outline-"]){--bs-btn-color: #dee2e6;--bs-btn-border-color: #dee2e6;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #dee2e6;--bs-btn-hover-border-color: #dee2e6;--bs-btn-focus-shadow-rgb: 222,226,230;--bs-btn-active-color: #000;--bs-btn-active-bg: #dee2e6;--bs-btn-active-border-color: #dee2e6;--bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color: #dee2e6;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dee2e6;--bs-btn-bg: transparent;--bs-gradient: none}.selectize-control.plugin-remove_button .item{align-items:flex-start !important}.selectize-control.plugin-remove_button .item .remove{border-left:none !important}.bslib-card{box-shadow:var(--bslib-card-box-shadow, 0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16));border-color:var(--bslib-card-border-color, transparent)}.bslib-card.bslib-value-box.default{--bslib-value-box-border-color-default: var(--bslib-card-border-color, transparent)}.bslib-card .bslib-card{--bslib-card-box-shadow: ;--bslib-card-border-color: var(--bs-card-border-color)}.bslib-card .bslib-card.bslib-value-box.default{--bslib-value-box-border-color-default: var(--bs-card-border-color, var(--bs-border-color-translucent))}.bslib-card-box-shadow-sm{--bslib-card-box-shadow: var(--bslib-card-box-shadow-sm, 0px 0px 2px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.14),0px 2px 4px 0px RGBA(var(--bslib-box-shadow-color-rgb), 0.16))}.bslib-card-box-shadow-md{--bslib-card-box-shadow: var(--bslib-card-box-shadow-md, 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08))}.bslib-card-box-shadow-lg{--bslib-card-box-shadow: var(--bslib-card-box-shadow-lg, 0px 4px 10px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.17))}.bslib-card-box-shadow-none{--bslib-card-box-shadow: none;--bslib-card-border-color: var(--bs-card-border-color)}.popover{--bs-popover-shadow: 0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08);box-shadow:var(--bs-popover-shadow)}:root{--bslib-dashboard-sidebar-bg: var(--bs-body-bg);--bslib-dashboard-sidebar-main-bg: var(--bs-body-bg);--bslib-dashboard-main-bg: rgb(247, 247, 247);--bs-card-border-color: var(--bslib-dashboard-border-color-translucent, var(--bs-border-color-translucent));--bslib-dashboard-card-cap-bg: var(--bs-body-bg);--bslib-dashboard-card-header-font-weight: 600;--bslib-sidebar-bg: var(--bs-body-bg);--bslib-sidebar-fg: var(--bs-color)}[data-bs-theme="dark"]{--bslib-dashboard-main-bg: rgb(20, 20, 24)}.bslib-card{--bs-card-cap-bg: var(--bslib-dashboard-card-cap-bg)}.bslib-card .card-header,.bslib-card .card-footer{font-size:0.9rem}.bslib-card .card-header{font-weight:var(--bslib-dashboard-card-header-font-weight);line-height:1.375rem}.bslib-page-dashboard,.main:has(.tab-content>.bslib-page-dashboard.active){background-color:var(--bslib-dashboard-main-bg);--_main-bg: var(--bslib-dashboard-main-bg)}.bslib-page-navbar>.navbar,.bslib-page-dashboard>.navbar{--bslib-navbar-default-bg: var(--bs-body-bg);--bslib-navbar-inverse-bg: var(--bs-body-color)}.bslib-page-navbar>.navbar+div,.bslib-page-dashboard>.navbar+div{border-top:var(--bs-border-width) solid var(--bs-border-color-translucent)}.bslib-page-navbar>.navbar+div>.bslib-sidebar-layout,.bslib-page-navbar>.navbar+div>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout.html-fill-item,.bslib-page-dashboard>.navbar+div>.bslib-sidebar-layout,.bslib-page-dashboard>.navbar+div>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout.html-fill-item{border-top:none !important}.bslib-page-sidebar{--bslib-page-sidebar-title-bg: var(--bs-body-bg);--bslib-page-sidebar-title-color: var(--bs-body-color)}.bslib-page-sidebar .bslib-page-title{border-color:var(--bs-border-color-translucent)}.nav-underline{--bs-link-color: rgba(var(--bs-body-color-rgb), 0.65);--bs-link-hover-color: rgba(var(--bs-body-color-rgb), 0.8);--bs-nav-link-font-size: 0.875rem}.nav-underline .nav-link,.nav-underline :where(ul.nav.navbar-nav > li)>a,.nav-underline .nav-tabs>li>a,.nav-underline .nav-pills>li>a{padding-left:5px !important;padding-right:5px !important}.nav-underline .nav-link.active,.nav-underline :where(ul.nav.navbar-nav > li)>a.active,.nav-underline .nav-tabs>li>a.active,.nav-underline .nav-pills>li>a.active{font-weight:500}.navbar-collapse.show .nav-underline,.navbar-collapse.in .nav-underline,.navbar-collapse.collapsing .nav-underline{--bs-nav-underline-border-width: 0;--bs-nav-underline-gap: 0}.navbar .nav-underline .nav-link,.navbar .nav-underline :where(ul.nav.navbar-nav > li)>a,.navbar .nav-underline .nav-tabs>li>a,.navbar .nav-underline .nav-pills>li>a{padding-bottom:calc(var(--bs-navbar-padding-y, .5rem) * 2);margin-bottom:calc(var(--bs-navbar-padding-y, .5rem) * -1)}.bslib-value-box.default .value-box-showcase>i.bi{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>i.fa{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>i.fas{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>i.far{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>i.fab{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>i.material-icons{background:linear-gradient(140deg, #007bc2 36%, #74149c 180%) #007bc2;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bslib-value-box.default .value-box-showcase>svg.bi{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.default .value-box-showcase>svg.fa{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.default .value-box-showcase>svg.fas{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.default .value-box-showcase>svg.far{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.default .value-box-showcase>svg.fab{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.default .value-box-showcase>svg.material-icons{fill:url("#bslib---icon-gradient") #007bc2 !important}.bslib-value-box.text-info{color:#028097 !important}.bslib-value-box.text-info,.bslib-value-box.text-info.text-cyan{--bslib-color-fg: $cyan !important}.bslib-value-box.text-light{--bslib-color-fg: $gray-600 !important}.bslib-value-box.text-warning{color:#A87600 !important}.bslib-value-box.text-warning,.bslib-value-box.text-warning.text-yellow{--bslib-color-fg: $warning !important}.bslib-value-box.text-teal.text-teal{--bslib-color-fg: #008558}.modal-body,.modal-footer{padding:1.5rem}.modal-header .btn-close{align-self:start;display:flex}#shiny-modal-wrapper:has(~.modal-backdrop) .modal{backdrop-filter:blur(2px)}#shiny-notification-panel#shiny-notification-panel{position:fixed;bottom:calc(var(--bslib-spacer, 1rem) / 2);right:calc(var(--bslib-spacer, 1rem) / 2);width:450px;z-index:1090}.progress-message{margin-right:.6rem}.shiny-notification.shiny-notification{position:relative;opacity:0.96;padding:2rem;margin:var(--bslib-spacer, 1rem);border:1px solid var(--bs-border-color-translucent);border-radius:8px;box-shadow:0px 1px 2px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 3px 7px RGBA(var(--bslib-box-shadow-color-rgb), 0.1),0px 12px 30px RGBA(var(--bslib-box-shadow-color-rgb), 0.08)}.shiny-notification.shiny-notification .shiny-notification-close{position:absolute;font-size:1.5em;width:2rem;height:2rem;top:0;right:0;bottom:unset;display:flex;align-items:center;justify-content:center;padding:0.25rem;cursor:pointer;font-weight:200;color:currentColor}.shiny-notification.shiny-notification .shiny-notification-close:hover{font-weight:normal}.shiny-notification.shiny-notification .shiny-notification-content-text :last-child{margin-bottom:0} - -/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAic3RkaW4uY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzdGRpbiIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvc2Fzcy11dGlscy9jb2xvci1jb250cmFzdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fdmFyaWFibGVzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZGVmYXVsdHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMtZGFyay5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21hcHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19taXhpbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2NvbG9yLXNjaGVtZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2RlY2xhcmF0aW9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fbWl4aW5zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L2lvbnJhbmdlc2xpZGVyL192YXJpYWJsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYmFubmVyLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fcm9vdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3JlYm9vdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3R5cGUuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19pbWFnZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19jb250YWluZXJzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fZ3JpZC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3RhYmxlcy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Zvcm1zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9mb3Jtcy9fdmFsaWRhdGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2J1dHRvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Ryb3Bkb3duLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fbmF2LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fbmF2YmFyLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fY2FyZC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2FjY29yZGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fYmFkZ2Uuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19hbGVydC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3Byb2dyZXNzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Nsb3NlLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdG9hc3RzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fbW9kYWwuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL190b29sdGlwLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fcG9wb3Zlci5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Nhcm91c2VsLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19vZmZjYW52YXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19wbGFjZWhvbGRlcnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19oZWxwZXJzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9oZWxwZXJzL19jbGVhcmZpeC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvaGVscGVycy9fY29sb3ItYmcuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX2NvbG9yZWQtbGlua3Muc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX2ljb24tbGluay5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvaGVscGVycy9fcmF0aW8uc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvaGVscGVycy9fdnIuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fcnVsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L193ZWxscy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2hlbHBfdGV4dC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2Ryb3Bkb3duX2NvbXBhdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX25hdmJhcl9jb21wYXQuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L19uYXZfY29tcGF0LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fcHJvZ3Jlc3NfY29tcGF0LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZHRfY29tcGF0LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZ2x5cGhpY29ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX3NoaW55X2lucHV0LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fc2hpbnlfbWlzYy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2hlYWRlcnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9ic2xpYi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9ic2xpYi1zY3NzL3NwYWNlci5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9ic2xpYi1zY3NzL3RhYi1maWxsLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzbGliLXNjc3MvY29sb3ItdXRpbGl0aWVzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L19ydWxlcy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9pb25yYW5nZXNsaWRlci9fcnVsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnVpbHRpbi9iczUvc2hpbnkvdGFibGVzL19ydWxlcy5zY3NzIgoJXSwKCSJzb3VyY2VzQ29udGVudCI6IFsKCQkiQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fZnVuY3Rpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9ic2xpYi1zY3NzL2Z1bmN0aW9ucy5zY3NzXCI7XG4kY29sb3ItY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cblxuXG4kYnNsaWItcHJlc2V0LXR5cGU6IGJ1aWx0aW47XG4kYnNsaWItcHJlc2V0LW5hbWU6IHNoaW55O1xuJHdlYi1mb250LXBhdGg6IFwiZm9udC5jc3NcIiAhZGVmYXVsdDtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fdmFyaWFibGVzLnNjc3NcIjtcbiRlbmFibGUtY3NzZ3JpZDogdHJ1ZSAhZGVmYXVsdDtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2RlZmF1bHRzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3ZhcmlhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMtZGFyay5zY3NzXCI7XG4kYm9vdHN0cmFwLXZlcnNpb246IDU7XG4kYnNsaWItcHJlc2V0LW5hbWU6IG51bGwgIWRlZmF1bHQ7XG4kYnNsaWItcHJlc2V0LXR5cGU6IG51bGwgIWRlZmF1bHQ7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19tYXBzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21peGlucy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L19kZWNsYXJhdGlvbnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L19taXhpbnMuc2Nzc1wiO1xuOnJvb3Qge1xuLS1ic2xpYi1ib290c3RyYXAtdmVyc2lvbjogI3skYm9vdHN0cmFwLXZlcnNpb259O1xuLS1ic2xpYi1wcmVzZXQtbmFtZTogI3skYnNsaWItcHJlc2V0LW5hbWV9O1xuLS1ic2xpYi1wcmVzZXQtdHlwZTogI3skYnNsaWItcHJlc2V0LXR5cGV9O1xufVxuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2Jhbm5lci5zY3NzXCI7XG5AaW5jbHVkZSBic0Jhbm5lcignJylcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3V0aWxpdGllcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19yb290LnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3JlYm9vdC5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL190eXBlLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2ltYWdlcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19jb250YWluZXJzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2dyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdGFibGVzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Zvcm1zLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2J1dHRvbnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdHJhbnNpdGlvbnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fZHJvcGRvd24uc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX25hdi5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19uYXZiYXIuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fY2FyZC5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19hY2NvcmRpb24uc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19wYWdpbmF0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2JhZGdlLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2FsZXJ0LnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3Byb2dyZXNzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2xpc3QtZ3JvdXAuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fY2xvc2Uuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdG9hc3RzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21vZGFsLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3Rvb2x0aXAuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fcG9wb3Zlci5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19jYXJvdXNlbC5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19zcGlubmVycy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19vZmZjYW52YXMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fcGxhY2Vob2xkZXJzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2hlbHBlcnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzXCI7XG4udGFibGUgdGhbYWxpZ249bGVmdF0geyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4udGFibGUgdGhbYWxpZ249cmlnaHRdIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50YWJsZSB0aFthbGlnbj1jZW50ZXJdIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L19ydWxlcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9ic2xpYi5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnVpbHRpbi9iczUvc2hpbnkvX3J1bGVzLnNjc3NcIjsiLAoJCSIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sb3JzXG5AZnVuY3Rpb24gdG8tcmdiKCR2YWx1ZSkge1xuICBAcmV0dXJuIHJlZCgkdmFsdWUpLCBncmVlbigkdmFsdWUpLCBibHVlKCR2YWx1ZSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbkBmdW5jdGlvbiByZ2JhLWNzcy12YXIoJGlkZW50aWZpZXIsICR0YXJnZXQpIHtcbiAgQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwiYmdcIiB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1iZy1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH0gQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwidGV4dFwiIHtcbiAgICBAcmV0dXJuIHJnYmEodmFyKC0tI3skcHJlZml4fSN7JGlkZW50aWZpZXJ9LWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH0jeyR0YXJnZXR9LW9wYWNpdHkpKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIG1hcC1sb29wKCRtYXAsICRmdW5jLCAkYXJncy4uLikge1xuICAkX21hcDogKCk7XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIC8vIGFsbG93IHRvIHBhc3MgdGhlICRrZXkgYW5kICR2YWx1ZSBvZiB0aGUgbWFwIGFzIGFuIGZ1bmN0aW9uIGFyZ3VtZW50XG4gICAgJF9hcmdzOiAoKTtcbiAgICBAZWFjaCAkYXJnIGluICRhcmdzIHtcbiAgICAgICRfYXJnczogYXBwZW5kKCRfYXJncywgaWYoJGFyZyA9PSBcIiRrZXlcIiwgJGtleSwgaWYoJGFyZyA9PSBcIiR2YWx1ZVwiLCAkdmFsdWUsICRhcmcpKSk7XG4gICAgfVxuXG4gICAgJF9tYXA6IG1hcC1tZXJnZSgkX21hcCwgKCRrZXk6IGNhbGwoZ2V0LWZ1bmN0aW9uKCRmdW5jKSwgJF9hcmdzLi4uKSkpO1xuICB9XG5cbiAgQHJldHVybiAkX21hcDtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuXG5AZnVuY3Rpb24gdmFyaWZ5KCRsaXN0KSB7XG4gICRyZXN1bHQ6IG51bGw7XG4gIEBlYWNoICRlbnRyeSBpbiAkbGlzdCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIHZhcigtLSN7JHByZWZpeH0jeyRlbnRyeX0pLCBzcGFjZSk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBJbnRlcm5hbCBCb290c3RyYXAgZnVuY3Rpb24gdG8gdHVybiBtYXBzIGludG8gaXRzIG5lZ2F0aXZlIHZhcmlhbnQuXG4vLyBJdCBwcmVmaXhlcyB0aGUga2V5cyB3aXRoIGBuYCBhbmQgbWFrZXMgdGhlIHZhbHVlIG5lZ2F0aXZlLlxuQGZ1bmN0aW9uIG5lZ2F0aXZpZnktbWFwKCRtYXApIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgJGtleSAhPSAwIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoXCJuXCIgKyAka2V5OiAoLSR2YWx1ZSkpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBHZXQgbXVsdGlwbGUga2V5cyBmcm9tIGEgc2FzcyBtYXBcbkBmdW5jdGlvbiBtYXAtZ2V0LW11bHRpcGxlKCRtYXAsICR2YWx1ZXMpIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgKGluZGV4KCR2YWx1ZXMsICRrZXkpICE9IG51bGwpIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGtleTogJHZhbHVlKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gTWVyZ2UgbXVsdGlwbGUgbWFwc1xuQGZ1bmN0aW9uIG1hcC1tZXJnZS1tdWx0aXBsZSgkbWFwcy4uLikge1xuICAkbWVyZ2VkLW1hcHM6ICgpO1xuXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgICRtZXJnZWQtbWFwczogbWFwLW1lcmdlKCRtZXJnZWQtbWFwcywgJG1hcCk7XG4gIH1cbiAgQHJldHVybiAkbWVyZ2VkLW1hcHM7XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzAxNjhcblxuLy8gQSBsaXN0IG9mIHByZS1jYWxjdWxhdGVkIG51bWJlcnMgb2YgcG93KGRpdmlkZSgoZGl2aWRlKCR2YWx1ZSwgMjU1KSArIC4wNTUpLCAxLjA1NSksIDIuNCkuIChmcm9tIDAgdG8gMjU1KVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHQsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbiRfbHVtaW5hbmNlLWxpc3Q6IC4wMDA4IC4wMDEgLjAwMTEgLjAwMTMgLjAwMTUgLjAwMTcgLjAwMiAuMDAyMiAuMDAyNSAuMDAyNyAuMDAzIC4wMDMzIC4wMDM3IC4wMDQgLjAwNDQgLjAwNDggLjAwNTIgLjAwNTYgLjAwNiAuMDA2NSAuMDA3IC4wMDc1IC4wMDggLjAwODYgLjAwOTEgLjAwOTcgLjAxMDMgLjAxMSAuMDExNiAuMDEyMyAuMDEzIC4wMTM3IC4wMTQ0IC4wMTUyIC4wMTYgLjAxNjggLjAxNzYgLjAxODUgLjAxOTQgLjAyMDMgLjAyMTIgLjAyMjIgLjAyMzIgLjAyNDIgLjAyNTIgLjAyNjIgLjAyNzMgLjAyODQgLjAyOTYgLjAzMDcgLjAzMTkgLjAzMzEgLjAzNDMgLjAzNTYgLjAzNjkgLjAzODIgLjAzOTUgLjA0MDkgLjA0MjMgLjA0MzcgLjA0NTIgLjA0NjcgLjA0ODIgLjA0OTcgLjA1MTMgLjA1MjkgLjA1NDUgLjA1NjEgLjA1NzggLjA1OTUgLjA2MTIgLjA2MyAuMDY0OCAuMDY2NiAuMDY4NSAuMDcwNCAuMDcyMyAuMDc0MiAuMDc2MiAuMDc4MiAuMDgwMiAuMDgyMyAuMDg0NCAuMDg2NSAuMDg4NyAuMDkwOCAuMDkzMSAuMDk1MyAuMDk3NiAuMDk5OSAuMTAyMiAuMTA0NiAuMTA3IC4xMDk1IC4xMTE5IC4xMTQ0IC4xMTcgLjExOTUgLjEyMjEgLjEyNDggLjEyNzQgLjEzMDEgLjEzMjkgLjEzNTYgLjEzODQgLjE0MTMgLjE0NDEgLjE0NyAuMTUgLjE1MjkgLjE1NTkgLjE1OSAuMTYyIC4xNjUxIC4xNjgzIC4xNzE0IC4xNzQ2IC4xNzc5IC4xODEyIC4xODQ1IC4xODc4IC4xOTEyIC4xOTQ2IC4xOTgxIC4yMDE2IC4yMDUxIC4yMDg2IC4yMTIyIC4yMTU5IC4yMTk1IC4yMjMyIC4yMjcgLjIzMDcgLjIzNDYgLjIzODQgLjI0MjMgLjI0NjIgLjI1MDIgLjI1NDIgLjI1ODIgLjI2MjMgLjI2NjQgLjI3MDUgLjI3NDcgLjI3ODkgLjI4MzEgLjI4NzQgLjI5MTggLjI5NjEgLjMwMDUgLjMwNSAuMzA5NSAuMzE0IC4zMTg1IC4zMjMxIC4zMjc4IC4zMzI1IC4zMzcyIC4zNDE5IC4zNDY3IC4zNTE1IC4zNTY0IC4zNjEzIC4zNjYzIC4zNzEyIC4zNzYzIC4zODEzIC4zODY0IC4zOTE2IC4zOTY4IC40MDIgLjQwNzIgLjQxMjUgLjQxNzkgLjQyMzMgLjQyODcgLjQzNDIgLjQzOTcgLjQ0NTIgLjQ1MDggLjQ1NjQgLjQ2MjEgLjQ2NzggLjQ3MzUgLjQ3OTMgLjQ4NTEgLjQ5MSAuNDk2OSAuNTAyOSAuNTA4OSAuNTE0OSAuNTIxIC41MjcxIC41MzMzIC41Mzk1IC41NDU3IC41NTIgLjU1ODMgLjU2NDcgLjU3MTEgLjU3NzYgLjU4NDEgLjU5MDYgLjU5NzIgLjYwMzggLjYxMDUgLjYxNzIgLjYyNCAuNjMwOCAuNjM3NiAuNjQ0NSAuNjUxNCAuNjU4NCAuNjY1NCAuNjcyNCAuNjc5NSAuNjg2NyAuNjkzOSAuNzAxMSAuNzA4NCAuNzE1NyAuNzIzMSAuNzMwNSAuNzM3OSAuNzQ1NCAuNzUyOSAuNzYwNSAuNzY4MiAuNzc1OCAuNzgzNSAuNzkxMyAuNzk5MSAuODA3IC44MTQ4IC44MjI4IC44MzA4IC44Mzg4IC44NDY5IC44NTUgLjg2MzIgLjg3MTQgLjg3OTYgLjg4NzkgLjg5NjMgLjkwNDcgLjkxMzEgLjkyMTYgLjkzMDEgLjkzODcgLjk0NzMgLjk1NiAuOTY0NyAuOTczNCAuOTgyMyAuOTkxMSAxO1xuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQsICRjb2xvci1jb250cmFzdC1kYXJrOiAkY29sb3ItY29udHJhc3QtZGFyaywgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRtaW4tY29udHJhc3QtcmF0aW86ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgJGZvcmVncm91bmRzOiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgJG1heC1yYXRpbzogMDtcbiAgJG1heC1yYXRpby1jb2xvcjogbnVsbDtcblxuICBAZWFjaCAkY29sb3IgaW4gJGZvcmVncm91bmRzIHtcbiAgICAkY29udHJhc3QtcmF0aW86IGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICAgIEBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWluLWNvbnRyYXN0LXJhdGlvIHtcbiAgICAgIEByZXR1cm4gJGNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1heC1yYXRpbyB7XG4gICAgICAkbWF4LXJhdGlvOiAkY29udHJhc3QtcmF0aW87XG4gICAgICAkbWF4LXJhdGlvLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgQHdhcm4gXCJGb3VuZCBubyBjb2xvciBsZWFkaW5nIHRvICN7JG1pbi1jb250cmFzdC1yYXRpb306MSBjb250cmFzdCByYXRpbyBhZ2FpbnN0ICN7JGJhY2tncm91bmR9Li4uXCI7XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsIGRpdmlkZSgkbDEgKyAuMDUsICRsMiArIC4wNSksIGRpdmlkZSgkbDIgKyAuMDUsICRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMSByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRy8jZGZuLXJlbGF0aXZlLWx1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNkZm4tY29udHJhc3QtcmF0aW9cbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZihkaXZpZGUoJHZhbHVlLCAyNTUpIDwgLjA0MDQ1LCBkaXZpZGUoZGl2aWRlKCR2YWx1ZSwgMjU1KSwgMTIuOTIpLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCUpO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItZnVuY3Rpb25zXG4vLyBUaW50IGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggd2hpdGVcbkBmdW5jdGlvbiB0aW50LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCBibGFja1xuQGZ1bmN0aW9uIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgdGhlIGNvbG9yIGlmIHRoZSB3ZWlnaHQgaXMgcG9zaXRpdmUsIGVsc2UgdGludCBpdFxuQGZ1bmN0aW9uIHNoaWZ0LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIGlmKCR3ZWlnaHQgPiAwLCBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpLCB0aW50LWNvbG9yKCRjb2xvciwgLSR3ZWlnaHQpKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItZnVuY3Rpb25zXG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsCgkJIi8vIGNvbG9yLWNvbnRyYXN0KCkgd2FzIGludHJvZHVjZWQgaW4gQm9vdHN0cmFwIDUuXG4vLyBXZSBpbmNsdWRlIG91ciBvd24gdmVyc2lvbiBmb3IgYSBmZXcgcmVhc29uczpcbi8vIDEuIEVhc2lseSB0dXJuIG9mZiB3YXJuaW5ncyBvcHRpb25zKGJzbGliLmNvbG9yX2NvbnRyYXN0X3dhcm5pbmdzPUYpXG4vLyAyLiBBbGxvdyBCb290c3RyYXAgMyAmIDQgdG8gdXNlIGNvbG9yLWNvbnRyYXN0KCkgaW4gdmFyaWFibGUgZGVmaW5pdGlvbnNcbi8vIDMuIEFsbG93IEJvb3RzdHJhcCAzICYgNCB0byB1c2UgYnNfZ2V0X2NvbnRyYXN0KClcblxuLy8gQWxzbyBub3RlIHRoYXQgY29sb3ItY29udHJhc3QoKSBsaXZlcyBpbiBzYXNzLXV0aWxzIHNpbmNlIHByb2plY3RzIGxpa2UgUXVhcnRvXG4vLyBhbmQgZmxleGRhc2hib2FyZCBjdXJyZW50bHkgYXNzdW1lIGl0IGV4aXN0cyB0aGVyZS4uLi5cbkBpbXBvcnQgXCIuLi9zYXNzLXV0aWxzL2NvbG9yLWNvbnRyYXN0LnNjc3NcIjtcblxuXG5AZnVuY3Rpb24gaXMtY3NzLXZhcmlhYmxlKCR4KSB7XG4gIEBpZiAodHlwZS1vZigkeCkgIT0gc3RyaW5nKSB7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHgsIDEsIDYpID09ICd2YXIoLS0nO1xuICB9XG59XG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQ29sb3IgY29udHJhc3RpbmcgKGJhY2twb3J0ZWQgdG8gQlM0IGZyb20gQlM1KVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwMTY4XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBBIGxpc3Qgb2YgcHJlLWNhbGN1bGF0ZWQgbnVtYmVycyBvZiBwb3coZGl2aWRlKChkaXZpZGUoJHZhbHVlLCAyNTUpICsgLjA1NSksIDEuMDU1KSwgMi40KS4gKGZyb20gMCB0byAyNTUpXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuJF9sdW1pbmFuY2UtbGlzdDogLjAwMDggLjAwMSAuMDAxMSAuMDAxMyAuMDAxNSAuMDAxNyAuMDAyIC4wMDIyIC4wMDI1IC4wMDI3IC4wMDMgLjAwMzMgLjAwMzcgLjAwNCAuMDA0NCAuMDA0OCAuMDA1MiAuMDA1NiAuMDA2IC4wMDY1IC4wMDcgLjAwNzUgLjAwOCAuMDA4NiAuMDA5MSAuMDA5NyAuMDEwMyAuMDExIC4wMTE2IC4wMTIzIC4wMTMgLjAxMzcgLjAxNDQgLjAxNTIgLjAxNiAuMDE2OCAuMDE3NiAuMDE4NSAuMDE5NCAuMDIwMyAuMDIxMiAuMDIyMiAuMDIzMiAuMDI0MiAuMDI1MiAuMDI2MiAuMDI3MyAuMDI4NCAuMDI5NiAuMDMwNyAuMDMxOSAuMDMzMSAuMDM0MyAuMDM1NiAuMDM2OSAuMDM4MiAuMDM5NSAuMDQwOSAuMDQyMyAuMDQzNyAuMDQ1MiAuMDQ2NyAuMDQ4MiAuMDQ5NyAuMDUxMyAuMDUyOSAuMDU0NSAuMDU2MSAuMDU3OCAuMDU5NSAuMDYxMiAuMDYzIC4wNjQ4IC4wNjY2IC4wNjg1IC4wNzA0IC4wNzIzIC4wNzQyIC4wNzYyIC4wNzgyIC4wODAyIC4wODIzIC4wODQ0IC4wODY1IC4wODg3IC4wOTA4IC4wOTMxIC4wOTUzIC4wOTc2IC4wOTk5IC4xMDIyIC4xMDQ2IC4xMDcgLjEwOTUgLjExMTkgLjExNDQgLjExNyAuMTE5NSAuMTIyMSAuMTI0OCAuMTI3NCAuMTMwMSAuMTMyOSAuMTM1NiAuMTM4NCAuMTQxMyAuMTQ0MSAuMTQ3IC4xNSAuMTUyOSAuMTU1OSAuMTU5IC4xNjIgLjE2NTEgLjE2ODMgLjE3MTQgLjE3NDYgLjE3NzkgLjE4MTIgLjE4NDUgLjE4NzggLjE5MTIgLjE5NDYgLjE5ODEgLjIwMTYgLjIwNTEgLjIwODYgLjIxMjIgLjIxNTkgLjIxOTUgLjIyMzIgLjIyNyAuMjMwNyAuMjM0NiAuMjM4NCAuMjQyMyAuMjQ2MiAuMjUwMiAuMjU0MiAuMjU4MiAuMjYyMyAuMjY2NCAuMjcwNSAuMjc0NyAuMjc4OSAuMjgzMSAuMjg3NCAuMjkxOCAuMjk2MSAuMzAwNSAuMzA1IC4zMDk1IC4zMTQgLjMxODUgLjMyMzEgLjMyNzggLjMzMjUgLjMzNzIgLjM0MTkgLjM0NjcgLjM1MTUgLjM1NjQgLjM2MTMgLjM2NjMgLjM3MTIgLjM3NjMgLjM4MTMgLjM4NjQgLjM5MTYgLjM5NjggLjQwMiAuNDA3MiAuNDEyNSAuNDE3OSAuNDIzMyAuNDI4NyAuNDM0MiAuNDM5NyAuNDQ1MiAuNDUwOCAuNDU2NCAuNDYyMSAuNDY3OCAuNDczNSAuNDc5MyAuNDg1MSAuNDkxIC40OTY5IC41MDI5IC41MDg5IC41MTQ5IC41MjEgLjUyNzEgLjUzMzMgLjUzOTUgLjU0NTcgLjU1MiAuNTU4MyAuNTY0NyAuNTcxMSAuNTc3NiAuNTg0MSAuNTkwNiAuNTk3MiAuNjAzOCAuNjEwNSAuNjE3MiAuNjI0IC42MzA4IC42Mzc2IC42NDQ1IC42NTE0IC42NTg0IC42NjU0IC42NzI0IC42Nzk1IC42ODY3IC42OTM5IC43MDExIC43MDg0IC43MTU3IC43MjMxIC43MzA1IC43Mzc5IC43NDU0IC43NTI5IC43NjA1IC43NjgyIC43NzU4IC43ODM1IC43OTEzIC43OTkxIC44MDcgLjgxNDggLjgyMjggLjgzMDggLjgzODggLjg0NjkgLjg1NSAuODYzMiAuODcxNCAuODc5NiAuODg3OSAuODk2MyAuOTA0NyAuOTEzMSAuOTIxNiAuOTMwMSAuOTM4NyAuOTQ3MyAuOTU2IC45NjQ3IC45NzM0IC45ODIzIC45OTExIDE7XG5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCwgJGZvcmVncm91bmRzOiBudWxsKSB7XG5cbiAgLy8gVGhlc2UgdmFyaWFibGVzIHNob3VsZCBiZSBkZWZpbmVkIGluIF92YXJpYWJsZXMuc2NzcywgYnV0IHdlIGFsc29cbiAgLy8gZGVmaW5lIHRoZW0gaGVyZSBzbyB0aGF0IDNyZCBwYXJ0eSBsaWJzIGNhbiB1c2UgaWYgdGhleSB3YW50XG4gIC8vIHdpdGhvdXQgcG9sbHV0aW5nIHRoZSBnbG9iYWwgbmFtZXNwYWNlXG4gICRibGFjazogIzAwMCAhZGVmYXVsdDtcbiAgJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuICAkY29sb3ItY29udHJhc3QtZGFyazogJGJsYWNrICFkZWZhdWx0O1xuICAkY29sb3ItY29udHJhc3QtbGlnaHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiAgJG1pbi1jb250cmFzdC1yYXRpbzogMyAhZGVmYXVsdDtcblxuICBAaWYgJGZvcmVncm91bmRzID09IG51bGwge1xuICAgICRmb3JlZ3JvdW5kczogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gIH0gQGVsc2Uge1xuICAgICRmb3JlZ3JvdW5kczogJGZvcmVncm91bmRzLCAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgfVxuXG4gICRtYXgtcmF0aW86IDA7XG4gICRtYXgtcmF0aW8tY29sb3I6IG51bGw7XG5cbiAgQGVhY2ggJGNvbG9yIGluICRmb3JlZ3JvdW5kcyB7XG4gICAgJGNvbnRyYXN0LXJhdGlvOiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgICBAaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1pbi1jb250cmFzdC1yYXRpbyB7XG4gICAgICBAcmV0dXJuICRjb2xvcjtcbiAgICB9IEBlbHNlIGlmICRjb250cmFzdC1yYXRpbyA+ICRtYXgtcmF0aW8ge1xuICAgICAgJG1heC1yYXRpbzogJGNvbnRyYXN0LXJhdGlvO1xuICAgICAgJG1heC1yYXRpby1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICRjb2xvci1jb250cmFzdC13YXJuaW5nczogZmFsc2UgIWRlZmF1bHQ7XG4gIEBpZiAkY29sb3ItY29udHJhc3Qtd2FybmluZ3Mge1xuICAgIEB3YXJuIFwiRm91bmQgbm8gY29sb3IgbGVhZGluZyB0byAjeyRtaW4tY29udHJhc3QtcmF0aW99OjEgY29udHJhc3QgcmF0aW8gYWdhaW5zdCAjeyRiYWNrZ3JvdW5kfS4uLlwiO1xuICB9XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsIGRpdmlkZSgkbDEgKyAuMDUsICRsMiArIC4wNSksIGRpdmlkZSgkbDIgKyAuMDUsICRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMCByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvV0FJL0dML3dpa2kvUmVsYXRpdmVfbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHNcbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZihkaXZpZGUoJHZhbHVlLCAyNTUpIDwgLjA0MDQ1LCBkaXZpZGUoZGl2aWRlKCR2YWx1ZSwgMjU1KSwgMTIuOTIpLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCUpO1xufVxuXG4vLyBBZGRlZCBpbiBCUzUgYXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIFxcIG9wZXJhdG9yLCB3aGljaFxuLy8gdGhyb3dzIHdhcm5pbmdzIGluIERhcnQgU2Fzc1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzQyNDVcbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLAoJCSIkYmx1ZTogIzAwN2JjMiAhZGVmYXVsdDtcbiRpbmRpZ286ICM0YjAwYzEgIWRlZmF1bHQ7XG4kcHVycGxlOiAjNzQxNDljICFkZWZhdWx0O1xuJHBpbms6ICNiZjAwN2YgIWRlZmF1bHQ7XG4kcmVkOiAjYzEwMDAwICFkZWZhdWx0O1xuJG9yYW5nZTogI2Y0NTEwMCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICNmOWI5MjggIWRlZmF1bHQ7XG4kZ3JlZW46ICMwMDg5MWEgIWRlZmF1bHQ7XG4kdGVhbDogIzAwYmY3ZiAhZGVmYXVsdDtcbiRjeWFuOiAjMDNjN2U4ICFkZWZhdWx0O1xuJHdoaXRlOiAjZmZmZmZmICFkZWZhdWx0O1xuXG4kZ3JheTogIzYwNjA2MCAhZGVmYXVsdDtcbiRncmF5LWRhcms6ICMzMDMwMzAgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY4ZjggIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZGQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICM4RDk1OUUgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM3MDc3ODIgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0ODUwNUYgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNBNDYgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMxRDFGMjEgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0OiAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kcHJpbWFyeTogJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAjNDA0MDQwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICMyMDIwMjAgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXJnYjogMjIyLCAyMjYsIDIzMCAhZGVmYXVsdDtcbiRwcmltYXJ5LXJnYjogMCwgMTIzLCAxOTQgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXJnYjogNjQsIDY0LCA2NCAhZGVmYXVsdDtcbiRzdWNjZXNzLXJnYjogMCwgMTM3LCAyNiAhZGVmYXVsdDtcbiRpbmZvLXJnYjogMywgMTk5LCAyMzIgIWRlZmF1bHQ7XG4kd2FybmluZy1yZ2I6IDI0OSwgMTg1LCA0MCAhZGVmYXVsdDtcbiRkYW5nZXItcmdiOiAxOTMsIDAsIDAgIWRlZmF1bHQ7XG4kbGlnaHQtcmdiOiAyNDgsIDI0OCwgMjQ4ICFkZWZhdWx0O1xuJGRhcmstcmdiOiAzMiwgMzIsIDMyICFkZWZhdWx0O1xuJHdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NSAhZGVmYXVsdDtcbiRibGFjay1yZ2I6IDAsIDAsIDAgIWRlZmF1bHQ7XG4kYm9keS1jb2xvci1yZ2I6IDUyLCA1OCwgNzAgIWRlZmF1bHQ7XG4kYm9keS1iZy1yZ2I6IDI1NSwgMjU1LCAyNTUgIWRlZmF1bHQ7XG5cbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KFxuICAxODBkZWcsXG4gIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksXG4gIHJnYmEoMjU1LCAyNTUsIDI1NSwgMClcbikgIWRlZmF1bHQ7XG5cbiRib2R5LWNvbG9yOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogJHdoaXRlICFkZWZhdWx0O1xuXG4kcHJlZml4OiBicy0gIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4kZm9udC1mYW1pbHktYmFzZTogXCJPcGVuIFNhbnNcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IFwiU291cmNlIENvZGUgUHJvXCIsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2VcdCFkZWZhdWx0O1xuXG4kcm9vdC1mb250LXNpemU6IDE4cHggIWRlZmF1bHQ7XG4kYm9keS1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kaDEtZm9udC1zaXplOiAyLjFyZW0gIWRlZmF1bHQ7XG5cbiRib2R5LWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDQwMCAhZGVmYXVsdDtcblxuLy8gU3BhY2luZ1xuJGJzbGliLXNwYWNlcjogMS41cmVtICFkZWZhdWx0O1xuJGhyLW1hcmdpbi15OiAycmVtICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6IDAuNjZyZW0gIWRlZmF1bHQ7XG5cbi8vIElucHV0c1xuJGlucHV0LWJ0bi1mb250LXNpemU6IDE1cHggIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvbnNcbiRidG4tZm9udC13ZWlnaHQ6IDUwMCAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAwLjc1ZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogMmVtICFkZWZhdWx0O1xuXG4vLyBGb3JtIGNvbnRyb2xzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogMS4yZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAwLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogJGdyYXktNjAwICFkZWZhdWx0O1xuXG4vLyBCb3JkZXJzXG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gRGVmYXVsdHMgdG8gJGdyYXk3MDAsIG9mIHdoaWNoIHdlJ3ZlIHNldCB0byBhIGJsdWVpc2gtZ3JheSwgd2hpY2ggbG9va3MgYSBiaXQgd2VpcmQuLi5cbi8vIFdlIGNvdWxkIGdvIGZvcndhcmQgd2l0aCB0aGUgYmx1ZS1pc2ggZ3JheSwgYnV0IGlmIHdlIGRvLCB3ZSdsbCB3YW50IHRvIGFsc28gbWFrZVxuLy8gJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrIGEgYml0IG1vcmUgYmx1ZWlzaFxuJGJvcmRlci1jb2xvci1kYXJrOiAjNDk1MDU3ICFkZWZhdWx0O1xuXG4vLyBUYWJsZXNcbiR0YWJsZS1zdHJpcGVkLWJnOiByZ2JhKCRwcmltYXJ5LCAwLjA2KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogcmdiYSgkcHJpbWFyeSwgMC4xKSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4vLyBCb3ggU2hhZG93c1xuLy8gPT4gVGhlc2UgYXJlIHNoaW55LXByZXNldC1zcGVjaWZpYywgaG9waW5nIEJvb3RzdHJhcCBhZGRzIHNvbWV0aGluZyBsaWtlIHRoaXNcbiRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYjogMjksIDMxLCAzMyAhZGVmYXVsdDtcbiRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYi1kYXJrOiAwLCAwLCAwICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTpcbiAgMHB4IDBweCAycHggMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAwLjE0KSxcbiAgMHB4IDJweCA0cHggMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAwLjE2KSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3c6XG4gIDBweCAxcHggMnB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMSksXG4gIDBweCAzcHggN3B4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMSksXG4gIDBweCAxMnB4IDMwcHggUkdCQSh2YXIoLS1ic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYiksIC4wOCkgIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LWxnOlxuICAwcHggNHB4IDEwcHggUkdCQSh2YXIoLS1ic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYiksIC4xKSxcbiAgMHB4IDEycHggMzBweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgMC4xNykgIWRlZmF1bHQ7XG5cbi8vIFBvcG92ZXJcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4vLyBDYXJkc1xuJGNhcmQtYm9yZGVyLXJhZGl1czogOHB4ICFkZWZhdWx0O1xuXG4vLyBic2xpYiBEYXNoYm9hcmQgU3R5bGVzXG4vLyBcIkRhc2hib2FyZFwiIHN0eWxlcyBnaXZlIHlvdTpcbi8vICogc29mdGVyIGJvcmRlcnNcbi8vICogd2hpdGUgY2FyZHNcbi8vICogYm94IHNoYWRvdyBvbiBjYXJkc1xuLy8gKiB3aGl0ZSBzaWRlYmFyc1xuLy8gKiBsaWdodCBncmF5IGJhY2tncm91bmQgaW4gdGhlIG1haW4gY29udGFpbmVyKHMpXG4vLyAqIHdoaXRlIG5hdmJhciBhbmQgdGl0bGUgcGFuZWxcblxuJGJzbGliLWRhc2hib2FyZC1kZXNpZ246IHRydWUgIWRlZmF1bHQ7XG4kYnNsaWItZW5hYmxlLXNoYWRvd3M6ICRic2xpYi1kYXNoYm9hcmQtZGVzaWduICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiBpZigkYnNsaWItZGFzaGJvYXJkLWRlc2lnbiwgcmdiYSg0MCwgNzAsIDk0LCAwLjEpLCBudWxsKSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyazogaWYoJGJzbGliLWRhc2hib2FyZC1kZXNpZ24sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgbnVsbCkgIWRlZmF1bHQ7XG5cbi8vIE1vZGFsc1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogMTAlICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6IG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1iZzogIzQ2NDY0NiAhZGVmYXVsdDtcblxuLy8gU2hpbnk6IEJhc2Ugc2hpbnkuc2NzcyB2YXJpYWJsZXNcbiRub3RpZmljYXRpb24tY2xvc2UtY29sb3I6IGN1cnJlbnRDb2xvciAhZGVmYXVsdDtcbiIsCgkJIi8vIEJTMyBoYWQgLm5hdmJhciB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogMjBweCAhZGVmYXVsdDtcblxuLy8gQlM1KyB2YXJpYWJsZSB1c2VkIGZvciBwcmVmaXhpbmcgQ1NTIHZhcnNcbiRwcmVmaXg6IGJzLSAhZGVmYXVsdDsiLAoJCSIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAvI3Zpc3VhbC1hdWRpby1jb250cmFzdC1jb250cmFzdFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuJGJsdWUtMjAwOiB0aW50LWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNTAwOiAkYmx1ZSAhZGVmYXVsdDtcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtODAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRpbmRpZ28tMTAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNDAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby03MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMzAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XG4kcHVycGxlLTYwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTkwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcblxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuJHBpbmstMjAwOiB0aW50LWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNTAwOiAkcGluayAhZGVmYXVsdDtcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstODAwOiBzaGFkZS1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG5cbiRyZWQtMTAwOiB0aW50LWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtNDAwOiB0aW50LWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC03MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcblxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAkeWVsbG93ICFkZWZhdWx0O1xuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG5cbiRncmVlbi0xMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi00MDA6IHRpbnQtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6IHRpbnQtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xuJHRlYWwtNjAwOiBzaGFkZS1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtOTAwOiBzaGFkZS1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcblxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuJGN5YW4tMjAwOiB0aW50LWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAkY3lhbiAhZGVmYXVsdDtcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tODAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiRibHVlczogKFxuICBcImJsdWUtMTAwXCI6ICRibHVlLTEwMCxcbiAgXCJibHVlLTIwMFwiOiAkYmx1ZS0yMDAsXG4gIFwiYmx1ZS0zMDBcIjogJGJsdWUtMzAwLFxuICBcImJsdWUtNDAwXCI6ICRibHVlLTQwMCxcbiAgXCJibHVlLTUwMFwiOiAkYmx1ZS01MDAsXG4gIFwiYmx1ZS02MDBcIjogJGJsdWUtNjAwLFxuICBcImJsdWUtNzAwXCI6ICRibHVlLTcwMCxcbiAgXCJibHVlLTgwMFwiOiAkYmx1ZS04MDAsXG4gIFwiYmx1ZS05MDBcIjogJGJsdWUtOTAwXG4pICFkZWZhdWx0O1xuXG4kaW5kaWdvczogKFxuICBcImluZGlnby0xMDBcIjogJGluZGlnby0xMDAsXG4gIFwiaW5kaWdvLTIwMFwiOiAkaW5kaWdvLTIwMCxcbiAgXCJpbmRpZ28tMzAwXCI6ICRpbmRpZ28tMzAwLFxuICBcImluZGlnby00MDBcIjogJGluZGlnby00MDAsXG4gIFwiaW5kaWdvLTUwMFwiOiAkaW5kaWdvLTUwMCxcbiAgXCJpbmRpZ28tNjAwXCI6ICRpbmRpZ28tNjAwLFxuICBcImluZGlnby03MDBcIjogJGluZGlnby03MDAsXG4gIFwiaW5kaWdvLTgwMFwiOiAkaW5kaWdvLTgwMCxcbiAgXCJpbmRpZ28tOTAwXCI6ICRpbmRpZ28tOTAwXG4pICFkZWZhdWx0O1xuXG4kcHVycGxlczogKFxuICBcInB1cnBsZS0xMDBcIjogJHB1cnBsZS0xMDAsXG4gIFwicHVycGxlLTIwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMzAwXCI6ICRwdXJwbGUtMzAwLFxuICBcInB1cnBsZS00MDBcIjogJHB1cnBsZS00MDAsXG4gIFwicHVycGxlLTUwMFwiOiAkcHVycGxlLTUwMCxcbiAgXCJwdXJwbGUtNjAwXCI6ICRwdXJwbGUtNjAwLFxuICBcInB1cnBsZS03MDBcIjogJHB1cnBsZS03MDAsXG4gIFwicHVycGxlLTgwMFwiOiAkcHVycGxlLTgwMCxcbiAgXCJwdXJwbGUtOTAwXCI6ICRwdXJwbGUtOTAwXG4pICFkZWZhdWx0O1xuXG4kcGlua3M6IChcbiAgXCJwaW5rLTEwMFwiOiAkcGluay0xMDAsXG4gIFwicGluay0yMDBcIjogJHBpbmstMjAwLFxuICBcInBpbmstMzAwXCI6ICRwaW5rLTMwMCxcbiAgXCJwaW5rLTQwMFwiOiAkcGluay00MDAsXG4gIFwicGluay01MDBcIjogJHBpbmstNTAwLFxuICBcInBpbmstNjAwXCI6ICRwaW5rLTYwMCxcbiAgXCJwaW5rLTcwMFwiOiAkcGluay03MDAsXG4gIFwicGluay04MDBcIjogJHBpbmstODAwLFxuICBcInBpbmstOTAwXCI6ICRwaW5rLTkwMFxuKSAhZGVmYXVsdDtcblxuJHJlZHM6IChcbiAgXCJyZWQtMTAwXCI6ICRyZWQtMTAwLFxuICBcInJlZC0yMDBcIjogJHJlZC0yMDAsXG4gIFwicmVkLTMwMFwiOiAkcmVkLTMwMCxcbiAgXCJyZWQtNDAwXCI6ICRyZWQtNDAwLFxuICBcInJlZC01MDBcIjogJHJlZC01MDAsXG4gIFwicmVkLTYwMFwiOiAkcmVkLTYwMCxcbiAgXCJyZWQtNzAwXCI6ICRyZWQtNzAwLFxuICBcInJlZC04MDBcIjogJHJlZC04MDAsXG4gIFwicmVkLTkwMFwiOiAkcmVkLTkwMFxuKSAhZGVmYXVsdDtcblxuJG9yYW5nZXM6IChcbiAgXCJvcmFuZ2UtMTAwXCI6ICRvcmFuZ2UtMTAwLFxuICBcIm9yYW5nZS0yMDBcIjogJG9yYW5nZS0yMDAsXG4gIFwib3JhbmdlLTMwMFwiOiAkb3JhbmdlLTMwMCxcbiAgXCJvcmFuZ2UtNDAwXCI6ICRvcmFuZ2UtNDAwLFxuICBcIm9yYW5nZS01MDBcIjogJG9yYW5nZS01MDAsXG4gIFwib3JhbmdlLTYwMFwiOiAkb3JhbmdlLTYwMCxcbiAgXCJvcmFuZ2UtNzAwXCI6ICRvcmFuZ2UtNzAwLFxuICBcIm9yYW5nZS04MDBcIjogJG9yYW5nZS04MDAsXG4gIFwib3JhbmdlLTkwMFwiOiAkb3JhbmdlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHllbGxvd3M6IChcbiAgXCJ5ZWxsb3ctMTAwXCI6ICR5ZWxsb3ctMTAwLFxuICBcInllbGxvdy0yMDBcIjogJHllbGxvdy0yMDAsXG4gIFwieWVsbG93LTMwMFwiOiAkeWVsbG93LTMwMCxcbiAgXCJ5ZWxsb3ctNDAwXCI6ICR5ZWxsb3ctNDAwLFxuICBcInllbGxvdy01MDBcIjogJHllbGxvdy01MDAsXG4gIFwieWVsbG93LTYwMFwiOiAkeWVsbG93LTYwMCxcbiAgXCJ5ZWxsb3ctNzAwXCI6ICR5ZWxsb3ctNzAwLFxuICBcInllbGxvdy04MDBcIjogJHllbGxvdy04MDAsXG4gIFwieWVsbG93LTkwMFwiOiAkeWVsbG93LTkwMFxuKSAhZGVmYXVsdDtcblxuJGdyZWVuczogKFxuICBcImdyZWVuLTEwMFwiOiAkZ3JlZW4tMTAwLFxuICBcImdyZWVuLTIwMFwiOiAkZ3JlZW4tMjAwLFxuICBcImdyZWVuLTMwMFwiOiAkZ3JlZW4tMzAwLFxuICBcImdyZWVuLTQwMFwiOiAkZ3JlZW4tNDAwLFxuICBcImdyZWVuLTUwMFwiOiAkZ3JlZW4tNTAwLFxuICBcImdyZWVuLTYwMFwiOiAkZ3JlZW4tNjAwLFxuICBcImdyZWVuLTcwMFwiOiAkZ3JlZW4tNzAwLFxuICBcImdyZWVuLTgwMFwiOiAkZ3JlZW4tODAwLFxuICBcImdyZWVuLTkwMFwiOiAkZ3JlZW4tOTAwXG4pICFkZWZhdWx0O1xuXG4kdGVhbHM6IChcbiAgXCJ0ZWFsLTEwMFwiOiAkdGVhbC0xMDAsXG4gIFwidGVhbC0yMDBcIjogJHRlYWwtMjAwLFxuICBcInRlYWwtMzAwXCI6ICR0ZWFsLTMwMCxcbiAgXCJ0ZWFsLTQwMFwiOiAkdGVhbC00MDAsXG4gIFwidGVhbC01MDBcIjogJHRlYWwtNTAwLFxuICBcInRlYWwtNjAwXCI6ICR0ZWFsLTYwMCxcbiAgXCJ0ZWFsLTcwMFwiOiAkdGVhbC03MDAsXG4gIFwidGVhbC04MDBcIjogJHRlYWwtODAwLFxuICBcInRlYWwtOTAwXCI6ICR0ZWFsLTkwMFxuKSAhZGVmYXVsdDtcblxuJGN5YW5zOiAoXG4gIFwiY3lhbi0xMDBcIjogJGN5YW4tMTAwLFxuICBcImN5YW4tMjAwXCI6ICRjeWFuLTIwMCxcbiAgXCJjeWFuLTMwMFwiOiAkY3lhbi0zMDAsXG4gIFwiY3lhbi00MDBcIjogJGN5YW4tNDAwLFxuICBcImN5YW4tNTAwXCI6ICRjeWFuLTUwMCxcbiAgXCJjeWFuLTYwMFwiOiAkY3lhbi02MDAsXG4gIFwiY3lhbi03MDBcIjogJGN5YW4tNzAwLFxuICBcImN5YW4tODAwXCI6ICRjeWFuLTgwMCxcbiAgXCJjeWFuLTkwMFwiOiAkY3lhbi05MDBcbikgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBTZW1hbnRpY2FsbHksICRzZWNvbmRhcnkgaXMgY2xvc2VzdCB0byBCUzMncyAnZGVmYXVsdCcgdGhlbWUgY29sb3I7XG4vLyBzbyB1c2UgdGhhdCBpZiBzcGVjaWZpZWQuIE90aGVyd2lzZSwgdXNlIGEgbGlnaHQgaW5zdGVhZCBvZiBkYXJrIGdyYXlcbi8vIGRlZmF1bHQgY29sb3IgZm9yICRkZWZhdWx0IHNpbmNlIHRoYXQncyBjbG9zZXIgdG8gYm9vdHN0cmFwIDMncyBkZWZhdWx0XG4kZGVmYXVsdDogaWYodmFyaWFibGUtZXhpc3RzKFwic2Vjb25kYXJ5XCIpLCAkc2Vjb25kYXJ5LCAkZ3JheS0zMDApICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIC8vIGRlZmF1bHQgbmVlZHMgdG8gYmUgMXN0IHNvIHRoYXQgLmJ0bi1kZWZhdWx0IGNvbWVzIGJlZm9yZSAuYnRuLXByaW1hcnlcbiAgLy8gJiB0aGVyZWZvcmUgaGFzIGxvd2VyIHByaW9yaXR5LlxuICBcImRlZmF1bHRcIjogICAgJGRlZmF1bHQsXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXM6ICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzOiAgICBzaGFkZS1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXM6ICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzOiAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkcHJpbWFyeSwgODAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYmctc3VidGxlOiAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlOiAgICAgICAgICB0aW50LWNvbG9yKCRpbmZvLCA4MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGU6ICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlOiAgICAgICAgIG1peCgkZ3JheS0xMDAsICR3aGl0ZSkgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGU6ICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZTogdGludC1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZTogICAgICB0aW50LWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlOiAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZTogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGU6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jb250YWluZXItY2xhc3NlczogICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY3NzZ3JpZDogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuJGVuYWJsZS1kYXJrLW1vZGU6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRjb2xvci1tb2RlLXR5cGU6ICAgICAgICAgICAgIGRhdGEgIWRlZmF1bHQ7IC8vIGBkYXRhYCBvciBgbWVkaWEtcXVlcnlgXG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wIGZvciB0aGUgc2hvcnRlciBgJHByZWZpeGBcbiRwcmVmaXg6ICAgICAgICAgICAgICAgICAgICAgICR2YXJpYWJsZS1wcmVmaXggIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktdGV4dC1hbGlnbjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGJvZHktc2Vjb25kYXJ5LWNvbG9yOiAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kYm9keS10ZXJ0aWFyeS1jb2xvcjogICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjUpICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktYmc6ICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGJvZHktZW1waGFzaXMtY29sb3I6ICAgICAgICRibGFjayAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogICAgICAgICAgICAgICAgICAgMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4vLyBJY29uIGxpbmtzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaWNvbi1saW5rLXZhcmlhYmxlc1xuJGljb24tbGluay1nYXA6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDogIC4yNWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXNpemU6ICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zaXRpb246ICAgLjJzIGVhc2UtaW4tb3V0IHRyYW5zZm9ybSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZTNkKC4yNWVtLCAwLCAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaWNvbi1saW5rLXZhcmlhYmxlc1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweCxcbiAgeHhsOiAxNDAwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci12YXJpYWJsZXNcbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGhzOiAoXG4gIDE6IDFweCxcbiAgMjogMnB4LFxuICAzOiAzcHgsXG4gIDQ6IDRweCxcbiAgNTogNXB4XG4pICFkZWZhdWx0O1xuJGJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgc29saWQgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAgICByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteHhsOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuLy8gZnVzdi1kaXNhYmxlXG4kYm9yZGVyLXJhZGl1cy0yeGw6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy14eGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICBjb2xvci1jb250cmFzdCgkY29tcG9uZW50LWFjdGl2ZS1iZykgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuJGZvY3VzLXJpbmctd2lkdGg6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctb3BhY2l0eTogICAgLjI1ICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctY29sb3I6ICAgICAgcmdiYSgkcHJpbWFyeSwgJGZvY3VzLXJpbmctb3BhY2l0eSkgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ibHVyOiAgICAgICAwICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYm94LXNoYWRvdzogMCAwICRmb2N1cy1yaW5nLWJsdXIgJGZvY3VzLXJpbmctd2lkdGggJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvY3VzLXJpbmctdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1tZWRpdW06ICAgICAgICAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogICAgICAgIDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXN0eWxlOiAgbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiA1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAgICAgJHNwYWNlciAvIDQgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAyKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgICAgICAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ6ICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgY29sb3ItY29udHJhc3QoJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZywgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IpICFkZWZhdWx0O1xuXG4kbmF2LXVuZGVybGluZS1nYXA6ICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJG5hdmJhci1iZzogICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW55IG5hdmJhclBhZ2UoKVxuJG5hdmJhci1saWdodC1iZzogJG5hdmJhci1iZyAhZGVmYXVsdDsgLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgbmF2YmFyUGFnZShpbnZlcnNlID0gRkFMU0UpXG4kbmF2YmFyLWRhcmstYmc6ICAkbmF2YmFyLWJnICFkZWZhdWx0OyAvLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBUUlVFKVxuXG4kbmF2YmFyLWxpZ2h0LWNvbnRyYXN0OiBpZihcbiAgdHlwZS1vZigkbmF2YmFyLWxpZ2h0LWJnKSA9PSBjb2xvcixcbiAgY29sb3ItY29udHJhc3QoJG5hdmJhci1saWdodC1iZyksXG4gIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpXG4pICFkZWZhdWx0OyAvLyBEZWVwZXN0IGNvbnRyYXN0aW5nIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBGQUxTRSkuXG4kbmF2YmFyLWRhcmstY29udHJhc3Q6IGlmKFxuICB0eXBlLW9mKCRuYXZiYXItZGFyay1iZykgPT0gY29sb3IsXG4gIGNvbG9yLWNvbnRyYXN0KCRuYXZiYXItZGFyay1iZyksXG4gIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpXG4pICFkZWZhdWx0OyAvLyBEZWVwZXN0IGNvbnRyYXN0aW5nIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBUUlVFKS5cblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRuYXZiYXItbGlnaHQtY29udHJhc3QsIDEpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKGlmKHR5cGUtb2YoJG5hdmJhci1saWdodC1jb250cmFzdCk9PWNvbG9yLCAkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAkYm9keS1jb2xvciksIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuMTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRuYXZiYXItZGFyay1jb250cmFzdCwgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgcmdiYSgkbmF2YmFyLWRhcmstY29udHJhc3QsIDEpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkbmF2YmFyLWRhcmstY29udHJhc3QsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaWNvbi1jb2xvcjogICAgICAgICAgICByZ2JhKGlmKHR5cGUtb2YoJG5hdmJhci1kYXJrLWNvbnRyYXN0KT09Y29sb3IsICRuYXZiYXItZGFyay1jb250cmFzdCwgJHdoaXRlKSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgY29sb3ItY29udHJhc3QoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLCAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yOiAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtdmFyaWFibGVzXG5cblxuLy8gTGlzdCBncm91cFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICBjb2xvci1jb250cmFzdCgkbGlzdC1ncm91cC1hY3RpdmUtYmcsICRjb21wb25lbnQtYWN0aXZlLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMCAxIDEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDEgMSAxLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAgMSAwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4vLyBBbW91bnQgaW50ZW50aW9uYWxseSBtYXRjaGVzIG1peHR1cmUgYW1vdW50IG9mIHNoaW55OjppbnB1dFBhbmVsKClcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9yc3R1ZGlvL3NoaW55L2Jsb2IvNGVlYjRhMS9pbnN0L3d3dy9zaGFyZWQvc2hpbnlfc2Nzcy9ib290c3RyYXAuc2NzcyNMMjVcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiwgMCwwLDApLCAwLjA0KSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIFJHQih2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiLCAwLDAsMCkpICFkZWZhdWx0O1xuJGNvZGUtY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgUkdCKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IsIDAsMCwwKSkgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29kZS1iZyAgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkY29kZS1jb2xvciAhZGVmYXVsdDtcbiIsCgkJIi8vIERhcmsgY29sb3IgbW9kZSB2YXJpYWJsZXNcbi8vXG4vLyBDdXN0b20gdmFyaWFibGVzIGZvciB0aGUgYFtkYXRhLWJzLXRoZW1lPVwiZGFya1wiXWAgdGhlbWUuIFVzZSB0aGlzIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIHlvdXIgb3duIGN1c3RvbSBjb2xvciBtb2RlcyBieSBjcmVhdGluZyBhIG5ldyB0aGVtZS1zcGVjaWZpYyBmaWxlIGxpa2UgYF92YXJpYWJsZXMtZGFyay5zY3NzYCBhbmQgYWRkaW5nIHRoZSB2YXJpYWJsZXMgeW91IG5lZWQuXG5cbi8vXG4vLyBHbG9iYWwgY29sb3JzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2Fzcy1kYXJrLW1vZGUtdmFyc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDQwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA0MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAgdGludC1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDQwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDQwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRibGFjaykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyazogICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDQwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA0MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNDAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4kYm9keS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9keS1iZy1kYXJrOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktY29sb3ItZGFyazogICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmctZGFyazogICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrOiAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnLWRhcms6ICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRncmF5LTkwMCwgNTAlKSAhZGVmYXVsdDtcbiRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcms6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItZGFyazogICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyazogICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvci1kYXJrOiAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvci1kYXJrLCAtJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kY29kZS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb2RlLWNvbG9yLCA0MCUpICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrOiAgJGJvZHktY29sb3ItZGFyayAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyazogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNvbG9yLWRhcms6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvci1kYXJrfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1jb2xvcnMtZGFya1xuJGZvcm0tdmFsaWQtY29sb3ItZGFyazogICAgICAgICAgICAgJGdyZWVuLTMwMCAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrOiAgICAgICRncmVlbi0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yLWRhcms6ICAgICAgICAgICAkcmVkLTMwMCAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcms6ICAgICRyZWQtMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzLWRhcmtcblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4kYWNjb3JkaW9uLWljb24tY29sb3ItZGFyazogICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcms6ICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3ItZGFya30nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcms6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcmt9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNhc3MtZGFyay1tb2RlLXZhcnNcbiIsCgkJIi8vIFJlLWFzc2lnbmVkIG1hcHNcbi8vXG4vLyBQbGFjZWQgaGVyZSBzbyB0aGF0IG90aGVycyBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgU2FzcyBtYXBzIGFuZCBzZWUgYXV0b21hdGljIHVwZGF0ZXMgdG8gdXRpbGl0aWVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLXJnYlxuJHRoZW1lLWNvbG9ycy1yZ2I6IG1hcC1sb29wKCR0aGVtZS1jb2xvcnMsIHRvLXJnYiwgXCIkdmFsdWVcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1yZ2JcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtbWFwXG4kdGhlbWUtY29sb3JzLXRleHQ6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LXRleHQtZW1waGFzaXMsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktdGV4dC1lbXBoYXNpcyxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMsXG4gIFwiaW5mb1wiOiAkaW5mby10ZXh0LWVtcGhhc2lzLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctdGV4dC1lbXBoYXNpcyxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLFxuICBcImxpZ2h0XCI6ICRsaWdodC10ZXh0LWVtcGhhc2lzLFxuICBcImRhcmtcIjogJGRhcmstdGV4dC1lbXBoYXNpcyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJnLXN1YnRsZTogKFxuICBcInByaW1hcnlcIjogJHByaW1hcnktYmctc3VidGxlLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJnLXN1YnRsZSxcbiAgXCJpbmZvXCI6ICRpbmZvLWJnLXN1YnRsZSxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1iZy1zdWJ0bGUsXG4gIFwibGlnaHRcIjogJGxpZ2h0LWJnLXN1YnRsZSxcbiAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGU6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJvcmRlci1zdWJ0bGUsXG4gIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctYm9yZGVyLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1ib3JkZXItc3VidGxlLFxuICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLFxuICBcImRhcmtcIjogJGRhcmstYm9yZGVyLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG5cbiR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrOiBudWxsICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogbnVsbCAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiBudWxsICFkZWZhdWx0O1xuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuICAkdGhlbWUtY29sb3JzLXRleHQtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICkgIWRlZmF1bHQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtZGFyay1tYXBcbiAgJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1iZy1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrLFxuICAgIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1iZy1zdWJ0bGUtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tYmctc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXItYmctc3VidGxlLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtYmctc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZS1kYXJrLFxuICApICFkZWZhdWx0O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG4gICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiAoXG4gICAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInN1Y2Nlc3NcIjogJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImRhbmdlclwiOiAkZGFuZ2VyLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgKSAhZGVmYXVsdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG59XG5cbi8vIFV0aWxpdGllcyBtYXBzXG4vL1xuLy8gRXh0ZW5kcyB0aGUgZGVmYXVsdCBgJHRoZW1lLWNvbG9yc2AgbWFwcyB0byBoZWxwIGNyZWF0ZSBvdXIgdXRpbGl0aWVzLlxuXG4vLyBDb21lIHY2LCB3ZSdsbCBkZS1kdXBlIHRoZXNlIHZhcmlhYmxlcy4gVW50aWwgdGhlbiwgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlIGtlZXAgdGhlbSB0byByZWFzc2lnbi5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtY29sb3JzXG4kdXRpbGl0aWVzLWNvbG9yczogJHRoZW1lLWNvbG9ycy1yZ2IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuJHV0aWxpdGllcy10ZXh0OiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpLFxuICAgIFwiYm9keVwiOiB0by1yZ2IoJGJvZHktY29sb3IpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLXRleHQtY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLXRleHQsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwidGV4dFwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy10ZXh0LWVtcGhhc2lzLWNvbG9yczogKFxuICBcInByaW1hcnktZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic2Vjb25kYXJ5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic3VjY2Vzcy1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy10ZXh0LWVtcGhhc2lzKSxcbiAgXCJpbmZvLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLXRleHQtZW1waGFzaXMpLFxuICBcIndhcm5pbmctZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctdGV4dC1lbXBoYXNpcyksXG4gIFwiZGFuZ2VyLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItdGV4dC1lbXBoYXNpcyksXG4gIFwibGlnaHQtZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LXRleHQtZW1waGFzaXMpLFxuICBcImRhcmstZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWRhcmstdGV4dC1lbXBoYXNpcylcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuJHV0aWxpdGllcy1iZzogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWJnKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1iZy1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYmcsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwiYmdcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtYmctc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSxcbiAgXCJzZWNvbmRhcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctc3VidGxlKSxcbiAgXCJzdWNjZXNzLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1iZy1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJnLXN1YnRsZSksXG4gIFwid2FybmluZy1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctYmctc3VidGxlKSxcbiAgXCJkYW5nZXItc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItYmctc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJnLXN1YnRsZSksXG4gIFwiZGFyay1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhcmstYmctc3VidGxlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcbiR1dGlsaXRpZXMtYm9yZGVyOiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLWJvcmRlci1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYm9yZGVyLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJvcmRlclwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy1ib3JkZXItc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYm9yZGVyLXN1YnRsZSksXG4gIFwic2Vjb25kYXJ5LXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUpLFxuICBcInN1Y2Nlc3Mtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLWJvcmRlci1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJvcmRlci1zdWJ0bGUpLFxuICBcIndhcm5pbmctc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLWJvcmRlci1zdWJ0bGUpLFxuICBcImRhbmdlci1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlci1ib3JkZXItc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJvcmRlci1zdWJ0bGUpLFxuICBcImRhcmstc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLWJvcmRlci1zdWJ0bGUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtYm9yZGVyLWNvbG9yc1xuXG4kdXRpbGl0aWVzLWxpbmtzLXVuZGVybGluZTogbWFwLWxvb3AoJHV0aWxpdGllcy1jb2xvcnMsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwibGluay11bmRlcmxpbmVcIikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcbiIsCgkJIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3ItbW9kZVwiO1xuQGltcG9ydCBcIm1peGlucy9jb2xvci1zY2hlbWVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc3VhbGx5LWhpZGRlblwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL3V0aWxpdGllc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tkcm9wXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS12YXJpYW50c1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLAoJCSIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwKCQkiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1tb2RlLW1peGluXG5AbWl4aW4gY29sb3ItbW9kZSgkbW9kZTogbGlnaHQsICRyb290OiBmYWxzZSkge1xuICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgIEBpZiAkcm9vdCA9PSB0cnVlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIDpyb290IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogJG1vZGUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBbZGF0YS1icy10aGVtZT1cIiN7JG1vZGV9XCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1tb2RlLW1peGluXG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgbWl4aW4tY29sb3Itc2NoZW1lXG5AbWl4aW4gY29sb3Itc2NoZW1lKCRuYW1lKSB7XG4gIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICN7JG5hbWV9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbWl4aW4tY29sb3Itc2NoZW1lXG4iLAoJCSIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG4iLAoJCSIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwKCQkiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLAoJCSJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsCgkJIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwKCQkiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsCgkJIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwKCQkiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LW1peGluc1xuQG1peGluIGNhcmV0LWRvd24oJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LXN0YXJ0KCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KFxuICAkZGlyZWN0aW9uOiBkb3duLFxuICAkd2lkdGg6ICRjYXJldC13aWR0aCxcbiAgJHNwYWNpbmc6ICRjYXJldC1zcGFjaW5nLFxuICAkdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnblxuKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsCgkJIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLAoJCSIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwKCQkiLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcbiAgJHN0YXRlLFxuICAkY29sb3IsXG4gICRpY29uLFxuICAkdG9vbHRpcC1jb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICRib3JkZXItY29sb3I6ICRjb2xvclxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbjogI3tlc2NhcGUtc3ZnKCRpY29uKX07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICB3aWR0aDogYWRkKCRmb3JtLWNvbG9yLXdpZHRoLCAkaW5wdXQtaGVpZ2h0LWlubmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cblxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgICAgQGlmICRzdGF0ZSA9PSBcInZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH0gQGVsc2UgaWYgJHN0YXRlID09IFwiaW52YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbiIsCgkJIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsCgkJIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsCgkJIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJHNoYWRvdyB7XG4gICAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHZhbHVlLCBcImNvbW1hXCIpO1xuICAgICAgfVxuICAgICAgQGlmICR2YWx1ZSA9PSBub25lIGFuZCBsZW5ndGgoJHNoYWRvdykgPiAxIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIEdyYWRpZW50c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtYmctbWl4aW5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3I6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1iZy1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtbWl4aW5zXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogbnVsbCwgJGVuZC1wZXJjZW50OiBudWxsKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LW1peGluc1xuIiwKCQkiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgY2xlYXJmaXhcbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2xlYXJmaXhcbiIsCgkJIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLAoJCSIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgLXdlYmtpdC1mbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyIG9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuZCBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBCUzUrIGRhcmsgY29sb3IgbW9kZSBmb3JlZ3JvdW5kIGNvbG9yXG4kZW1waGFzaXMtY29sb3ItcmdiOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiLCAwLDAsMCkgIWRlZmF1bHQ7XG5cbi8vIENhcmRzIGFyZSB3aGl0ZSBieSBkZWZhdWx0LCBidXQgd2Ugd2FudCBhIHNtYXJ0ZXIgZGVmYXVsdCBmb3IgLndlbGxcbi8vIHRoYXQgaXQgYXBwZWFycyBncmF5IGJ5IGRlZmF1bHRcbiR3ZWxsLWJnOiBpZigkYm9vdHN0cmFwLXZlcnNpb24+PTUsIFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgLjAzKSwgcmdiYSgkYmxhY2ssIC4wMykpICFkZWZhdWx0O1xuJHdlbGwtY29sb3I6IGlmKCRib290c3RyYXAtdmVyc2lvbj49NSwgUkdCKCRlbXBoYXNpcy1jb2xvci1yZ2IpLCAkYm9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vIEJvb3RzdHJhcCA1LjMuMSArIHNlbGVjdGl6ZS5qcyB2MC4xMi40IChpLmUuLCBzaGlueSB2MS43LjUpIHNoaW1cbi8vXG4vLyBTdGFydGluZyB3aXRoIDUuMy54LCBCb290c3RyYXAgc3RhcnRlZCBoYXZpbmcgU2FzcyB2YXJpYWJsZXMgZGVmYXVsdCB0byBDU1Ncbi8vIHZhcmlhYmxlcyAoZS5nLiwgJGlucHV0LWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSksIHdoaWNoIGlzIHByb2JsZW1hdGljIGZvclxuLy8gY29tcHVhdGlvbiB0aGF0IGhhcHBlbnMgaW4gU2FzcyAoZS5nLiwgYG1peCgkY29sb3IxLCAkY29sb3IyKWApLiBUaGlzIGJ1bmRsZVxuLy8gZml4ZXMgdGhpcyBwcm9ibGVtIGZvciBzaGlueTo6c2VsZWN0aXplSW5wdXQoKSdzIFNhc3MgY29kZSAoZnV0dXJlIHZlcnNpb25zIG9mXG4vLyBzZWxlY3RpemVJbnB1dCgpIHNob3VsZCBob3BlZnVsbHkgYWRkcmVzcyB0aGlzIHByb2JsZW0sIG1ha2luZyB0aGlzIHRlbXBvcmFyeVxuLy8gc3RvcGdhcCBzb2x1dGlvbiBubyBsb25nZXIgcmVxdWlyZWQpLlxuJHNlbGVjdGl6ZS1jb2xvci10ZXh0OiBpZihpcy1jc3MtdmFyaWFibGUoJGlucHV0LWNvbG9yKSwgJGJvZHktY29sb3IsICRpbnB1dC1jb2xvcikgIWRlZmF1bHQ7XG4kc2VsZWN0aXplLWNvbG9yLWl0ZW06IHJnYmEoJHNlbGVjdGl6ZS1jb2xvci10ZXh0LCAwLjEpICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1pdGVtLWJvcmRlcjogaWYoaXMtY3NzLXZhcmlhYmxlKCRpbnB1dC1ib3JkZXItY29sb3IpLCAkYm9yZGVyLWNvbG9yLCAkaW5wdXQtYm9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd246IGlmKGlzLWNzcy12YXJpYWJsZSgkZHJvcGRvd24tYmcpLCAkYm9keS1iZywgJGRyb3Bkb3duLWJnKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24tYm9yZGVyLXRvcDogcmdiYSgkaW5wdXQtYm9yZGVyLWNvbG9yLCAwLjIpICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1kcm9wZG93bi1pdGVtLWNyZWF0ZS10ZXh0OiByZ2JhKCRzZWxlY3RpemUtY29sb3ItdGV4dCwgMC41KSAhZGVmYXVsdDtcbkBpZiB2YXJpYWJsZS1leGlzdHMoXCJpbnB1dC1idG4tZm9udC1zaXplXCIpIHtcbiAgJHNlbGVjdGl6ZS1mb250LXNpemU6ICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xufSBAZWxzZSBpZiB2YXJpYWJsZS1leGlzdHMoXCJmb250LXNpemUtYmFzZVwiKSB7XG4gICRzZWxlY3RpemUtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG59XG4kc2VsZWN0aXplLWZvbnQtZmFtaWx5OiBpZigkaW5wdXQtYnRuLWZvbnQtZmFtaWx5LCAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5LCBpbmhlcml0KSAhZGVmYXVsdDtcbiIsCgkJIi8vIEFjY29yZGlvbnNcbi8vIFRoZXNlIGRlZmluaXRpb25zIGNhbid0IGdvIGluIF9kZWZhdWx0cy5zY3NzIHdpdGggYSAhZGVmYXVsdCBmbGFnIChiZWNhdXNlICFkZWZhdWx0IGRvZXNuJ3QgcmVzcGVjdCBudWxsKVxuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiBudWxsO1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiBudWxsO1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogbnVsbDtcblxuLy8gU2hpbnk6IHNlbGVjdElucHV0KCkgYW5kIHNlbGVjdGl6ZUlucHV0KClcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24taXRlbS1hY3RpdmU6ICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1kcm9wZG93bi1pdGVtLWFjdGl2ZS10ZXh0OiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuLy8gQ29tcG9uZW50IFZhcmlhYmxlc1xuQGltcG9ydCBcImlvbnJhbmdlc2xpZGVyL192YXJpYWJsZXMuc2Nzc1wiO1xuIiwKCQkiLy8gaHR0cHM6Ly9naXRodWIuY29tL3JzdHVkaW8vc2hpbnkvYmxvYi9tYWluL2luc3Qvd3d3L3NoYXJlZC9pb25yYW5nZXNsaWRlci9zY3NzL3NoaW55LnNjc3NcblxuJGVtcGhhc2lzLWNvbG9yLXJnYjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiLCAwLCAwLCAwKSAhZGVmYXVsdDtcblxuJG1pbm1heF9iZ19jb2xvcjogUkdCQSgkZW1waGFzaXMtY29sb3ItcmdiLCAwLjEpICFkZWZhdWx0O1xuXG4kdG9wOiAzMnB4ICFkZWZhdWx0O1xuXG4kbGluZV9oZWlnaHQ6IDFweCAhZGVmYXVsdDtcbiRsaW5lX2JnOiBub25lICFkZWZhdWx0O1xuJGxpbmVfYmdfY29sb3I6IFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgMC42NSkgIWRlZmF1bHQ7XG4kbGluZV9ib3JkZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbiRoYW5kbGVfY29sb3I6ICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGhhbmRsZV9jb2xvcl9ob3ZlcjogdGludC1jb2xvcigkaGFuZGxlX2NvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGhhbmRsZV9ib3JkZXI6IG5vbmUgIWRlZmF1bHQ7XG4kaGFuZGxlX2JveF9zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG4kaGFuZGxlX3JhZGl1czogJHRvcCAtIDEwcHggIWRlZmF1bHQ7XG4kaGFuZGxlX2hlaWdodDogMTlweCAhZGVmYXVsdDtcbiRoYW5kbGVfd2lkdGg6ICRoYW5kbGVfaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYmFyX2NvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGdyaWRfbWFqb3JfY29sb3I6IFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgMC42NSkgIWRlZmF1bHQ7XG4kZ3JpZF9taW5vcl9jb2xvcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZ3JpZF90ZXh0X2NvbG9yOiBSR0JBKCRlbXBoYXNpcy1jb2xvci1yZ2IsIDAuODUpICFkZWZhdWx0O1xuIiwKCQkiQG1peGluIGJzQmFubmVyKCRmaWxlKSB7XG4gIC8qIVxuICAgKiBCb290c3RyYXAgI3skZmlsZX0gdjUuMy4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICAgKiBDb3B5cmlnaHQgMjAxMS0yMDIzIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICAgKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAgICovXG59XG4iLAoJCSIvLyBVdGlsaXRpZXNcblxuJHV0aWxpdGllczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHV0aWxpdGllczogbWFwLW1lcmdlKFxuICAoXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXZlcnRpY2FsLWFsaWduXG4gICAgXCJhbGlnblwiOiAoXG4gICAgICBwcm9wZXJ0eTogdmVydGljYWwtYWxpZ24sXG4gICAgICBjbGFzczogYWxpZ24sXG4gICAgICB2YWx1ZXM6IGJhc2VsaW5lIHRvcCBtaWRkbGUgYm90dG9tIHRleHQtYm90dG9tIHRleHQtdG9wXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXZlcnRpY2FsLWFsaWduXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWZsb2F0XG4gICAgXCJmbG9hdFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsb2F0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHN0YXJ0OiBsZWZ0LFxuICAgICAgICBlbmQ6IHJpZ2h0LFxuICAgICAgICBub25lOiBub25lLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1mbG9hdFxuICAgIC8vIE9iamVjdCBGaXQgdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLW9iamVjdC1maXRcbiAgICBcIm9iamVjdC1maXRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBvYmplY3QtZml0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGNvbnRhaW46IGNvbnRhaW4sXG4gICAgICAgIGNvdmVyOiBjb3ZlcixcbiAgICAgICAgZmlsbDogZmlsbCxcbiAgICAgICAgc2NhbGU6IHNjYWxlLWRvd24sXG4gICAgICAgIG5vbmU6IG5vbmUsXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLW9iamVjdC1maXRcbiAgICAvLyBPcGFjaXR5IHV0aWxpdGllc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1vcGFjaXR5XG4gICAgXCJvcGFjaXR5XCI6IChcbiAgICAgIHByb3BlcnR5OiBvcGFjaXR5LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1vcGFjaXR5XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLW92ZXJmbG93XG4gICAgXCJvdmVyZmxvd1wiOiAoXG4gICAgICBwcm9wZXJ0eTogb3ZlcmZsb3csXG4gICAgICB2YWx1ZXM6IGF1dG8gaGlkZGVuIHZpc2libGUgc2Nyb2xsLFxuICAgICksXG4gICAgXCJvdmVyZmxvdy14XCI6IChcbiAgICAgIHByb3BlcnR5OiBvdmVyZmxvdy14LFxuICAgICAgdmFsdWVzOiBhdXRvIGhpZGRlbiB2aXNpYmxlIHNjcm9sbCxcbiAgICApLFxuICAgIFwib3ZlcmZsb3cteVwiOiAoXG4gICAgICBwcm9wZXJ0eTogb3ZlcmZsb3cteSxcbiAgICAgIHZhbHVlczogYXV0byBoaWRkZW4gdmlzaWJsZSBzY3JvbGwsXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLW92ZXJmbG93XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWRpc3BsYXlcbiAgICBcImRpc3BsYXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByaW50OiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGRpc3BsYXksXG4gICAgICBjbGFzczogZCxcbiAgICAgIHZhbHVlczogaW5saW5lIGlubGluZS1ibG9jayBibG9jayBncmlkIGlubGluZS1ncmlkIHRhYmxlIHRhYmxlLXJvdyB0YWJsZS1jZWxsIGZsZXggaW5saW5lLWZsZXggbm9uZVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1kaXNwbGF5XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXNoYWRvd1xuICAgIFwic2hhZG93XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3gtc2hhZG93LFxuICAgICAgY2xhc3M6IHNoYWRvdyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiAkYm94LXNoYWRvdyxcbiAgICAgICAgc206ICRib3gtc2hhZG93LXNtLFxuICAgICAgICBsZzogJGJveC1zaGFkb3ctbGcsXG4gICAgICAgIG5vbmU6IG5vbmUsXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXNoYWRvd1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1mb2N1cy1yaW5nXG4gICAgXCJmb2N1cy1yaW5nXCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjc3MtdmFyaWFibGUtbmFtZTogZm9jdXMtcmluZy1jb2xvcixcbiAgICAgIGNsYXNzOiBmb2N1cy1yaW5nLFxuICAgICAgdmFsdWVzOiBtYXAtbG9vcCgkdGhlbWUtY29sb3JzLXJnYiwgcmdiYS1jc3MtdmFyLCBcIiRrZXlcIiwgXCJmb2N1cy1yaW5nXCIpXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWZvY3VzLXJpbmdcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtcG9zaXRpb25cbiAgICBcInBvc2l0aW9uXCI6IChcbiAgICAgIHByb3BlcnR5OiBwb3NpdGlvbixcbiAgICAgIHZhbHVlczogc3RhdGljIHJlbGF0aXZlIGFic29sdXRlIGZpeGVkIHN0aWNreVxuICAgICksXG4gICAgXCJ0b3BcIjogKFxuICAgICAgcHJvcGVydHk6IHRvcCxcbiAgICAgIHZhbHVlczogJHBvc2l0aW9uLXZhbHVlc1xuICAgICksXG4gICAgXCJib3R0b21cIjogKFxuICAgICAgcHJvcGVydHk6IGJvdHRvbSxcbiAgICAgIHZhbHVlczogJHBvc2l0aW9uLXZhbHVlc1xuICAgICksXG4gICAgXCJzdGFydFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbGVmdCxcbiAgICAgIGNsYXNzOiBzdGFydCxcbiAgICAgIHZhbHVlczogJHBvc2l0aW9uLXZhbHVlc1xuICAgICksXG4gICAgXCJlbmRcIjogKFxuICAgICAgcHJvcGVydHk6IHJpZ2h0LFxuICAgICAgY2xhc3M6IGVuZCxcbiAgICAgIHZhbHVlczogJHBvc2l0aW9uLXZhbHVlc1xuICAgICksXG4gICAgXCJ0cmFuc2xhdGUtbWlkZGxlXCI6IChcbiAgICAgIHByb3BlcnR5OiB0cmFuc2Zvcm0sXG4gICAgICBjbGFzczogdHJhbnNsYXRlLW1pZGRsZSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSksXG4gICAgICAgIHg6IHRyYW5zbGF0ZVgoLTUwJSksXG4gICAgICAgIHk6IHRyYW5zbGF0ZVkoLTUwJSksXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXBvc2l0aW9uXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWJvcmRlcnNcbiAgICBcImJvcmRlclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItc3R5bGUpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItdG9wXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItc3R5bGUpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItZW5kXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItcmlnaHQsXG4gICAgICBjbGFzczogYm9yZGVyLWVuZCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSxcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLWJvdHRvbVwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWJvdHRvbSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSxcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLXN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItbGVmdCxcbiAgICAgIGNsYXNzOiBib3JkZXItc3RhcnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1zdHlsZSkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciksXG4gICAgICAgIDA6IDAsXG4gICAgICApXG4gICAgKSxcbiAgICBcImJvcmRlci1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWNvbG9yLFxuICAgICAgY2xhc3M6IGJvcmRlcixcbiAgICAgIGxvY2FsLXZhcnM6IChcbiAgICAgICAgXCJib3JkZXItb3BhY2l0eVwiOiAxXG4gICAgICApLFxuICAgICAgdmFsdWVzOiAkdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcbiAgICApLFxuICAgIFwic3VidGxlLWJvcmRlci1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWNvbG9yLFxuICAgICAgY2xhc3M6IGJvcmRlcixcbiAgICAgIHZhbHVlczogJHV0aWxpdGllcy1ib3JkZXItc3VidGxlXG4gICAgKSxcbiAgICBcImJvcmRlci13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXdpZHRoLFxuICAgICAgY2xhc3M6IGJvcmRlcixcbiAgICAgIHZhbHVlczogJGJvcmRlci13aWR0aHNcbiAgICApLFxuICAgIFwiYm9yZGVyLW9wYWNpdHlcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNsYXNzOiBib3JkZXItb3BhY2l0eSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxMDogLjEsXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWJvcmRlcnNcbiAgICAvLyBTaXppbmcgdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXNpemluZ1xuICAgIFwid2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IHdpZHRoLFxuICAgICAgY2xhc3M6IHcsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMjU6IDI1JSxcbiAgICAgICAgNTA6IDUwJSxcbiAgICAgICAgNzU6IDc1JSxcbiAgICAgICAgMTAwOiAxMDAlLFxuICAgICAgICBhdXRvOiBhdXRvXG4gICAgICApXG4gICAgKSxcbiAgICBcIm1heC13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbWF4LXdpZHRoLFxuICAgICAgY2xhc3M6IG13LFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDAlKVxuICAgICksXG4gICAgXCJ2aWV3cG9ydC13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogd2lkdGgsXG4gICAgICBjbGFzczogdncsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZ3KVxuICAgICksXG4gICAgXCJtaW4tdmlld3BvcnQtd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IG1pbi13aWR0aCxcbiAgICAgIGNsYXNzOiBtaW4tdncsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZ3KVxuICAgICksXG4gICAgXCJoZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGhlaWdodCxcbiAgICAgIGNsYXNzOiBoLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDI1OiAyNSUsXG4gICAgICAgIDUwOiA1MCUsXG4gICAgICAgIDc1OiA3NSUsXG4gICAgICAgIDEwMDogMTAwJSxcbiAgICAgICAgYXV0bzogYXV0b1xuICAgICAgKVxuICAgICksXG4gICAgXCJtYXgtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBtYXgtaGVpZ2h0LFxuICAgICAgY2xhc3M6IG1oLFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDAlKVxuICAgICksXG4gICAgXCJ2aWV3cG9ydC1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGhlaWdodCxcbiAgICAgIGNsYXNzOiB2aCxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwdmgpXG4gICAgKSxcbiAgICBcIm1pbi12aWV3cG9ydC1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IG1pbi1oZWlnaHQsXG4gICAgICBjbGFzczogbWluLXZoLFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDB2aClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtc2l6aW5nXG4gICAgLy8gRmxleCB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtZmxleFxuICAgIFwiZmxleFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgsXG4gICAgICB2YWx1ZXM6IChmaWxsOiAxIDEgYXV0bylcbiAgICApLFxuICAgIFwiZmxleC1kaXJlY3Rpb25cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LWRpcmVjdGlvbixcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiByb3cgY29sdW1uIHJvdy1yZXZlcnNlIGNvbHVtbi1yZXZlcnNlXG4gICAgKSxcbiAgICBcImZsZXgtZ3Jvd1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtZ3JvdyxcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGdyb3ctMDogMCxcbiAgICAgICAgZ3Jvdy0xOiAxLFxuICAgICAgKVxuICAgICksXG4gICAgXCJmbGV4LXNocmlua1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtc2hyaW5rLFxuICAgICAgY2xhc3M6IGZsZXgsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc2hyaW5rLTA6IDAsXG4gICAgICAgIHNocmluay0xOiAxLFxuICAgICAgKVxuICAgICksXG4gICAgXCJmbGV4LXdyYXBcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LXdyYXAsXG4gICAgICBjbGFzczogZmxleCxcbiAgICAgIHZhbHVlczogd3JhcCBub3dyYXAgd3JhcC1yZXZlcnNlXG4gICAgKSxcbiAgICBcImp1c3RpZnktY29udGVudFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGp1c3RpZnktY29udGVudCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJldHdlZW46IHNwYWNlLWJldHdlZW4sXG4gICAgICAgIGFyb3VuZDogc3BhY2UtYXJvdW5kLFxuICAgICAgICBldmVubHk6IHNwYWNlLWV2ZW5seSxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24taXRlbXNcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBhbGlnbi1pdGVtcyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJhc2VsaW5lOiBiYXNlbGluZSxcbiAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24tY29udGVudFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGFsaWduLWNvbnRlbnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiZXR3ZWVuOiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICBhcm91bmQ6IHNwYWNlLWFyb3VuZCxcbiAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYWxpZ24tc2VsZlwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGFsaWduLXNlbGYsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgYXV0bzogYXV0byxcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiYXNlbGluZTogYmFzZWxpbmUsXG4gICAgICAgIHN0cmV0Y2g6IHN0cmV0Y2gsXG4gICAgICApXG4gICAgKSxcbiAgICBcIm9yZGVyXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogb3JkZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgZmlyc3Q6IC0xLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiAxLFxuICAgICAgICAyOiAyLFxuICAgICAgICAzOiAzLFxuICAgICAgICA0OiA0LFxuICAgICAgICA1OiA1LFxuICAgICAgICBsYXN0OiA2LFxuICAgICAgKSxcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZmxleFxuICAgIC8vIE1hcmdpbiB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtc3BhY2luZ1xuICAgIFwibWFyZ2luXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLFxuICAgICAgY2xhc3M6IG0sXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4teFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBteCxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi15XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG15LFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLXRvcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi10b3AsXG4gICAgICBjbGFzczogbXQsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tZW5kXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXJpZ2h0LFxuICAgICAgY2xhc3M6IG1lLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbWIsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tc3RhcnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBtcyxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gdXRpbGl0aWVzXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW5cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4sXG4gICAgICBjbGFzczogbSxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLXhcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tcmlnaHQgbWFyZ2luLWxlZnQsXG4gICAgICBjbGFzczogbXgsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi15XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG15LFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4tdG9wXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCxcbiAgICAgIGNsYXNzOiBtdCxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLWVuZFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCxcbiAgICAgIGNsYXNzOiBtZSxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbWIsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi1zdGFydFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1sZWZ0LFxuICAgICAgY2xhc3M6IG1zLFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgLy8gUGFkZGluZyB1dGlsaXRpZXNcbiAgICBcInBhZGRpbmdcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLFxuICAgICAgY2xhc3M6IHAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmcteFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctcmlnaHQgcGFkZGluZy1sZWZ0LFxuICAgICAgY2xhc3M6IHB4LFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXRvcCBwYWRkaW5nLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBweSxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy10b3BcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXRvcCxcbiAgICAgIGNsYXNzOiBwdCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy1lbmRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXJpZ2h0LFxuICAgICAgY2xhc3M6IHBlLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLWJvdHRvbVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctYm90dG9tLFxuICAgICAgY2xhc3M6IHBiLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXN0YXJ0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy1sZWZ0LFxuICAgICAgY2xhc3M6IHBzLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgLy8gR2FwIHV0aWxpdHlcbiAgICBcImdhcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGdhcCxcbiAgICAgIGNsYXNzOiBnYXAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInJvdy1nYXBcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiByb3ctZ2FwLFxuICAgICAgY2xhc3M6IHJvdy1nYXAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcImNvbHVtbi1nYXBcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBjb2x1bW4tZ2FwLFxuICAgICAgY2xhc3M6IGNvbHVtbi1nYXAsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXNwYWNpbmdcbiAgICAvLyBUZXh0XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXRleHRcbiAgICBcImZvbnQtZmFtaWx5XCI6IChcbiAgICAgIHByb3BlcnR5OiBmb250LWZhbWlseSxcbiAgICAgIGNsYXNzOiBmb250LFxuICAgICAgdmFsdWVzOiAobW9ub3NwYWNlOiB2YXIoLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2UpKVxuICAgICksXG4gICAgXCJmb250LXNpemVcIjogKFxuICAgICAgcmZzOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZvbnQtc2l6ZSxcbiAgICAgIGNsYXNzOiBmcyxcbiAgICAgIHZhbHVlczogJGZvbnQtc2l6ZXNcbiAgICApLFxuICAgIFwiZm9udC1zdHlsZVwiOiAoXG4gICAgICBwcm9wZXJ0eTogZm9udC1zdHlsZSxcbiAgICAgIGNsYXNzOiBmc3QsXG4gICAgICB2YWx1ZXM6IGl0YWxpYyBub3JtYWxcbiAgICApLFxuICAgIFwiZm9udC13ZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGZvbnQtd2VpZ2h0LFxuICAgICAgY2xhc3M6IGZ3LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGxpZ2h0ZXI6ICRmb250LXdlaWdodC1saWdodGVyLFxuICAgICAgICBsaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0LFxuICAgICAgICBub3JtYWw6ICRmb250LXdlaWdodC1ub3JtYWwsXG4gICAgICAgIG1lZGl1bTogJGZvbnQtd2VpZ2h0LW1lZGl1bSxcbiAgICAgICAgc2VtaWJvbGQ6ICRmb250LXdlaWdodC1zZW1pYm9sZCxcbiAgICAgICAgYm9sZDogJGZvbnQtd2VpZ2h0LWJvbGQsXG4gICAgICAgIGJvbGRlcjogJGZvbnQtd2VpZ2h0LWJvbGRlclxuICAgICAgKVxuICAgICksXG4gICAgXCJsaW5lLWhlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbGluZS1oZWlnaHQsXG4gICAgICBjbGFzczogbGgsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMTogMSxcbiAgICAgICAgc206ICRsaW5lLWhlaWdodC1zbSxcbiAgICAgICAgYmFzZTogJGxpbmUtaGVpZ2h0LWJhc2UsXG4gICAgICAgIGxnOiAkbGluZS1oZWlnaHQtbGcsXG4gICAgICApXG4gICAgKSxcbiAgICBcInRleHQtYWxpZ25cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiB0ZXh0LWFsaWduLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGxlZnQsXG4gICAgICAgIGVuZDogcmlnaHQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgKVxuICAgICksXG4gICAgXCJ0ZXh0LWRlY29yYXRpb25cIjogKFxuICAgICAgcHJvcGVydHk6IHRleHQtZGVjb3JhdGlvbixcbiAgICAgIHZhbHVlczogbm9uZSB1bmRlcmxpbmUgbGluZS10aHJvdWdoXG4gICAgKSxcbiAgICBcInRleHQtdHJhbnNmb3JtXCI6IChcbiAgICAgIHByb3BlcnR5OiB0ZXh0LXRyYW5zZm9ybSxcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiBsb3dlcmNhc2UgdXBwZXJjYXNlIGNhcGl0YWxpemVcbiAgICApLFxuICAgIFwid2hpdGUtc3BhY2VcIjogKFxuICAgICAgcHJvcGVydHk6IHdoaXRlLXNwYWNlLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgd3JhcDogbm9ybWFsLFxuICAgICAgICBub3dyYXA6IG5vd3JhcCxcbiAgICAgIClcbiAgICApLFxuICAgIFwid29yZC13cmFwXCI6IChcbiAgICAgIHByb3BlcnR5OiB3b3JkLXdyYXAgd29yZC1icmVhayxcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiAoYnJlYWs6IGJyZWFrLXdvcmQpLFxuICAgICAgcnRsOiBmYWxzZVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy10ZXh0XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWNvbG9yXG4gICAgXCJjb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogY29sb3IsXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIGxvY2FsLXZhcnM6IChcbiAgICAgICAgXCJ0ZXh0LW9wYWNpdHlcIjogMVxuICAgICAgKSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKFxuICAgICAgICAkdXRpbGl0aWVzLXRleHQtY29sb3JzLFxuICAgICAgICAoXG4gICAgICAgICAgXCJtdXRlZFwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSwgLy8gZGVwcmVjYXRlZFxuICAgICAgICAgIFwiYmxhY2stNTBcIjogcmdiYSgkYmxhY2ssIC41KSwgLy8gZGVwcmVjYXRlZFxuICAgICAgICAgIFwid2hpdGUtNTBcIjogcmdiYSgkd2hpdGUsIC41KSwgLy8gZGVwcmVjYXRlZFxuICAgICAgICAgIFwiYm9keS1zZWNvbmRhcnlcIjogdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvciksXG4gICAgICAgICAgXCJib2R5LXRlcnRpYXJ5XCI6IHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvciksXG4gICAgICAgICAgXCJib2R5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvciksXG4gICAgICAgICAgXCJyZXNldFwiOiBpbmhlcml0LFxuICAgICAgICApXG4gICAgICApXG4gICAgKSxcbiAgICBcInRleHQtb3BhY2l0eVwiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY2xhc3M6IHRleHQtb3BhY2l0eSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMVxuICAgICAgKVxuICAgICksXG4gICAgXCJ0ZXh0LWNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBjb2xvcixcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiAkdXRpbGl0aWVzLXRleHQtZW1waGFzaXMtY29sb3JzXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWNvbG9yXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWxpbmtzXG4gICAgXCJsaW5rLW9wYWNpdHlcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNsYXNzOiBsaW5rLW9wYWNpdHksXG4gICAgICBzdGF0ZTogaG92ZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMTA6IC4xLFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMVxuICAgICAgKVxuICAgICksXG4gICAgXCJsaW5rLW9mZnNldFwiOiAoXG4gICAgICBwcm9wZXJ0eTogdGV4dC11bmRlcmxpbmUtb2Zmc2V0LFxuICAgICAgY2xhc3M6IGxpbmstb2Zmc2V0LFxuICAgICAgc3RhdGU6IGhvdmVyLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDE6IC4xMjVlbSxcbiAgICAgICAgMjogLjI1ZW0sXG4gICAgICAgIDM6IC4zNzVlbSxcbiAgICAgIClcbiAgICApLFxuICAgIFwibGluay11bmRlcmxpbmVcIjogKFxuICAgICAgcHJvcGVydHk6IHRleHQtZGVjb3JhdGlvbi1jb2xvcixcbiAgICAgIGNsYXNzOiBsaW5rLXVuZGVybGluZSxcbiAgICAgIGxvY2FsLXZhcnM6IChcbiAgICAgICAgXCJsaW5rLXVuZGVybGluZS1vcGFjaXR5XCI6IDFcbiAgICAgICksXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZShcbiAgICAgICAgJHV0aWxpdGllcy1saW5rcy11bmRlcmxpbmUsXG4gICAgICAgIChcbiAgICAgICAgICBudWxsOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSksXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLFxuICAgIFwibGluay11bmRlcmxpbmUtb3BhY2l0eVwiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY2xhc3M6IGxpbmstdW5kZXJsaW5lLW9wYWNpdHksXG4gICAgICBzdGF0ZTogaG92ZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTA6IC4xLFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMVxuICAgICAgKSxcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtbGlua3NcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtYmctY29sb3JcbiAgICBcImJhY2tncm91bmQtY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsXG4gICAgICBjbGFzczogYmcsXG4gICAgICBsb2NhbC12YXJzOiAoXG4gICAgICAgIFwiYmctb3BhY2l0eVwiOiAxXG4gICAgICApLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoXG4gICAgICAgICR1dGlsaXRpZXMtYmctY29sb3JzLFxuICAgICAgICAoXG4gICAgICAgICAgXCJ0cmFuc3BhcmVudFwiOiB0cmFuc3BhcmVudCxcbiAgICAgICAgICBcImJvZHktc2Vjb25kYXJ5XCI6IHJnYmEodmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSkpLFxuICAgICAgICAgIFwiYm9keS10ZXJ0aWFyeVwiOiByZ2JhKHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSkpLFxuICAgICAgICApXG4gICAgICApXG4gICAgKSxcbiAgICBcImJnLW9wYWNpdHlcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNsYXNzOiBiZy1vcGFjaXR5LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDEwOiAuMSxcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDFcbiAgICAgIClcbiAgICApLFxuICAgIFwic3VidGxlLWJhY2tncm91bmQtY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsXG4gICAgICBjbGFzczogYmcsXG4gICAgICB2YWx1ZXM6ICR1dGlsaXRpZXMtYmctc3VidGxlXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWJnLWNvbG9yXG4gICAgXCJncmFkaWVudFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYmFja2dyb3VuZC1pbWFnZSxcbiAgICAgIGNsYXNzOiBiZyxcbiAgICAgIHZhbHVlczogKGdyYWRpZW50OiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWludGVyYWN0aW9uXG4gICAgXCJ1c2VyLXNlbGVjdFwiOiAoXG4gICAgICBwcm9wZXJ0eTogdXNlci1zZWxlY3QsXG4gICAgICB2YWx1ZXM6IGFsbCBhdXRvIG5vbmVcbiAgICApLFxuICAgIFwicG9pbnRlci1ldmVudHNcIjogKFxuICAgICAgcHJvcGVydHk6IHBvaW50ZXItZXZlbnRzLFxuICAgICAgY2xhc3M6IHBlLFxuICAgICAgdmFsdWVzOiBub25lIGF1dG8sXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWludGVyYWN0aW9uXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWJvcmRlci1yYWRpdXNcbiAgICBcInJvdW5kZWRcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSxcbiAgICAgICAgMjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAzOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZyksXG4gICAgICAgIDQ6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsKSxcbiAgICAgICAgNTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKSxcbiAgICAgICAgY2lyY2xlOiA1MCUsXG4gICAgICAgIHBpbGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGwpXG4gICAgICApXG4gICAgKSxcbiAgICBcInJvdW5kZWQtdG9wXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLWxlZnQtcmFkaXVzIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQtdG9wLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pLFxuICAgICAgICAyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDM6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSxcbiAgICAgICAgNDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGwpLFxuICAgICAgICA1OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpLFxuICAgICAgICBjaXJjbGU6IDUwJSxcbiAgICAgICAgcGlsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbClcbiAgICAgIClcbiAgICApLFxuICAgIFwicm91bmRlZC1lbmRcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci10b3AtcmlnaHQtcmFkaXVzIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQtZW5kLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pLFxuICAgICAgICAyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDM6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSxcbiAgICAgICAgNDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGwpLFxuICAgICAgICA1OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpLFxuICAgICAgICBjaXJjbGU6IDUwJSxcbiAgICAgICAgcGlsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbClcbiAgICAgIClcbiAgICApLFxuICAgIFwicm91bmRlZC1ib3R0b21cIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZC1ib3R0b20sXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSksXG4gICAgICAgIDI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMzogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpLFxuICAgICAgICA0OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bCksXG4gICAgICAgIDU6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCksXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsKVxuICAgICAgKVxuICAgICksXG4gICAgXCJyb3VuZGVkLXN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzIGJvcmRlci10b3AtbGVmdC1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZC1zdGFydCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSxcbiAgICAgICAgMjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAzOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZyksXG4gICAgICAgIDQ6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsKSxcbiAgICAgICAgNTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKSxcbiAgICAgICAgY2lyY2xlOiA1MCUsXG4gICAgICAgIHBpbGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGwpXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWJvcmRlci1yYWRpdXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtdmlzaWJpbGl0eVxuICAgIFwidmlzaWJpbGl0eVwiOiAoXG4gICAgICBwcm9wZXJ0eTogdmlzaWJpbGl0eSxcbiAgICAgIGNsYXNzOiBudWxsLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHZpc2libGU6IHZpc2libGUsXG4gICAgICAgIGludmlzaWJsZTogaGlkZGVuLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy12aXNpYmlsaXR5XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXppbmRleFxuICAgIFwiei1pbmRleFwiOiAoXG4gICAgICBwcm9wZXJ0eTogei1pbmRleCxcbiAgICAgIGNsYXNzOiB6LFxuICAgICAgdmFsdWVzOiAkemluZGV4LWxldmVscyxcbiAgICApXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy16aW5kZXhcbiAgKSxcbiAgJHV0aWxpdGllc1xuKTtcbiIsCgkJIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplKSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuXG5ociB7XG4gIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XG4gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuXG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyAxLiBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy8gICAgQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vICAgIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cblxuJWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yKTtcbn1cblxuaDEge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG59XG5cbmgyIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xufVxuXG5oMyB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbn1cblxuaDQge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG59XG5cbmg1IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xufVxuXG5oNiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbn1cblxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDIuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDMuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICAtbW96LXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICAtbXMtdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAxXG4gIC1vLXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICBjdXJzb3I6IGhlbHA7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyAzXG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAoJGJsb2NrcXVvdGUtZm9udC1zaXplIC8gMikgJGJsb2NrcXVvdGUtZm9udC1zaXplO1xuICBib3JkZXItbGVmdDogJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoIHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgcCwgdWwsIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG5cbi8vIFN1YiBhbmQgU3VwXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgLW1vei10ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIC1tcy10ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIC1vLXRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiKTtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgLW1vei10ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgLW1zLXRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICAtby10ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICAmLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBDb2RlXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jb2RlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG4vLyAxLiBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbi8vIDIuIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgLy8gMlxuICBvdmVyZmxvdzogYXV0bzsgLy8gM1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmUtYmc7XG4gIHBhZGRpbmc6ICRzcGFjZXIgLyAyO1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciwgJGJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmc6ICRzcGFjZXIvOCAkc3BhY2VyLzQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IG9ubHkgZnJvbSB0ZXh0IHR5cGUgaW5wdXRzIGJ1aWx0IHdpdGggZGF0YWxpc3RzIGluIENocm9tZS5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOm5vdChbdHlwZT1cImRhdGVcIl0pOm5vdChbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdKTpub3QoW3R5cGU9XCJtb250aFwiXSk6bm90KFt0eXBlPVwid2Vla1wiXSk6bm90KFt0eXBlPVwidGltZVwiXSk6Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyAgICBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vICAgIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vICAgIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4vLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyAxLiBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gU3VtbWFyeVxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBQcm9ncmVzc1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8vIEhpZGRlbiBhdHRyaWJ1dGVcbi8vXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlLlxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsCgkJIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsCgkJIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwKCQkiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLAoJCSIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3Igd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiJHNoaW55LWNoZWNrOiBcIi5zaGlueS1pbnB1dC1jb250YWluZXIgLmNoZWNrYm94XCI7XG4kc2hpbnktY2hlY2staW5saW5lOiAkc2hpbnktY2hlY2sgKyBcIi1pbmxpbmVcIjtcbiRzaGlueS1yYWRpbzogXCIuc2hpbnktaW5wdXQtY29udGFpbmVyIC5yYWRpb1wiO1xuJHNoaW55LXJhZGlvLWlubGluZTogJHNoaW55LXJhZGlvICsgXCItaW5saW5lXCI7XG4kZm9ybS1jaGVjay1pbnB1dC1zZWxlY3RvcjogXCIuZm9ybS1jaGVjay1pbnB1dCwgXCIgK1xuICAkc2hpbnktY2hlY2sgKyBcIiBpbnB1dCwgXCIgKyAkc2hpbnktY2hlY2staW5saW5lICsgXCIgaW5wdXQsIFwiICtcbiAgJHNoaW55LXJhZGlvICsgXCIgaW5wdXQsIFwiICsgJHNoaW55LXJhZGlvLWlubGluZSArIFwiIGlucHV0LCBcIjtcbiRmb3JtLWNoZWNrLWxhYmVsLXNlbGVjdG9yOiBcIi5mb3JtLWNoZWNrLWxhYmVsLCBcIiArXG4gICRzaGlueS1jaGVjayArIFwiIGxhYmVsLCBcIiArICRzaGlueS1jaGVjay1pbmxpbmUgKyBcIiBsYWJlbCwgXCIgK1xuICAkc2hpbnktcmFkaW8gKyBcIiBsYWJlbCwgXCIgKyAkc2hpbnktcmFkaW8taW5saW5lICsgXCIgbGFiZWwsIFwiO1xuXG5AaW1wb3J0IFwiZm9ybXMvbGFiZWxzXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS10ZXh0XCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1jb250cm9sXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1zZWxlY3RcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLWNoZWNrXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1yYW5nZVwiO1xuQGltcG9ydCBcImZvcm1zL2Zsb2F0aW5nLWxhYmVsc1wiO1xuQGltcG9ydCBcImZvcm1zL2lucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiZm9ybXMvdmFsaWRhdGlvblwiO1xuIiwKCQkiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwsIC5zaGlueS1pbnB1dC1jb250YWluZXIgLmNvbnRyb2wtbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLAoJCSIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsCgkJIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICAtbXMtYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICAtby1hcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE9uIEFuZHJvaWQgQ2hyb21lLCBmb3JtLWNvbnRyb2wncyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICAvL1xuICAgIC8vIE9uIGlPUyBTYWZhcmksIGZvcm0tY29udHJvbCdzIFwiYXBwZWFyYW5jZTogbm9uZVwiICsgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgaU9TIDE2LjIgLyBTYWZhcmkgMTYuMlxuICAgIG1pbi13aWR0aDogODVweDsgLy8gU2VlbXMgdG8gYmUgYSBnb29kIG1pbmltdW0gc2FmZSB3aWR0aFxuXG4gICAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG5cbiAgICAvLyBBbmRyb2lkIENocm9tZSB0eXBlPVwiZGF0ZVwiIGlzIHRhbGxlciB0aGFuIHRoZSBvdGhlciBpbnB1dHNcbiAgICAvLyBiZWNhdXNlIG9mIFwibWFyZ2luOiAxcHggMjRweCAxcHggNHB4XCIgaW5zaWRlIHRoZSBzaGFkb3cgRE9NXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZXhjZXNzaXZlIGRhdGUgaW5wdXQgaGVpZ2h0IGluIFdlYmtpdFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzM0NDMzXG4gICY6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20geyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207IH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcgeyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7IH1cbn1cbiIsCgkJIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpfTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZyksIHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uLCBub25lKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvci1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLAoJCSIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrLCAjeyRzaGlueS1jaGVja30sICN7JHNoaW55LXJhZGlvfSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQsICN7JHNoaW55LWNoZWNrfSBpbnB1dCwgI3skc2hpbnktcmFkaW99IGlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuI3skZm9ybS1jaGVjay1pbnB1dC1zZWxlY3Rvcn0ge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAtby1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX07XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsLCB+IHNwYW4ge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuI3skZm9ybS1jaGVjay1sYWJlbC1zZWxlY3Rvcn0ge1xuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XG4gIGN1cnNvcjogJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yO1xufVxuXG4vL1xuLy8gU3dpdGNoXG4vL1xuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSl9O1xuXG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSl9O1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcblxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDtcbn1cblxuLmJ0bi1jaGVjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgICsgLmJ0biB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZS1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAtby1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtby1hcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsLFxuICA+IC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgfiBsYWJlbCB7IC8vIFJlcXVpcmVkIGZvciBgLmZvcm0tY29udHJvbGBzIGJlY2F1c2Ugb2Ygc3BlY2lmaWNpdHlcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1zZWxlY3QsXG4gID4gLmZvcm0tZmxvYXRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIC13ZWJraXQtZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmZvcm0tZmxvYXRpbmc6Zm9jdXMtd2l0aGluIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFwiXCI7XG4gIEBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkZm9ybS12YWxpZGF0aW9uLXN0YXRlcykge1xuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi10b29sdGlwKVwiICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLWZlZWRiYWNrKVwiO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwKCQkiLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXItc2lkZSB2YWxpZGF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlcy1sb29wXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGRhdGEuLi4pO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzLWxvb3BcbiIsCgkJIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBidG4tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteDogI3skYnRuLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JGJ0bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHk6ICN7JGJ0bi1mb250LWZhbWlseX07XG4gIEBpbmNsdWRlIHJmcygkYnRuLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skYnRuLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0OiAjeyRidG4tbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGg6ICN7JGJ0bi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJ0bi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAjeyRidG4tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAjeyRidG4tZm9jdXMtd2lkdGh9IHJnYmEodmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiKSwgLjUpO1xuICAvLyBzY3NzLWRvY3MtZW5kIGJ0bi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy14KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW8tdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1vLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmJ0bi1jaGVjayArICY6aG92ZXIge1xuICAgIC8vIG92ZXJyaWRlIGZvciB0aGUgY2hlY2tib3gvcmFkaW8gYnV0dG9uc1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgOm5vdCguYnRuLWNoZWNrKSArICY6YWN0aXZlLFxuICAmOmZpcnN0LWNoaWxkOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuc2hvdyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZyk7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdykpO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaWYgJGNvbG9yID09IFwibGlnaHRcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkY29sb3IgPT0gXCJkYXJrXCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctdGludC1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LW5vcm1hbH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRidG4tbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogMCAwIDAgIzAwMDsgLy8gQ2FuJ3QgdXNlIGBub25lYCBhcyBrZXl3b3JkIG5lZ2F0ZXMgYWxsIHZhbHVlcyB3aGVuIHVzZWQgd2l0aCBtdWx0aXBsZSBzaGFkb3dzXG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoY29sb3ItY29udHJhc3QoJGxpbmstY29sb3IpLCAkbGluay1jb2xvciwgMTUlKSl9O1xuXG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIC1tb3otdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICAtbXMtdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICAtby10ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIC1tcy10ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgLW8tdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsCgkJIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwKCQkiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC1tb3otdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtbXMtdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtby10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tYm9yZGVyLXJhZGl1cywgMCkpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tcy10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtby10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLAoJCSIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XG4gIC8vIC0gdGhlIFwidGhpcmQgb3IgbW9yZVwiIGNoaWxkXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXG4gID4gLmJ0bjpudGgtY2hpbGQobiArIDMpLFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygjeyRidG4tYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG4gfiAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuIiwKCQkiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6ICN7JG5hdi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6ICN7JG5hdi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JG5hdi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC1tb3otdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtbXMtdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtby10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tcy10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtby10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXRhYnMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdGFicy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi10YWJzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXRhYnMtY3NzLXZhcnNcblxuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG59XG5cblxuLy9cbi8vIFVuZGVybGluZVxuLy9cblxuLm5hdi11bmRlcmxpbmUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcDogI3skbmF2LXVuZGVybGluZS1nYXB9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogI3skbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG5cbiAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXApO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIC13ZWJraXQtZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWZpbGwsXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmsge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBNYWtlIHN1cmUgYnV0dG9uIHdpbGwgZ3Jvd1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLAoJCSIvLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXg6ICN7aWYoJG5hdmJhci1wYWRkaW5nLXggPT0gbnVsbCwgMCwgJG5hdmJhci1wYWRkaW5nLXgpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteTogI3skbmF2YmFyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1saWdodC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15OiAjeyRuYXZiYXItYnJhbmQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICN7JG5hdmJhci1icmFuZC1tYXJnaW4tZW5kfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogI3skbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogI3skbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogI3skbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAjeyRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICN7JG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb259O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW1vei10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC1tcy10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC1vLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tcy10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtby10ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6IDA7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdyB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcblxuICBhLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzICB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIC13ZWJraXQtZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yKTsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbikpO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aCk7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1leHBhbmQtbG9vcFxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4ubmF2YmFyLWxpZ2h0IHtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYC5uYXZiYXItbGlnaHRgXCIsIFwidjUuMi4wXCIsIFwidjYuMC4wXCIsIHRydWUpO1xufVxuXG4ubmF2YmFyLWRhcmssXG4ubmF2YmFyW2RhdGEtYnMtdGhlbWU9XCJkYXJrXCJdIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15OiAjeyRjYXJkLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteDogI3skY2FyZC1zcGFjZXIteH07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXk6ICN7JGNhcmQtdGl0bGUtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yOiAjeyRjYXJkLXRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcjogI3skY2FyZC1zdWJ0aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoOiAjeyRjYXJkLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yOiAjeyRjYXJkLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXJhZGl1czogI3skY2FyZC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93OiAjeyRjYXJkLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteTogI3skY2FyZC1jYXAtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1iZzogI3skY2FyZC1jYXAtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcjogI3skY2FyZC1jYXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWhlaWdodDogI3skY2FyZC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNvbG9yOiAjeyRjYXJkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1iZzogI3skY2FyZC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogI3skY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW46ICN7JGNhcmQtZ3JvdXAtbWFyZ2lufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93KSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1vLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIC13ZWJraXQtZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbikpO1xuXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkpIDAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3JkaW9uIGljb25cbiAgJjo6YWZ0ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXgpO1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uLWRhcmspfTtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbi1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLAoJCSIuYnJlYWRjcnVtYiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogI3skYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tfTtcbiAgQGluY2x1ZGUgcmZzKCRicmVhZGNydW1iLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnOiAjeyRicmVhZGNydW1iLWJnfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAjeyRicmVhZGNydW1iLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAjeyRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSkpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xuICB9XG59XG4iLAoJCSIucGFnaW5hdGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcGFnaW5hdGlvbi1mb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcjogI3skcGFnaW5hdGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmc6ICN7JHBhZ2luYXRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aDogI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogI3skcGFnaW5hdGlvbi1mb2N1cy1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmc6ICN7JHBhZ2luYXRpb24tZm9jdXMtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICN7JHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW8tdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIC1vLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmcpO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgLmFjdGl2ZSA+ICYge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gIC5kaXNhYmxlZCA+ICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydCA9PSBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBBZGQgYm9yZGVyLXJhZGl1cyB0byBhbGwgcGFnZUxpbmtzIGluIGNhc2UgdGhleSBoYXZlIGxlZnQgbWFyZ2luXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsCgkJIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLAoJCSIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsCgkJIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3cpKTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4ubGlzdC1ncm91cC1udW1iZXJlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW06OmJlZm9yZSB7XG4gICAgLy8gSW5jcmVtZW50cyBvbmx5IHRoaXMgaW5zdGFuY2Ugb2YgdGhlIHNlY3Rpb24gY291bnRlclxuICAgIGNvbnRlbnQ6IGNvdW50ZXJzKHNlY3Rpb24sIFwiLlwiKSBcIi4gXCI7XG4gICAgY291bnRlci1pbmNyZW1lbnQ6IHNlY3Rpb247XG4gIH1cbn1cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmcpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnKTtcbiAgfVxufVxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICAtbW96LXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW1zLXRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgLW8tdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmcpO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gTGlzdCBncm91cCBjb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4iLAoJCSIvLyBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yOiAjeyRidG4tY2xvc2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtYmc6ICN7IGVzY2FwZS1zdmcoJGJ0bi1jbG9zZS1iZykgfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogI3skYnRuLWNsb3NlLWZvY3VzLXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICN7JGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXJ9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNsb3NlLWNzcy12YXJzXG5cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAkYnRuLWNsb3NlLXdpZHRoO1xuICBoZWlnaHQ6ICRidG4tY2xvc2UtaGVpZ2h0O1xuICBwYWRkaW5nOiAkYnRuLWNsb3NlLXBhZGRpbmcteSAkYnRuLWNsb3NlLXBhZGRpbmcteDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5KTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtaG92ZXItb3BhY2l0eSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtc2hhZG93KTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHkpO1xuICB9XG59XG5cbkBtaXhpbiBidG4tY2xvc2Utd2hpdGUoKSB7XG4gIGZpbHRlcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS13aGl0ZS1maWx0ZXIpO1xufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5idG4tY2xvc2Uge1xuICAgICAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG4gICAgfVxuICB9XG59XG4iLAoJCSIudG9hc3Qge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuICAtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXg6ICN7JHRvYXN0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteTogI3skdG9hc3QtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZzogI3skdG9hc3Qtc3BhY2luZ307XG4gIC0tI3skcHJlZml4fXRvYXN0LW1heC13aWR0aDogI3skdG9hc3QtbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCR0b2FzdC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvYXN0LWNvbG9yOiAjeyR0b2FzdC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJnOiAjeyR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoOiAjeyR0b2FzdC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItY29sb3I6ICN7JHRvYXN0LWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXM6ICN7JHRvYXN0LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93OiAjeyR0b2FzdC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmc6ICN7JHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogI3skdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtY3NzLXZhcnNcblxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvYXN0LW1heC13aWR0aCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b2FzdC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItY29sb3IpO1xuICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpKTtcblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWNvbnRhaW5lciB7XG4gIC0tI3skcHJlZml4fXRvYXN0LXppbmRleDogI3skemluZGV4LXRvYXN0fTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b2FzdC16aW5kZXgpO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIHdpZHRoOiAtd2Via2l0LW1heC1jb250ZW50O1xuICB3aWR0aDogLW1vei1tYXgtY29udGVudDtcbiAgd2lkdGg6IC1tcy1tYXgtY29udGVudDtcbiAgd2lkdGg6IC1vLW1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nKTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93KSk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXg6ICN7JHppbmRleC1tb2RhbC1iYWNrZHJvcH07XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLWJnOiAjeyRtb2RhbC1iYWNrZHJvcC1iZ307XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHk6ICN7JG1vZGFsLWJhY2tkcm9wLW9wYWNpdHl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG5cbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCh2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4KSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLWJnKSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHkpKTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLXdlYmtpdC1mbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwKCQkiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b29sdGlwLXppbmRleDogI3skemluZGV4LXRvb2x0aXB9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aDogI3skdG9vbHRpcC1tYXgtd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteDogI3skdG9vbHRpcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteTogI3skdG9vbHRpcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbjogI3skdG9vbHRpcC1tYXJnaW59O1xuICBAaW5jbHVkZSByZnMoJHRvb2x0aXAtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3I6ICN7JHRvb2x0aXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJnOiAjeyR0b29sdGlwLWJnfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzOiAjeyR0b29sdGlwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHk6ICN7JHRvb2x0aXAtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGg6ICN7JHRvb2x0aXAtYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodDogI3skdG9vbHRpcC1hcnJvdy1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW4pO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgJHRvb2x0aXAtbWFyZ2luYFwiLCBcInY1XCIsIFwidjUueFwiLCB0cnVlKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHkpOyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3R0b206IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwKCQkiLnBvcG92ZXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleDogI3skemluZGV4LXBvcG92ZXJ9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aDogI3skcG9wb3Zlci1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYmc6ICN7JHBvcG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aDogI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcjogI3skcG9wb3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93OiAjeyRwb3BvdmVyLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWhlYWRlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnOiAjeyRwb3BvdmVyLWhlYWRlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yOiAjeyRwb3BvdmVyLWJvZHktY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoOiAjeyRwb3BvdmVyLWFycm93LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aCk7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdykpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1lbmQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICB0b3A6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1zdGFydCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcik7XG59XG4iLAoJCSIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC1tb3otdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC1vLXRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtby1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qIHJ0bDpvcHRpb25zOiB7XG4gIFwiYXV0b1JlbmFtZVwiOiB0cnVlLFxuICBcInN0cmluZ01hcFwiOlsge1xuICAgIFwibmFtZVwiICAgIDogXCJwcmV2LW5leHRcIixcbiAgICBcInNlYXJjaFwiICA6IFwicHJldlwiLFxuICAgIFwicmVwbGFjZVwiIDogXCJuZXh0XCJcbiAgfSBdXG59ICovXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAtd2Via2l0LWZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG5AbWl4aW4gY2Fyb3VzZWwtZGFyaygpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLmNhcm91c2VsLWRhcmsge1xuICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIEBpZiAkY29sb3ItbW9kZS10eXBlID09IFwibWVkaWEtcXVlcnlcIiB7XG4gICAgICAuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuY2Fyb3VzZWwsXG4gICAgICAmLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLnNwaW5uZXItZ3Jvdyxcbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIC8vIFJlc2V0IGBiYWNrZ3JvdW5kLWNvbG9yYCBpbiBjYXNlIGAuYmctKmAgY2xhc3NlcyBhcmUgdXNlZCBpbiBvZmZjYW52YXNcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vZmZjYW52YXMtYmFja2Ryb3Age1xuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wLCAkb2ZmY2FudmFzLWJhY2tkcm9wLWJnLCAkb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHkpO1xufVxuXG4ub2ZmY2FudmFzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSk7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbiIsCgkJIi5wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHdhaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4O1xuXG4gICYuYnRuOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLnBsYWNlaG9sZGVyLXhzIHtcbiAgbWluLWhlaWdodDogLjZlbTtcbn1cblxuLnBsYWNlaG9sZGVyLXNtIHtcbiAgbWluLWhlaWdodDogLjhlbTtcbn1cblxuLnBsYWNlaG9sZGVyLWxnIHtcbiAgbWluLWhlaWdodDogMS4yZW07XG59XG5cbi8vIEFuaW1hdGlvblxuLnBsYWNlaG9sZGVyLWdsb3cge1xuICAucGxhY2Vob2xkZXIge1xuICAgIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItZ2xvdyAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cge1xuICA1MCUge1xuICAgIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjtcbiAgfVxufVxuXG4ucGxhY2Vob2xkZXItd2F2ZSB7XG4gIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICRibGFjayA1NSUsIHJnYmEoMCwgMCwgMCwgKDEgLSAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW4pKSA3NSUsICRibGFjayA5NSUpO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICRibGFjayA1NSUsIHJnYmEoMCwgMCwgMCwgKDEgLSAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW4pKSA3NSUsICRibGFjayA5NSUpO1xuICBtYXNrLXNpemU6IDIwMCUgMTAwJTtcbiAgLXdlYmtpdC1tYXNrLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci13YXZlIDJzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHtcbiAgMTAwJSB7XG4gICAgbWFzay1wb3NpdGlvbjogLTIwMCUgMCU7XG4gICAgLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiAtMjAwJSAwJTtcbiAgfVxufVxuIiwKCQkiQGltcG9ydCBcImhlbHBlcnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbG9yLWJnXCI7XG5AaW1wb3J0IFwiaGVscGVycy9jb2xvcmVkLWxpbmtzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9mb2N1cy1yaW5nXCI7XG5AaW1wb3J0IFwiaGVscGVycy9pY29uLWxpbmtcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhdGlvXCI7XG5AaW1wb3J0IFwiaGVscGVycy9wb3NpdGlvblwiO1xuQGltcG9ydCBcImhlbHBlcnMvc3RhY2tzXCI7XG5AaW1wb3J0IFwiaGVscGVycy92aXN1YWxseS1oaWRkZW5cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3N0cmV0Y2hlZC1saW5rXCI7XG5AaW1wb3J0IFwiaGVscGVycy90ZXh0LXRydW5jYXRpb25cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3ZyXCI7XG4iLAoJCSIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwKCQkiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC50ZXh0LWJnLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWJnLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB9XG59XG4iLAoJCSIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmxpbmstI3skY29sb3J9IHtcbiAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAgIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAkaG92ZXItY29sb3I6IGlmKGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpLCB0aW50LWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkpO1xuICAgICAgICBjb2xvcjogUkdCQSgje3RvLXJnYigkaG92ZXItY29sb3IpfSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh0by1yZ2IoJGhvdmVyLWNvbG9yKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPbmUtb2ZmIHNwZWNpYWwgbGluayBoZWxwZXIgYXMgYSBicmlkZ2UgdW50aWwgdjZcbi5saW5rLWJvZHktZW1waGFzaXMge1xuICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgfVxuICB9XG59XG4iLAoJCSIuZm9jdXMtcmluZzpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIC8vIEJ5IGRlZmF1bHQsIHRoZXJlIGlzIG5vIGAtLWJzLWZvY3VzLXJpbmcteGAsIGAtLWJzLWZvY3VzLXJpbmcteWAsIG9yIGAtLWJzLWZvY3VzLXJpbmctYmx1cmAsIGJ1dCB3ZSBwcm92aWRlIENTUyB2YXJpYWJsZXMgd2l0aCBmYWxsYmFja3MgdG8gaW5pdGlhbCBgMGAgdmFsdWVzXG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXgsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXksIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWJsdXIsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcik7XG59XG4iLAoJCSIuaWNvbi1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogJGljb24tbGluay1nYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gID4gLmJpIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLAoJCSIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgLXdlYmtpdC1hbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgLXdlYmtpdC1mbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAtd2Via2l0LWFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vLyBzY3NzLWRvY3MtZW5kIHN0YWNrc1xuIiwKCQkiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwKCQkiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwKCQkiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLAoJCSIudnIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6ICR2ci1ib3JkZXItd2lkdGg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cbiIsCgkJIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGQgZmcgY29udHJhc3RzIGZvciBlYWNoIGJnIHV0aWxpdHkgY2xhc3NcbkBlYWNoICRrZXksICR2YWwgaW4gJHV0aWxpdGllcy1jb2xvcnMge1xuICAuYmctI3ska2V5fSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KHJnYihudGgoJHZhbCwgMSksIG50aCgkdmFsLCAyKSwgbnRoKCR2YWwsIDMpKSk7XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIkBpbXBvcnQgXCJ3ZWxsc1wiO1xuQGltcG9ydCBcImhlbHBfdGV4dFwiO1xuQGltcG9ydCBcImRyb3Bkb3duX2NvbXBhdFwiO1xuQGltcG9ydCBcIm5hdmJhcl9jb21wYXRcIjtcbkBpbXBvcnQgXCJuYXZfY29tcGF0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NfY29tcGF0XCI7XG5AaW1wb3J0IFwiZHRfY29tcGF0XCI7XG5cbkBpbXBvcnQgXCJnbHlwaGljb25zXCI7XG5cbkBpbXBvcnQgXCJzaGlueV9pbnB1dFwiO1xuQGltcG9ydCBcInNoaW55X21pc2NcIjtcblxuQGltcG9ydCBcImhlYWRlcnNcIjtcbiIsCgkJIi8vIERlcml2ZXMgZnJvbSBCUzMgU0FTUywgYnV0IG1vZGlmaWVkIHRvIGluaGVyaXQgZnJvbSBCUzQgdmFyc1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL3JzdHVkaW8vYnNsaWIvYmxvYi8wNDkyNWUxL2luc3Qvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MjTDFcbi53ZWxsIHtcbiAgQGV4dGVuZCAuY2FyZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBjb2xvcjogJHdlbGwtY29sb3I7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAxLjUgKiAkc3BhY2VyO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogMC41ICogJHNwYWNlcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi8vIEZvciB3ZWxsUGFuZWwoKSBpbnNpZGUgYWJzb2x1dGVQYW5lbCgpXG5AaWYgJGJvb3RzdHJhcC12ZXJzaW9uID09IDQge1xuICAuZHJhZ2dhYmxlIC53ZWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBvcGFxdWUoJGJvZHktYmcsICR3ZWxsLWJnKTtcbiAgfVxufVxuIiwKCQkiLmhlbHAtdGV4dCwgLmhlbHAtYmxvY2sge1xuICBAZXh0ZW5kIC5mb3JtLXRleHQ7IEBleHRlbmQgLnRleHQtbXV0ZWQ7XG59XG4iLAoJCSIvLyAjIERST1BET1dOU1xuLy9cbi8vIEluIGJzMywgZHJvcGRvd24gbWVudXMgYXJlIC5kcm9wZG93bi1tZW51PmxpLmFjdGl2ZT5hXG4vLyBJbiBiczQsIGRyb3Bkb3duIG1lbnVzIGFyZSAuZHJvcGRvd24tbWVudT4uZHJvcGRvd24taXRlbS5hY3RpdmVcbi8vXG4vLyBBbHNvLCBiczMgZHJvcGRvd25zIHdpdGhpbiB0YWJzL3BpbGxzIGFyZSBpbnRlcmZlcmVkIHdpdGggaW4gYnM0IGJ5XG4vLyBzZWxlY3RvcnMgbGlrZSBgLmJzLXRhYnMgbGk+YWAsIG1ha2luZyBtZW51IGl0ZW1zIGxvb2sgbGlrZSB0YWJzLlxuXG4uZHJvcGRvd24tbWVudT5saT5hIHtcbiAgQGV4dGVuZCAuZHJvcGRvd24taXRlbTtcbn1cbi5kcm9wZG93bi1tZW51PmxpLmFjdGl2ZT5hIHtcbiAgLy8gVGhpcyBAZXh0ZW5kIHdvcmtzLCBidXQgaXQgbGl0dGVycyBgLmRyb3Bkb3duLW1lbnU+bGkuYWN0aXZlPmFgIGFsbCBvdmVyXG4gIC8vIHRoZSBib290c3RyYXAuY3NzIG91dHB1dCBiZWNhdXNlIGl0J3Mgc3VjaCBhIGNvbW1vbiBjbGFzcy4gSW5zdGVhZCwgd2VcbiAgLy8gY29weSB0aGVzZSBmZXcgcHJvcGVydGllcyBmcm9tIGZyb20gX2Ryb3Bkb3duLnNjc3MuXG4gIC8vIEBleHRlbmQgLmFjdGl2ZTtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xufVxuLmRyb3Bkb3duLW1lbnU+bGkuZGl2aWRlciB7XG4gIEBleHRlbmQgLmRyb3Bkb3duLWRpdmlkZXI7XG59XG4iLAoJCSIkbmF2YmFyLWV4cGFuZC1icmVha3BvaW50OiBpZigkYm9vdHN0cmFwLXZlcnNpb24+PTUsIGxnLCBzbSkgIWRlZmF1bHQ7IFxuXG4vLyBiczQgbmF2YmFycyByZXF1aXJlIC5uYXZiYXItZXhwYW5kWy1zbXwtbWR8LWxnfC14bF0sIGJ1dCBiczMgbmF2YmFyc1xuLy8gZG9uJ3QgaGF2ZSB0aGVtLiBUaGlzIHNlbGVjdG9yIG1hdGNoZXMgLm5hdmJhciB3aXRob3V0IC5uYXZiYXItZXhwYW5kXG4vLyBhbmQgZGVmYXVsdHMgaXQgdG8gLm5hdmJhci1leHBhbmQtc20uXG4ubmF2YmFyOm5vdCgubmF2YmFyLWV4cGFuZCk6bm90KC5uYXZiYXItZXhwYW5kLXNtKTpub3QoLm5hdmJhci1leHBhbmQtbWQpOm5vdCgubmF2YmFyLWV4cGFuZC1sZyk6bm90KC5uYXZiYXItZXhwYW5kLXhsKSB7XG4gIEBleHRlbmQgLm5hdmJhci1leHBhbmQtI3skbmF2YmFyLWV4cGFuZC1icmVha3BvaW50fTtcbn1cblxuLy8gVW5mb3J0dW5hdGVseSB0aGUgQGV4dGVuZCBhYm92ZSwgY29tYmluZWQgd2l0aCB0aGUgQGV4dGVuZCAubmF2LWxpbmsgYmVsb3dcbi8vIHJlc3VsdHMgaW4gLm5hdmJhci1leHBhbmQncyBwYWRkaW5nIHJ1bGVzIHRha2luZyBwcmVjZWRlbmNlIG92ZXJcbi8vIC5uYXYtdW5kZXJsaW5lJ3MgcGFkZGluZyBydWxlcyAoYW5kIHVuZm9ydHVuYXRlbHkgOndoZXJlKCkvY3NzLWxheWVycyBkb2Vzbid0XG4vLyBoZWxwIGhlcmUsIHNvIGp1c3QgcmUtYXBwbHkgdGhlIHBhZGRpbmcgcnVsZXMpXG4ubmF2YmFyIC5uYXYubmF2LXVuZGVybGluZSB7XG4gIC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6IDA7XG59XG5cbi5uYXZiYXI6bm90KC5maXhlZC1ib3R0b20pOm5vdCgubmF2YmFyLWZpeGVkLWJvdHRvbSkge1xuICAvLyBJbnN0ZWFkIG9mIGV4YWN0bHkgcmUtZG9pbmcgYnMzJ3MgLm5hdmJhciB7IG1hcmdpbi1ib3R0b20gfSwgc2V0XG4gIC8vIG1hcmdpbi10b3Agb24gZWFjaCBwYW5lIChzbyAnZmlsbCcgcGFuZXMgY2FuIGJlIGZsdXNoIHdpdGggbmF2YmFyKVxuICAmICsgZGl2ID4gLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgICAtLWJzbGliLW5hdmJhci1tYXJnaW46ICN7JG5hdmJhci1tYXJnaW4tYm90dG9tfTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1ic2xpYi1uYXZiYXItbWFyZ2luKTtcbiAgfVxufVxuXG4vLyBNYXAgQlMzIG5hdmJhciBwb3NpdGlvbmluZyB0byBnZW5lcmFsIHV0aWxpdGllc1xuLm5hdmJhci1maXhlZC10b3Age1xuICBAZXh0ZW5kIC5maXhlZC10b3A7XG59XG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIEBleHRlbmQgLmZpeGVkLWJvdHRvbTtcbn1cbi5uYXZiYXItc3RpY2t5LXRvcCB7XG4gIEBleHRlbmQgLnN0aWNreS10b3A7XG59XG5cbnVsLm5hdi5uYXZiYXItbmF2IHtcbiAgZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxO1xuICAmLm5hdmJhci1yaWdodCB7XG4gICAgZmxleDogdW5zZXQ7XG4gICAgLXdlYmtpdC1mbGV4OiB1bnNldDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG4vLyA6d2hlcmUoKSBsb3dlcnMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBldmVudHVhbGx5IEBleHRlbmQgc2VsZWN0b3IsIHdoaWNoIGlzXG4vLyBpbXBvcnRhbnQgdG8gbWFrZSBzdXJlIHRob3NlIHNlbGVjdG9ycyBkb24ndCBnZXQgYW4gYXJ0aWZpY2lhbCBzcGVjaWZpY2l0eVxuLy8gYm9vc3QgKGUuZy4sIHdlIGRvbid0IHdhbnQgYHVsLm5hdi5uYXZiYXItbmF2PmxpPmFgIHRvIGJlIG1vcmUgc3BlY2lmaWMgdGhhblxuLy8gYC5uYXYtdW5kZXJsaW5lIC5uYXYtbGlua2ApXG46d2hlcmUodWwubmF2Lm5hdmJhci1uYXYgPiBsaSkge1xuICAmOm5vdCguZHJvcGRvd24pIHtcbiAgICBAZXh0ZW5kIC5uYXYtaXRlbTtcbiAgfVxuXG4gID4gYSB7XG4gICAgQGV4dGVuZCAubmF2LWxpbms7XG4gIH1cbiAgXG4gICYuYWN0aXZlLCAmLnNob3cge1xuICAgID4gYSB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gICYuYnNsaWItbmF2LWl0ZW0ge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cblxuXG4ubmF2YmFyIHtcblxuICAvLyBEZWZhdWx0cyB0byBudWxsIChhbmQgaW4gdGhhdCBjYXNlLCB3ZSBkb24ndCB3YW50IHRvIGRlZmluZSB0aGUgQ1NTIHZhcilcbiAgQGlmICRuYXZiYXItbGlnaHQtYmcge1xuICAgIC0tYnNsaWItbmF2YmFyLWRlZmF1bHQtYmc6ICN7JG5hdmJhci1saWdodC1iZ307XG4gIH1cbiAgQGlmICRuYXZiYXItZGFyay1iZyB7XG4gICAgLS1ic2xpYi1uYXZiYXItaW52ZXJzZS1iZzogI3skbmF2YmFyLWRhcmstYmd9O1xuICB9XG5cbiAgLy8gQlMzIC5uYXZiYXItZGVmYXVsdCAtPiBCUzQgLm5hdmJhci1saWdodFxuICAmLm5hdmJhci1kZWZhdWx0IHtcbiAgICAvLyBTZXRzIGEgdmFyaWV0eSBvZiBmZyBjb2xvcnMgd2hpY2ggYXJlIGNvbmZpZ3VyYWJsZSB2aWEgJG5hdmJhci1saWdodC0qIG9wdGlvbnNcbiAgICBAZXh0ZW5kIC5uYXZiYXItbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnNsaWItbmF2YmFyLWRlZmF1bHQtYmcsIHZhcigtLSN7JHByZWZpeH1saWdodCkpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBCUzMgLm5hdmJhci1pbnZlcnNlIC0+IEJTNCAubmF2YmFyLWRhcmtcbiAgJi5uYXZiYXItaW52ZXJzZSB7XG4gICAgLy8gU2V0cyBhIHZhcmlldHkgb2YgZmcgY29sb3JzIHdoaWNoIGFyZSBjb25maWd1cmFibGUgdmlhICRuYXZiYXItZGFyay0qIG9wdGlvbnNcbiAgICBAZXh0ZW5kIC5uYXZiYXItZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ic2xpYi1uYXZiYXItaW52ZXJzZS1iZywgdmFyKC0tI3skcHJlZml4fWRhcmspKSAhaW1wb3J0YW50O1xuICAgIC8vIEZvciBCUzUrIGxlYW4gb24gZW1waGFzaXMtY29sb3JcbiAgICAtLWJzLWVtcGhhc2lzLWNvbG9yOiB3aGl0ZTtcbiAgICAtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYjogMjU1LCAyNTUsIDI1NTtcbiAgfVxufVxuXG4kZW5hYmxlLWRhcmstbW9kZTogZmFsc2UgIWRlZmF1bHQ7XG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAubmF2YmFyLm5hdmJhci1kZWZhdWx0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzbGliLW5hdmJhci1kZWZhdWx0LWJnLCB2YXIoLS0jeyRwcmVmaXh9ZGFyaykpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEltcGxlbWVudCBiczMgbmF2YmFyIHRvZ2dsZXI7IHVzZWQgaW4gUm1kIHdlYnNpdGVzLCBpLmUuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vcnN0dWRpby9ybWFya2Rvd24td2Vic2l0ZS9ibG9iLzQ1M2UxODAyYjMyYjViYWYxYzhhNjdmODA5NDdhZGNjNTNlNDliN2YvX25hdmJhci5odG1sXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIEBleHRlbmQgLm5hdmJhci10b2dnbGVyO1xufVxuLm5hdmJhci10b2dnbGUge1xuICA+IC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGV4dGVuZCAubmF2YmFyLXRvZ2dsZXItaWNvbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIC5uYXZiYXItdG9nZ2xlIGlzIHJpZ2h0IGFuZCBjZW50ZXIgYWxpZ25lZCB3aGVuIG5hdmJhciBpcyBjb2xsYXBzZWRcbkBpZiAkYm9vdHN0cmFwLXZlcnNpb24+PTUge1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmF2YmFyLWV4cGFuZC1icmVha3BvaW50KSB7XG4gICAgLm5hdmJhci1oZWFkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbn0gQGVsc2Uge1xuXG4gIC8vIEluIEJTNCwgbWVkaWEtYnJlYWtwb2ludC1kb3duKCkgZG9lcyB0aGUgX25leHRfIGJyZWFrcG9pbnQgKHhzLT5zbSlcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgLm5hdmJhci1oZWFkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufSIsCgkJIi8vIEZpeCB0YWIgc2VsZWN0b3IgYm9yZGVycyBpbiBiczMuXG4ubmF2LXRhYnM+bGksXG4ubmF2LXBpbGxzPmxpIHtcbiAgQGV4dGVuZCAubmF2LWl0ZW07XG59XG4ubmF2LXRhYnM+bGk+YSxcbi5uYXYtcGlsbHM+bGk+YSB7XG4gIEBleHRlbmQgLm5hdi1saW5rO1xufVxuXG4vLyBBY3RpdmUgdGFiL3BpbGwuXG4vL1xuLy8gYnMzIHVzZXMgLm5hdj5saS5hY3RpdmU+YSwgYnM0IHVzZXMgLm5hdj5saT5hLmFjdGl2ZSBvciAubmF2PmxpLnNob3c+YS5cbi8vXG4vLyBNeSBvcmlnaW5hbCBhcHByb2FjaCB0byB0aGlzIHdhcyBtYWtpbmcgLm5hdj5saS5hY3RpdmUgQGV4dGVuZCAuc2hvdywgYnV0XG4vLyBhZnRlciBhIGxvdCBvZiB0cmlhbCBhbmQgZXJyb3IgSSBjb3VsZCBub3QgZ2V0IGl0IHRvIGZ1bGx5IHdvcmsuXG4ubmF2LXRhYnM+bGkuYWN0aXZlPmEge1xuICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbn1cbi5uYXYtcGlsbHM+bGkuYWN0aXZlPmEge1xuICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbn1cblxuLy8gU3VwcG9ydCB2ZXJ0aWNhbCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgLy8gRG9uJ3QgZXh0ZW5kIHRoZSAuZmxleC1jb2x1bW4gdXRpbGl0eSwgaXQgdXNlcyAhaW1wb3J0YW50XG4gIC8vIEBleHRlbmQgLmZsZXgtY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cblxuLmluIHtcbiAgQGV4dGVuZCAuc2hvdztcbn1cbiIsCgkJIkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAucHJvZ3Jlc3MtYmFyLSN7JGNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHZhbHVlO1xuICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkdmFsdWUpO1xuICB9XG59XG4iLAoJCSIvLyBGb3IgRGF0YVRhYmxlcyB3aXRoIEJTIDUrXG5AaWYgJGJvb3RzdHJhcC12ZXJzaW9uID49IDUge1xuICAvLyBDdXJyZW50bHkgbm90IHBvc3NpYmxlIHRocm91Z2ggRFQ6IHJzdHVkaW8vRFQjMTA4MVxuICAuZGF0YXRhYmxlcyB0aGVhZCAuZm9ybS1ncm91cC5oYXMtZmVlZGJhY2sgKyBkaXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJvZHktYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1zdHlsZTogdmFyKC0tYnMtYm9yZGVyLXN0eWxlKTtcbiAgfVxufVxuIiwKCQkiLy8gVGhpcyBmaWxlIGlzIGF1dG8tZ2VuZXJhdGVkIGJ5IHRvb2xzL2dseXBoaWNvbnMuUlxuLy8gQ29uc2lkZXIgbWFraW5nIGVkaXRzIHRoZXJlIGJlZm9yZSBlZGl0aW5nIHRoaXMgZmlsZS5cbiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlO1xuJGljb24tZm9udC1uYW1lOiAnZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhcic7XG4kaWNvbi1mb250LXN2Zy1pZDogJ2dseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhcic7XG4kaWNvbi1mb250LXBhdGg6ICdmb250cy9ib290c3RyYXAvJztcbi8vXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcbi8vXG4vLyBTaW5jZSBpY29ucyBhcmUgZm9udHMsIHRoZXkgY2FuIGJlIHBsYWNlZCBhbnl3aGVyZSB0ZXh0IGlzIHBsYWNlZCBhbmQgYXJlXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcbi8vXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxuXG5AYXQtcm9vdCB7XG4gIC8vIEltcG9ydCB0aGUgZm9udHNcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3QnKSk7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3Q/I2llZml4JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyJykpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYnKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJykpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmJykpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfScpKSBmb3JtYXQoJ3N2ZycpO1xuICB9XG59XG5cbi8vIENhdGNoYWxsIGJhc2VjbGFzc1xuLmdseXBoaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBJbmRpdmlkdWFsIGljb25zXG4uZ2x5cGhpY29uLWFzdGVyaXNrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyYVwiOyB9IH1cbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDJiXCI7IH0gfVxuLmdseXBoaWNvbi1ldXJvLFxuLmdseXBoaWNvbi1ldXIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBhY1wiOyB9IH1cbi5nbHlwaGljb24tbWludXMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNjAxXCI7IH0gfVxuLmdseXBoaWNvbi1lbnZlbG9wZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwOVwiOyB9IH1cbi5nbHlwaGljb24tcGVuY2lsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MGZcIjsgfSB9XG4uZ2x5cGhpY29uLWdsYXNzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAxXCI7IH0gfVxuLmdseXBoaWNvbi1tdXNpYyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMlwiOyB9IH1cbi5nbHlwaGljb24tc2VhcmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA1XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNlwiOyB9IH1cbi5nbHlwaGljb24tc3Rhci1lbXB0eSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDdcIjsgfSB9XG4uZ2x5cGhpY29uLXVzZXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA4XCI7IH0gfVxuLmdseXBoaWNvbi1maWxtICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGFyZ2UgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRoICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDExXCI7IH0gfVxuLmdseXBoaWNvbi10aC1saXN0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMlwiOyB9IH1cbi5nbHlwaGljb24tb2sgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTNcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE0XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLWluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNVwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1vdXQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTZcIjsgfSB9XG4uZ2x5cGhpY29uLW9mZiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE3XCI7IH0gfVxuLmdseXBoaWNvbi1zaWduYWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOFwiOyB9IH1cbi5nbHlwaGljb24tY29nICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIwXCI7IH0gfVxuLmdseXBoaWNvbi1ob21lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMVwiOyB9IH1cbi5nbHlwaGljb24tZmlsZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjJcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIzXCI7IH0gfVxuLmdseXBoaWNvbi1yb2FkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNFwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQtYWx0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjVcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI2XCI7IH0gfVxuLmdseXBoaWNvbi11cGxvYWQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyN1wiOyB9IH1cbi5nbHlwaGljb24taW5ib3ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjhcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYXktY2lyY2xlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXBlYXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMFwiOyB9IH1cbi5nbHlwaGljb24tcmVmcmVzaCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWxpc3QtYWx0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2NrICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzM1wiOyB9IH1cbi5nbHlwaGljb24tZmxhZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzRcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRwaG9uZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM1XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtb2ZmICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNlwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzdcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM4XCI7IH0gfVxuLmdseXBoaWNvbi1xcmNvZGUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOVwiOyB9IH1cbi5nbHlwaGljb24tYmFyY29kZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDBcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQxXCI7IH0gfVxuLmdseXBoaWNvbi10YWdzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MlwiOyB9IH1cbi5nbHlwaGljb24tYm9vayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDNcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2ttYXJrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ0XCI7IH0gfVxuLmdseXBoaWNvbi1wcmludCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NVwiOyB9IH1cbi5nbHlwaGljb24tY2FtZXJhICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDZcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ3XCI7IH0gfVxuLmdseXBoaWNvbi1ib2xkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OFwiOyB9IH1cbi5nbHlwaGljb24taXRhbGljICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtaGVpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUwXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LXdpZHRoICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MVwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTJcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWNlbnRlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUzXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NFwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tanVzdGlmeSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTVcIjsgfSB9XG4uZ2x5cGhpY29uLWxpc3QgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU2XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtbGVmdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1N1wiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LXJpZ2h0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNThcIjsgfSB9XG4uZ2x5cGhpY29uLWZhY2V0aW1lLXZpZGVvICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU5XCI7IH0gfVxuLmdseXBoaWNvbi1waWN0dXJlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MFwiOyB9IH1cbi5nbHlwaGljb24tbWFwLW1hcmtlciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjJcIjsgfSB9XG4uZ2x5cGhpY29uLWFkanVzdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH0gfVxuLmdseXBoaWNvbi10aW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NFwiOyB9IH1cbi5nbHlwaGljb24tZWRpdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH0gfVxuLmdseXBoaWNvbi1jaGVjayAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2N1wiOyB9IH1cbi5nbHlwaGljb24tbW92ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjhcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY5XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MFwiOyB9IH1cbi5nbHlwaGljb24tYmFja3dhcmQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzFcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYXkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXVzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3M1wiOyB9IH1cbi5nbHlwaGljb24tc3RvcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZvcndhcmQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NlwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzdcIjsgfSB9XG4uZ2x5cGhpY29uLWVqZWN0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OVwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1yaWdodCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODBcIjsgfSB9XG4uZ2x5cGhpY29uLXBsdXMtc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cy1zaWduICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MlwiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLXNpZ24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODNcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLXNpZ24gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg0XCI7IH0gfVxuLmdseXBoaWNvbi1xdWVzdGlvbi1zaWduICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NVwiOyB9IH1cbi5nbHlwaGljb24taW5mby1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODZcIjsgfSB9XG4uZ2x5cGhpY29uLXNjcmVlbnNob3QgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtY2lyY2xlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OFwiOyB9IH1cbi5nbHlwaGljb24tb2stY2lyY2xlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhbi1jaXJjbGUgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MVwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTJcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkzXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1kb3duICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NFwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk2XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtc21hbGwgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5N1wiOyB9IH1cbi5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDFcIjsgfSB9XG4uZ2x5cGhpY29uLWdpZnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH0gfVxuLmdseXBoaWNvbi1sZWFmICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwM1wiOyB9IH1cbi5nbHlwaGljb24tZmlyZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1vcGVuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA1XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtY2xvc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNlwiOyB9IH1cbi5nbHlwaGljb24td2FybmluZy1zaWduICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDdcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYW5lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH0gfVxuLmdseXBoaWNvbi1jYWxlbmRhciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOVwiOyB9IH1cbi5nbHlwaGljb24tcmFuZG9tICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbW1lbnQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTExXCI7IH0gfVxuLmdseXBoaWNvbi1tYWduZXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMlwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi11cCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tZG93biAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE0XCI7IH0gfVxuLmdseXBoaWNvbi1yZXR3ZWV0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNVwiOyB9IH1cbi5nbHlwaGljb24tc2hvcHBpbmctY2FydCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTZcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOFwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIwXCI7IH0gfVxuLmdseXBoaWNvbi1oZGQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMVwiOyB9IH1cbi5nbHlwaGljb24tYnVsbGhvcm4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjJcIjsgfSB9XG4uZ2x5cGhpY29uLWJlbGwgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIzXCI7IH0gfVxuLmdseXBoaWNvbi1jZXJ0aWZpY2F0ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNFwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyN1wiOyB9IH1cbi5nbHlwaGljb24taGFuZC1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjhcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI5XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMFwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctdXAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzM1wiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWRvd24gICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzRcIjsgfSB9XG4uZ2x5cGhpY29uLWdsb2JlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM1XCI7IH0gfVxuLmdseXBoaWNvbi13cmVuY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNlwiOyB9IH1cbi5nbHlwaGljb24tdGFza3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzdcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbHRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH0gfVxuLmdseXBoaWNvbi1icmllZmNhc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOVwiOyB9IH1cbi5nbHlwaGljb24tZnVsbHNjcmVlbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDBcIjsgfSB9XG4uZ2x5cGhpY29uLWRhc2hib2FyZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQxXCI7IH0gfVxuLmdseXBoaWNvbi1wYXBlcmNsaXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MlwiOyB9IH1cbi5nbHlwaGljb24taGVhcnQtZW1wdHkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxpbmsgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ0XCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NVwiOyB9IH1cbi5nbHlwaGljb24tcHVzaHBpbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDZcIjsgfSB9XG4uZ2x5cGhpY29uLXVzZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ4XCI7IH0gfVxuLmdseXBoaWNvbi1nYnAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OVwiOyB9IH1cbi5nbHlwaGljb24tc29ydCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdCAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MlwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlciAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTNcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzLWFsdCB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTZcIjsgfSB9XG4uZ2x5cGhpY29uLXVuY2hlY2tlZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH0gfVxuLmdseXBoaWNvbi1leHBhbmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OFwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtZG93biAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTlcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctaW4gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MVwiOyB9IH1cbi5nbHlwaGljb24tZmxhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1vdXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH0gfVxuLmdseXBoaWNvbi1uZXctd2luZG93ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NFwiOyB9IH1cbi5nbHlwaGljb24tcmVjb3JkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2N1wiOyB9IH1cbi5nbHlwaGljb24tc2F2ZWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjhcIjsgfSB9XG4uZ2x5cGhpY29uLWltcG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH0gfVxuLmdseXBoaWNvbi1leHBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MFwiOyB9IH1cbi5nbHlwaGljb24tc2VuZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3M1wiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXJlbW92ZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NlwiOyB9IH1cbi5nbHlwaGljb24tY3JlZGl0LWNhcmQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzdcIjsgfSB9XG4uZ2x5cGhpY29uLXRyYW5zZmVyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH0gfVxuLmdseXBoaWNvbi1jdXRsZXJ5ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OVwiOyB9IH1cbi5nbHlwaGljb24taGVhZGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbXByZXNzZWQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgxXCI7IH0gfVxuLmdseXBoaWNvbi1lYXJwaG9uZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MlwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODNcIjsgfSB9XG4uZ2x5cGhpY29uLXRvd2VyICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH0gfVxuLmdseXBoaWNvbi1zdGF0cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NVwiOyB9IH1cbi5nbHlwaGljb24tc2QtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODZcIjsgfSB9XG4uZ2x5cGhpY29uLWhkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJ0aXRsZXMgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtc3RlcmVvICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC01LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNi0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTctMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkzXCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5cmlnaHQtbWFyayAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NFwiOyB9IH1cbi5nbHlwaGljb24tcmVnaXN0cmF0aW9uLW1hcmsgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTVcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk3XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC11cGxvYWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OFwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1jb25pZmVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH0gfVxuLmdseXBoaWNvbi1jZCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZS1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDJcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4tZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH0gfVxuLmdseXBoaWNvbi1sZXZlbC11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNFwiOyB9IH1cbi5nbHlwaGljb24tY29weSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXBhc3RlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA2XCI7IH0gfVxuLy8gVGhlIGZvbGxvd2luZyAyIEdseXBoaWNvbnMgYXJlIG9taXR0ZWQgZm9yIHRoZSB0aW1lIGJlaW5nIGJlY2F1c2Vcbi8vIHRoZXkgY3VycmVudGx5IHVzZSBVbmljb2RlIGNvZGVwb2ludHMgdGhhdCBhcmUgb3V0c2lkZSB0aGVcbi8vIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKS4gT2xkZXIgYnVnZ3kgdmVyc2lvbnMgb2YgV2ViS2l0IGNhbid0IGhhbmRsZVxuLy8gbm9uLUJNUCBjb2RlcG9pbnRzIGluIENTUyBzdHJpbmcgZXNjYXBlcywgYW5kIHRodXMgY2FuJ3QgZGlzcGxheSB0aGVzZSB0d28gaWNvbnMuXG4vLyBOb3RhYmx5LCB0aGUgYnVnIGFmZmVjdHMgc29tZSBvbGRlciB2ZXJzaW9ucyBvZiB0aGUgQW5kcm9pZCBCcm93c2VyLlxuLy8gTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMTA2XG4vLyAuZ2x5cGhpY29uLWRvb3IgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjZhYVwiOyB9IH1cbi8vIC5nbHlwaGljb24ta2V5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNTExXCI7IH0gfVxuLmdseXBoaWNvbi1hbGVydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwOVwiOyB9IH1cbi5nbHlwaGljb24tZXF1YWxpemVyICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWtpbmcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjExXCI7IH0gfVxuLmdseXBoaWNvbi1xdWVlbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMlwiOyB9IH1cbi5nbHlwaGljb24tcGF3biAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWJpc2hvcCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE0XCI7IH0gfVxuLmdseXBoaWNvbi1rbmlnaHQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNVwiOyB9IH1cbi5nbHlwaGljb24tYmFieS1mb3JtdWxhICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTZcIjsgfSB9XG4uZ2x5cGhpY29uLXRlbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNmZhXCI7IH0gfVxuLmdseXBoaWNvbi1ibGFja2JvYXJkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOFwiOyB9IH1cbi5nbHlwaGljb24tYmVkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTlcIjsgfSB9XG4uZ2x5cGhpY29uLWFwcGxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmOGZmXCI7IH0gfVxuLmdseXBoaWNvbi1lcmFzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyMVwiOyB9IH1cbi5nbHlwaGljb24taG91cmdsYXNzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIzMWJcIjsgfSB9XG4uZ2x5cGhpY29uLWxhbXAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIzXCI7IH0gfVxuLmdseXBoaWNvbi1kdXBsaWNhdGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNFwiOyB9IH1cbi5nbHlwaGljb24tcGlnZ3ktYmFuayAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNjaXNzb3JzICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI2XCI7IH0gfVxuLmdseXBoaWNvbi1iaXRjb2luICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24tYnRjICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXhidCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi15ZW4gICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tanB5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YmxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1ydWIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tc2NhbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMxXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMlwiOyB9IH1cbi5nbHlwaGljb24tZWR1Y2F0aW9uICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzNcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM0XCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24tdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1oYW1idXJnZXIgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzZcIjsgfSB9XG4uZ2x5cGhpY29uLW1vZGFsLXdpbmRvdyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM3XCI7IH0gfVxuLmdseXBoaWNvbi1vaWwgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOFwiOyB9IH1cbi5nbHlwaGljb24tZ3JhaW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzlcIjsgfSB9XG4uZ2x5cGhpY29uLXN1bmdsYXNzZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQwXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LXNpemUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1jb2xvciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDJcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtYmFja2dyb3VuZCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQzXCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWJvdHRvbSAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDVcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ob3Jpem9udGFseyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ2XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0N1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXZlcnRpY2FsICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDhcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ5XCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1yaWdodCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MFwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtbGVmdCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWJvdHRvbSAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUyXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS10b3AgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1M1wiOyB9IH1cbi5nbHlwaGljb24tY29uc29sZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXN1cGVyc2NyaXB0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU1XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJzY3JpcHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NlwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTdcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU4XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNjBcIjsgfSB9XG4iLAoJCSIvLyBEcm9wcGVkIGluIEJTNSwgYnV0IHRoaXMgc2VlbXMgcHJldHR5IGZ1bmRhbWVudGFsP1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gVGhlIEBleHRlbmRzIGhlcmUgYWRkIGEgbG90IG9mIGJsb2F0IHRvIHZlcnNpb249NCAoJiBpdCdzIG5vdCBlbnRpcmVseSBjb3JyZWN0KVxuLy8gSW5zdGVhZCBvZiBmaXhpbmcsIGNvbnNpZGVyIHRoaXMgZGVwcmVjYXRlZCwgYW5kIGZvciBCUzUsIHdlJ2xsIG1vZGlmeVxuLy8gdGhlaXIgc2VsZWN0b3JzIGRpcmVjdGx5IHRvIGFjY29tb2RhdGUgc2hpbnlcbkBpZiAkYm9vdHN0cmFwLXZlcnNpb24gPT0gNCB7XG4gIC5zaGlueS1pbnB1dC1jaGVja2JveGdyb3VwLCAuc2hpbnktaW5wdXQtcmFkaW9ncm91cCB7XG4gICAgLy8gVE9ETzogdGhpcyBpcyBwcmV0dHkgZXhwZW5zaXZlIVxuICAgIC5jaGVja2JveCwgLnJhZGlvIHtcbiAgICAgIEBleHRlbmQgLmZvcm0tY2hlY2s7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIEBleHRlbmQgLmZvcm0tY2hlY2stbGFiZWw7XG4gICAgICB9XG4gICAgICBsYWJlbCA+IGlucHV0IHtcbiAgICAgICAgQGV4dGVuZCAuZm9ybS1jaGVjay1pbnB1dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgLy8gU2luY2UgdGhlc2UgaW5saW5lIGNsYXNzZXMgZG9uJ3QgaGF2ZSBhIHByb3BlciBkaXYgY29udGFpbmVyXG4gIC8vICh0aGV5J3JlIGxhYmVscyksIHdlIGJvcnJvdyBqdXN0IHRoZSBzdHlsaW5nIHdlIG5lZWQgZnJvbVxuICAvLyAuZm9ybS1jaGVjay1pbmxpbmVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3JzdHVkaW8vYnM0L2Jsb2IvN2FhZGQxOS9pbnN0L25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyNMMjI3LUwyNDBcbiAgICAuY2hlY2tib3gtaW5saW5lLCAucmFkaW8taW5saW5lIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gICAgICBsYWJlbCA+IGlucHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1kYXRlcmFuZ2UgLmlucHV0LWdyb3VwLWFkZG9uLmlucHV0LWdyb3VwLXByZXBlbmQuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgcGFkZGluZzogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtc2hhZG93OiBpbmhlcml0O1xuICBib3JkZXItd2lkdGg6IDA7XG4gIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi5zaGlueS1pbnB1dC1jaGVja2JveGdyb3VwIC5jaGVja2JveC1pbmxpbmUsXG4uc2hpbnktaW5wdXQtcmFkaW9ncm91cCAucmFkaW8taW5saW5lIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBGaXggdGhlIHBvc2l0aW9uIG9mIGNoZWNrYm94IGFuZCByYWRpbyBncm91cCBsYWJlbHMgdG8gbWF0Y2ggb3RoZXIgaW5wdXRzXG4vLyBsYWJlbHMsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vcnN0dWRpby9zaGlueS9ibG9iLzZmYzA2MjgxL2luc3Qvd3d3L3NoYXJlZC9zaGlueV9zY3NzL3NoaW55LnNjc3MjTDM0NC1MMzU2XG4vLyBUT0RPOiBDb25zaWRlciByZW1vdmluZyBpZiB3ZSBhZGQgYGlucHV0X2NoZWNrYm94KClgIGFuZCBgaW5wdXRfcmFkaW8oKWBcbkBpZiAkYm9vdHN0cmFwLXZlcnNpb24gPT0gNSB7XG4gIC5zaGlueS1pbnB1dC1jaGVja2JveGdyb3VwLFxuICAuc2hpbnktaW5wdXQtcmFkaW9ncm91cCB7XG4gICAgbGFiZWwgfiAuc2hpbnktb3B0aW9ucy1ncm91cCB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKCN7LSgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41fSAtICN7JGlucHV0LWJ0bi1ib3JkZXItd2lkdGh9KTtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIEZvciBjb2RlIGluc2lkZSBvZiBzaG93Y2FzZSBtb2RlXG4vLyBUT0RPOiB0aGlzIHNob3VsZCBwcm9iYWJseSBwb3J0ZWQgdG8gc2hpbnkgaXRzZWxmXG4vLyBpZiBhbmQgd2hlbiBzaGlueS1zaG93Y2FzZS5jc3MgaXMgcG9ydGVkIHRvIHNhc3NcbnByZS5zaGlueS1jb2RlIHtcbiAgcGFkZGluZzogMC41ICogJHNwYWNlcjtcbn1cblxuLy8gQlM1IGNoYW5nZWQgZmxvYXQtbGVmdCAtPiBmbG9hdC1zdGFydFxuQGlmICRib290c3RyYXAtdmVyc2lvbiAhPSA0IHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIEBleHRlbmQgLmZsb2F0LXN0YXJ0O1xuICB9XG4gIC5mbG9hdC1yaWdodCB7XG4gICAgQGV4dGVuZCAuZmxvYXQtZW5kO1xuICB9XG59XG4iLAoJCSIvLyBCUzMgLT4gQlM0IHNhdyBhIHJlbW92YWwgb2YgbWFyZ2luLXRvcCBvbiBoZWFkZXJzLFxuLy8gd2hpY2ggaXMgYSBwcmV0dHkgamFycmluZyBjaGFuZ2UsIGV4cGVjaWFsbHkgZm9yIFJtZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvZjE3Zjg4MmQvZGlzdC9jc3MvYm9vdHN0cmFwLmNzcyNMMTIxOS1MMTI1MFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvNGRlNDg3NGUvc2Nzcy9fcmVib290LnNjc3MjTDgyLUw4OVxuXG5AbWl4aW4gc2VjdGlvbi1tYXJnaW4tdG9wKCRsZXZlbHMsICRtYXJnaW4tdG9wKSB7XG4gIEBlYWNoICRsZXZlbCBpbiAkbGV2ZWxzIHtcbiAgICA6d2hlcmUoLnNlY3Rpb24ubGV2ZWwjeyRsZXZlbH0sIHNlY3Rpb24ubGV2ZWwjeyRsZXZlbH0pIHtcbiAgICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGJvb3RzdHJhcC12ZXJzaW9uID49IDUge1xuICAvLyBGb3IgQlM1Kywgb25seSBhcHBseSB0aGUgbWFyZ2luLXRvcCBpZiBwYW5kb2MncyBDU1MgY2xhc3Nlc1xuICAvLyBhcmUgcHJlc2VudC4gVGhpcyB3YXkgcm1hcmtkb3duOjpodG1sX2RvY3VtZW50X2Jhc2Ugd2lsbCBjb250aW51ZVxuICAvLyB0byBoYXZlIG1hcmdpbi10b3AgKHdoaWNoIGlzIGdvb2QpLCBidXQgJ3JhdycgaGVhZGVycyB3b24ndCwgd2hpY2hcbiAgLy8gbGVhZHMgdG8gYSBiZXR0ZXIgZXhwZXJpZW5jZSB3aXRoIGFjY29yZGlvbnMsIHBvcG92ZXJzLCBldGNcbiAgLy8gKHRoZWlyIGRlc2lnbi9leGFtcGxlcyBleHBlY3QgaGVhZGVycyB0aGF0IGRvbid0IGhhdmUgbWFyZ2luLXRvcCkuXG4gIC8vIEl0IGFsc28gc2VlbXMgYXMgdGhvdWdoIFF1YXJ0byBkb2NzIGRvbid0IGdlbmVyYXRlIHRoZXNlIENTUyBjbGFzc2VzLFxuICAvLyBidXQgaXQgYWxzbyBzZWVtcyB0aGV5J3ZlIGFkZGVkIHRoZWlyIG93biBydWxlcyBodHRwczovL2dpdGh1Yi5jb20vcXVhcnRvLWRldi9xdWFydG8tY2xpL2Jsb2IvMGU2NjJjL3NyYy9yZXNvdXJjZXMvZm9ybWF0cy9odG1sL2Jvb3RzdHJhcC9fYm9vdHN0cmFwLXJ1bGVzLnNjc3MjTDU5NS1MNjEzLlxuICAvLyBJbiBwYW5kb2MsIGAtLXRvIGh0bWw0YCB3cml0ZXMgYGRpdi5zZWN0aW9uLmxldmVsWGAgYW5kIGAtLXRvIGh0bWw1YFxuICAvLyBwcm9kdWNlcyBgc2VjdGlvbi5sZXZlbFhgIGVsZW1lbnRzLlxuXG4gIEBpbmNsdWRlIHNlY3Rpb24tbWFyZ2luLXRvcCgxIDIgMywgMS41ICogJHNwYWNlcik7XG4gIEBpbmNsdWRlIHNlY3Rpb24tbWFyZ2luLXRvcCg0IDUgNiwgJHNwYWNlcik7XG5cbn0gQGVsc2Uge1xuXG4gIGgxLCBoMiwgaDMgeyBtYXJnaW4tdG9wOiAxLjUgKiAkc3BhY2VyO31cbiAgaDQsIGg1LCBoNiB7IG1hcmdpbi10b3A6ICRzcGFjZXI7IH1cblxufVxuIiwKCQkiQGltcG9ydCBcInNwYWNlclwiO1xuQGltcG9ydCBcInRhYi1maWxsXCI7XG5AaW1wb3J0IFwiY29sb3ItdXRpbGl0aWVzXCI7XG4iLAoJCSIkc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJGJzbGliLXNwYWNlcjogJHNwYWNlciAhZGVmYXVsdDtcblxuOnJvb3Qge1xuICAvLyBDb250cm9scyBkZWZhdWx0IHNwYWNpbmcgaW4gbGF5b3V0IGNvbnRhaW5lcnMgKGUuZywgbGF5b3V0X2NvbHVtbnMoKSlcbiAgLS1ic2xpYi1zcGFjZXI6ICN7JGJzbGliLXNwYWNlcn07XG4gIC0tYnNsaWItbWItc3BhY2VyOiB2YXIoLS1ic2xpYi1zcGFjZXIsIDFyZW0pO1xufVxuXG4vLyBTb21lIHRoaW5ncyBsaWtlIGNhcmQoKSwgcCgpLCBpbnB1dHMsIGV0Yy4gd2FudCBzb21lIG1hcmdpbi1ib3R0b20gYnkgZGVmYXVsdFxuLy8gc28geW91IGNhbiBwbG9wIHRoZW0gYW55d2hlcmUgYW5kIHlvdSBnZXQgc3BhY2luZyBiZXR3ZWVuIHJvd3MuIEhvd2V2ZXIsIG5vd1xuLy8gdGhhdCB3ZSBoYXZlIGxheW91dCB1dGlsaXRpZXMgbGlrZSBwYWdlX2ZpbGxhYmxlKCksIGxheW91dF9jb2x1bW5zKCksXG4vLyBsYXlvdXRfc2lkZWJhcigpLCBldGMuIHdoZXJlIHdlIGNhbiBjb250cm9sIHRoZSBnYXAgYmV0d2VlbiByb3dzL2NvbHVtbnMsIHdlXG4vLyBuZWVkIGEgd2F5IHRvIHJlc2V0IHRob3NlIG1hcmdpbi1ib3R0b20gdG8gMCBpbiB0aG9zZSBzcGVjaWFsIGNvbnRleHRzXG4vL1xuLy8gV2UgZG8gdGhpcyBieSBhZGRpbmcgdGhpcyBjbGFzcyB0byBjb21wb25lbnRzIChlLmcuLCBjYXJkKCkpLi4uXG4uYnNsaWItbWItc3BhY2luZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWJzbGliLW1iLXNwYWNlcik7XG59XG5cbi8vIC4uLkFuZCB0aGlzIGNsYXNzIGZvciBsYXlvdXQgY29udGFpbmVycyAoZS5nLCBsYXlvdXRfY29sdW1ucygpKVxuLmJzbGliLWdhcC1zcGFjaW5nIHtcbiAgZ2FwOiB2YXIoLS1ic2xpYi1tYi1zcGFjZXIpO1xuXG4gICYsXG4gICYgPiAuc2hpbnktaHRtbC1vdXRwdXQsXG4gICYgPiAuc2hpbnktcGFuZWwtY29uZGl0aW9uYWwge1xuICAgID4gLmJzbGliLW1iLXNwYWNpbmcsID4gLmZvcm0tZ3JvdXAsID4gcCwgPiBwcmUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2UgZ2VuZXJhbGx5IGRvbid0IHdhbnQgbWIgc3BhY2luZyBmb3IgX2FjdGl2YXRlZF8gZmlsbCBpdGVtc1xuLmh0bWwtZmlsbC1jb250YWluZXIgPiAuaHRtbC1maWxsLWl0ZW0uYnNsaWItbWItc3BhY2luZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4iLAoJCSIudGFiLWNvbnRlbnQge1xuICAvLyBXb3JrYXJvdW5kIGZvciBwa2dkb3duJ3MgQ1NTIHRvIG1ha2UgdGFiLXBhbmUgYWxsIGEgY29uc2lzdGVudCBoZWlnaHRcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3ItbGliL3BrZ2Rvd24vYmxvYi85NTZmMDcvaW5zdC9CUzUvYXNzZXRzL3BrZ2Rvd24uc2NzcyNMMzQyLUwzNTVcbiAgPi50YWItcGFuZS5odG1sLWZpbGwtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gVGFrZSBwcmVjZWRlbmNlIG92ZXIgQm9vdHN0cmFwJ3MgYGRpc3BsYXk6YmxvY2tgIHJ1bGVcbiAgPi5hY3RpdmUuaHRtbC1maWxsLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIEFub3RoZXIgd29ya2Fyb3VuZCBmb3IgcGtnZG93biBhZGRpbmcgZXh0cmEgcGFkZGluZyB3ZSBkaWRuJ3QgYXNrIGZvclxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vci1saWIvcGtnZG93bi9ibG9iLzk1NmYwNy9pbnN0L0JTNS9hc3NldHMvcGtnZG93bi5zY3NzI0wzMzUtTDMzN1xuICAmLmh0bWwtZmlsbC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsCgkJIiRic2xpYi1lbmFibGUtY29sb3ItdXRpbGl0aWVzOiAkYm9vdHN0cmFwLXZlcnNpb24gPj0gNSAhZGVmYXVsdDtcblxuQGlmICgkYnNsaWItZW5hYmxlLWNvbG9yLXV0aWxpdGllcykge1xuICAkYnNsaWItZ3JhZGllbnQtY29sb3JzOiAoKSAhZGVmYXVsdDtcblxuICAkYnNsaWItZ3JhZGllbnQtY29sb3JzLWRlZmF1bHRzOiAoKTtcbiAgJGJzbGliLWNvbG9yLW5hbWVzOiAoXCJibHVlXCIsIFwiaW5kaWdvXCIsIFwicHVycGxlXCIsIFwicGlua1wiLCBcInJlZFwiLCBcIm9yYW5nZVwiLCBcInllbGxvd1wiLCBcImdyZWVuXCIsIFwidGVhbFwiLCBcImN5YW5cIik7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGJzbGliLWNvbG9yLW5hbWVzIHtcbiAgICBAaWYgKG1hcC1oYXMta2V5KCRjb2xvcnMsICRuYW1lKSkge1xuICAgICAgJGJzbGliLWdyYWRpZW50LWNvbG9ycy1kZWZhdWx0czogbWFwLW1lcmdlKFxuICAgICAgICAkYnNsaWItZ3JhZGllbnQtY29sb3JzLWRlZmF1bHRzLFxuICAgICAgICAoJG5hbWU6IG1hcC1nZXQoJGNvbG9ycywgJG5hbWUpKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAkYnNsaWItZ3JhZGllbnQtY29sb3JzOiBtYXAtbWVyZ2UoXG4gICAgJGJzbGliLWdyYWRpZW50LWNvbG9ycy1kZWZhdWx0cyxcbiAgICAkYnNsaWItZ3JhZGllbnQtY29sb3JzXG4gICk7XG5cbiAgLy8gTmFtZWQgY29sb3IgYmFja2dyb3VuZCBhbmQgZm9yZWdyb3VuZCB1dGlsaXR5IGNsYXNzZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJzbGliLWdyYWRpZW50LWNvbG9ycyB7XG4gICAgLmJnLSN7JG5hbWV9IHtcbiAgICAgIC0tYnNsaWItY29sb3ItYmc6ICN7JGNvbG9yfTtcbiAgICAgIC0tYnNsaWItY29sb3ItZmc6ICN7Y29sb3ItY29udHJhc3QoJGNvbG9yKX07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ic2xpYi1jb2xvci1iZyk7XG4gICAgICBjb2xvcjogdmFyKC0tYnNsaWItY29sb3ItZmcpO1xuICAgIH1cblxuICAgIC50ZXh0LSN7JG5hbWV9IHtcbiAgICAgIC0tYnNsaWItY29sb3ItZmc6ICN7JGNvbG9yfTtcbiAgICAgIGNvbG9yOiB2YXIoLS1ic2xpYi1jb2xvci1mZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRmlsbCBpbiB0aGUgYC0tY29sb3ItKmAgdmFyaWFibGVzXG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLnRleHQtI3skbmFtZX0ge1xuICAgICAgLS1ic2xpYi1jb2xvci1mZzogI3skY29sb3J9O1xuICAgIH1cbiAgICAuYmctI3skbmFtZX0ge1xuICAgICAgLS1ic2xpYi1jb2xvci1iZzogI3skY29sb3J9O1xuICAgICAgLS1ic2xpYi1jb2xvci1mZzogI3tjb2xvci1jb250cmFzdCgkY29sb3IpfTtcbiAgICB9XG4gIH1cblxuICAvLyBHcmFkaWVudCBiYWNrZ3JvdW5kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9cbiAgLy8gQ3JlYXRlcyBncmFkaWVudCBiYWNrZ3JvdW5kIGZvciBldmVyeSBuYW1lZCBjb2xvciBwYWlyLiBVc2VycyBjYW4gYWRkXG4gIC8vIGFkZGl0aW9uYWwgY29sb3JzIGludG8gdGhlIG1peCBieSBzZXR0aW5nICRic2xpYi1ncmFkaWVudC1jb2xvcnMgdG8gYSBtYXAgb2ZcbiAgLy8gY29sb3IgbmFtZXMgdG8gY29sb3JzLiBDcmVhdGVzIGNsYXNzIG5hbWVzIGxpa2U6IC5iZy1ncmFkaWVudC17ZnJvbX0te3RvfS5cbiAgQGVhY2ggJG5hbWUxLCAkY29sb3IxIGluICRic2xpYi1ncmFkaWVudC1jb2xvcnMge1xuICAgIEBlYWNoICRuYW1lMiwgJGNvbG9yMiBpbiAkYnNsaWItZ3JhZGllbnQtY29sb3JzIHtcbiAgICAgIEBpZiAkbmFtZTEgIT0gJG5hbWUyIHtcbiAgICAgICAgLmJnLWdyYWRpZW50LSN7JG5hbWUxfS0jeyRuYW1lMn0ge1xuICAgICAgICAgICRjb2xvci1taWQ6IG1peCgkY29sb3IxLCAkY29sb3IyLCA2MCUpO1xuICAgICAgICAgICRjb2xvci1mZzogY29sb3ItY29udHJhc3QoJGNvbG9yLW1pZCk7XG5cbiAgICAgICAgICAtLWJzbGliLWNvbG9yLWZnOiAjeyRjb2xvci1mZ307XG4gICAgICAgICAgLS1ic2xpYi1jb2xvci1iZzogI3skY29sb3ItbWlkfTtcblxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHZhcigtLWJnLWdyYWRpZW50LWRlZywgMTQwZGVnKSxcbiAgICAgICAgICAgICRjb2xvcjEgdmFyKC0tYmctZ3JhZGllbnQtc3RhcnQsIDM2JSksXG4gICAgICAgICAgICAkY29sb3IyIHZhcigtLWJnLWdyYWRpZW50LWVuZCwgMTgwJSlcbiAgICAgICAgICApICRjb2xvci1taWQ7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1mZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLyotLSBzY3NzOnJ1bGVzIC0tKi9cbkBpbXBvcnQgXCJpb25yYW5nZXNsaWRlci9fcnVsZXMuc2Nzc1wiO1xuQGltcG9ydCBcInRhYmxlcy9fcnVsZXMuc2Nzc1wiO1xuXG4kd2ViLWZvbnQtcGF0aDogXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU9wZW4rU2FuczppdGFsLHdnaHRAMCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDAmZmFtaWx5PVNvdXJjZStDb2RlK1BybzppdGFsLHdnaHRAMCw0MDA7MCw2MDA7MSw0MDA7MSw2MDAmZGlzcGxheT1zd2FwXCIgIWRlZmF1bHQ7XG5AaWYgJHdlYi1mb250LXBhdGgge1xuICBAaW1wb3J0IHVybCgkd2ViLWZvbnQtcGF0aCk7XG59XG5cbi8vIFZhcmlhYmxlc1xuOnJvb3Qge1xuICAtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiOiAjeyRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYn07XG59XG5cbkBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiOiAjeyRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYi1kYXJrfTtcbn1cblxuLy8gRm9yIHJhZGlvQnV0dG9ucygpL2NoZWNrYm94R3JvdXBJbnB1dCgpLCBtb3ZlIHRleHQgc2xpZ2h0bHkgdG8gdGhlIHJpZ2h0XG4kYnNsaWItY2hlY2tib3gtcmFkaW8tbWFyZ2luLXJpZ2h0OiAwLjM1ZW0gIWRlZmF1bHQ7XG4uY2hlY2tib3gsXG4ucmFkaW8ge1xuICBpbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkYnNsaWItY2hlY2tib3gtcmFkaW8tbWFyZ2luLXJpZ2h0O1xuICB9XG59XG5cbi8vIEFsaWdubWVudCBmaXhlcyBmb3IgcmFkaW9CdXR0b25zKGlubGluZT1UUlVFKS9jaGVja2JveEdyb3VwSW5wdXQoaW5saW5lPVRSVUUpXG4vLyBUT0RPOiBJdCB3b3VsZCBiZSBuaWNlIHRvIGRvIHRoaXMgZm9yIGFsbCBpbmxpbmUgZ3JvdXBzLCBidXQgdGhhdCB3b3VsZFxuLy8gcmVxdWlyZSB1cGRhdGluZyB0aGUgaW5wdXQgbWFya3VwIHRvIHVzZSA8ZmllbGRzZXQ+IGFuZCA8bGVnZW5kPi5cbi5zaGlueS1pbnB1dC1jb250YWluZXItaW5saW5lIHtcbiAgLnNoaW55LW9wdGlvbnMtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgY29sdW1uLWdhcDogMWVtO1xuXG4gICAgLmNoZWNrYm94LWlubGluZSwgLnJhZGlvLWlubGluZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoI3skZm9ybS1jaGVjay1pbnB1dC13aWR0aH0gKyAjeyRic2xpYi1jaGVja2JveC1yYWRpby1tYXJnaW4tcmlnaHR9ICogMik7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IGNhbGMoI3soJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgKiAuNX0gKyAjeyRpbnB1dC1idG4tYm9yZGVyLXdpZHRofSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZvciBzaGlueTo6ZGF0ZVJhbmdlSW5wdXQoKSwgZml4IFwidG9cIiB3aWR0aCBpbiB0aGUgbWlkZGxlIG9mIHRoZSBkYXRlIHBpY2tlclxuLnNoaW55LWRhdGUtcmFuZ2UtaW5wdXQgLmlucHV0LWRhdGVyYW5nZSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi8vIE1ha2UgdGhlIGRlZmF1bHQgc2hpbnk6OmFjdGlvbkJ1dHRvbigpIGFuIG91dGxpbmUgdmFyaWFudCwgYnV0IG5vdCBvdGhlcnNcbi5idG4tb3V0bGluZS1kZWZhdWx0LFxuLmJ0bi1kZWZhdWx0Om5vdCguYnRuLXByaW1hcnksIC5idG4tc2Vjb25kYXJ5LCAuYnRuLWluZm8sIC5idG4tc3VjY2VzcywgLmJ0bi1kYW5nZXIsIC5idG4td2FybmluZywgLmJ0bi1saWdodCwgLmJ0bi1kYXJrLCAuYnRuLWxpbmssIFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkc2Vjb25kYXJ5KTtcbn1cblxuLy8gLi4uIGFuZCBtYWtlIGl0IGxvb2sgYmV0dGVyIGluIGRhcmsgbW9kZVxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1vdXRsaW5lLWRlZmF1bHQsXG4gICAgLmJ0bi1kZWZhdWx0Om5vdCguYnRuLXByaW1hcnksIC5idG4tc2Vjb25kYXJ5LCAuYnRuLWluZm8sIC5idG4tc3VjY2VzcywgLmJ0bi1kYW5nZXIsIC5idG4td2FybmluZywgLmJ0bi1saWdodCwgLmJ0bi1kYXJrLCAuYnRuLWxpbmssIFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGRhcmstdGV4dC1lbXBoYXNpcy1kYXJrKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRm9yIHNlbGVjdGl6ZUlucHV0KG9wdGlvbnMgPSBsaXN0KHBsdWdpbnMgPSBcInJlbW92ZV9idXR0b25cIikpXG4vLyBUT0RPOiB3ZSBzaG91bGQgcHJvYmFibHkgbWFrZSB0aGlzIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGluIHNoaW55XG4uc2VsZWN0aXplLWNvbnRyb2wucGx1Z2luLXJlbW92ZV9idXR0b24gLml0ZW0ge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAucmVtb3ZlIHtcbiAgICBib3JkZXItbGVmdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuQGlmICgkYnNsaWItZW5hYmxlLXNoYWRvd3MpIHtcbiAgLy8gVGhlc2Ugc2hhZG93cyBhcmUgZGlzYWJsZWQgYmVjYXVzZSB3ZSB1c2UgYGVuYWJsZS1zaGFkb3dzOiBmYWxzZWAgaW4gdGhlXG4gIC8vIHRoZW1lIHRvIGF2b2lkIGVuYWJsaW5nICphbGwqIHNoYWRvd3MuIFRoaXMgaXMgd2h5IHdlIGNhbid0IHVzZSB0aGVcbiAgLy8gYnVpbHQtaW4gYEBpbmNsdWRlIGJveC1zaGFkb3coKWAgbWl4aW4uXG5cbiAgLy8gQWRkIGJveC1zaGFkb3cgJiByZW1vdmUgYm9yZGVyIGZyb20gJ3RvcC1sZXZlbCcgY2FyZCgpL2xheW91dF9zaWRlYmFyKClcbiAgLmJzbGliLWNhcmQge1xuICAgIC8vIEJTIGRvZXNuJ3QgaW5jbHVkZSBhIGJveC1zaGFkb3cgcnVsZSBmb3IgLmNhcmQgd2hlbiBgZW5hYmxlLXNoYWRvd3M6IGZhbHNlYFxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJzbGliLWNhcmQtYm94LXNoYWRvdywgI3skYm94LXNoYWRvdy1zbX0pO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnNsaWItY2FyZC1ib3JkZXItY29sb3IsIHRyYW5zcGFyZW50KTtcbiAgICAmLmJzbGliLXZhbHVlLWJveC5kZWZhdWx0IHtcbiAgICAgIC0tYnNsaWItdmFsdWUtYm94LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1ic2xpYi1jYXJkLWJvcmRlci1jb2xvciwgdHJhbnNwYXJlbnQpO1xuICAgIH1cblxuICAgIC8vIFJlc3RvcmUgYm9yZGVycyB3aXRob3V0IHNoYWRvd3MgZm9yIG5lc3RlZCBjYXJkcy92YWx1ZSBib3hlc1xuICAgIC5ic2xpYi1jYXJkIHtcbiAgICAgIC0tYnNsaWItY2FyZC1ib3gtc2hhZG93OiA7IC8vIHVuc2V0IG91ciBzaGFkb3dcbiAgICAgIC0tYnNsaWItY2FyZC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgICAgICYuYnNsaWItdmFsdWUtYm94LmRlZmF1bHQge1xuICAgICAgICAtLWJzbGliLXZhbHVlLWJveC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yLCAjeyRjYXJkLWJvcmRlci1jb2xvcn0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ic2xpYi1jYXJkLWJveC1zaGFkb3ctc20ge1xuICAgIC0tYnNsaWItY2FyZC1ib3gtc2hhZG93OiB2YXIoLS1ic2xpYi1jYXJkLWJveC1zaGFkb3ctc20sICN7JGJveC1zaGFkb3ctc219KTtcbiAgfVxuICAuYnNsaWItY2FyZC1ib3gtc2hhZG93LW1kIHtcbiAgICAtLWJzbGliLWNhcmQtYm94LXNoYWRvdzogdmFyKC0tYnNsaWItY2FyZC1ib3gtc2hhZG93LW1kLCAjeyRib3gtc2hhZG93fSk7XG4gIH1cbiAgLmJzbGliLWNhcmQtYm94LXNoYWRvdy1sZyB7XG4gICAgLS1ic2xpYi1jYXJkLWJveC1zaGFkb3c6IHZhcigtLWJzbGliLWNhcmQtYm94LXNoYWRvdy1sZywgI3skYm94LXNoYWRvdy1sZ30pO1xuICB9XG4gIC5ic2xpYi1jYXJkLWJveC1zaGFkb3ctbm9uZSB7XG4gICAgLS1ic2xpYi1jYXJkLWJveC1zaGFkb3c6IG5vbmU7XG4gICAgLS1ic2xpYi1jYXJkLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5wb3BvdmVyIHtcbiAgICAtLSN7JHByZWZpeH1wb3BvdmVyLXNoYWRvdzogI3skcG9wb3Zlci1ib3gtc2hhZG93fTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1zaGFkb3cpO1xuICB9XG59XG5cbi8vIFRPRE86IG1vdmUgdGhpcyBsb2dpYyBpbnRvIGEgXCJjb3JlXCIgYnVuZGxlIHRoYXQgY29tZXMgd2l0aCBhbnkgdGhlbWVcbi8vIChidXQgeW91IG9ubHkgZ2V0IHRoZSBzaGFkb3dzIGJ5IGRlZmF1bHQgaW4gdGhlIHByZXNldCB0aGVtZSlcbkBpZiAkYnNsaWItZGFzaGJvYXJkLWRlc2lnbiB7XG5cbiAgOnJvb3Qge1xuICAgIC0tYnNsaWItZGFzaGJvYXJkLXNpZGViYXItYmc6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTtcbiAgICAtLWJzbGliLWRhc2hib2FyZC1zaWRlYmFyLW1haW4tYmc6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTtcbiAgICAtLWJzbGliLWRhc2hib2FyZC1tYWluLWJnOiByZ2IoMjQ3LCAyNDcsIDI0Nyk7XG4gICAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6IHZhcigtLWJzbGliLWRhc2hib2FyZC1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQsIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpKTtcbiAgICAtLWJzbGliLWRhc2hib2FyZC1jYXJkLWNhcC1iZzogdmFyKC0tI3skcHJlZml4fWJvZHktYmcpO1xuICAgIC0tYnNsaWItZGFzaGJvYXJkLWNhcmQtaGVhZGVyLWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1zZW1pYm9sZH07XG4gICAgLS1ic2xpYi1zaWRlYmFyLWJnOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZyk7XG4gICAgLS1ic2xpYi1zaWRlYmFyLWZnOiB2YXIoLS0jeyRwcmVmaXh9Y29sb3IpO1xuICB9XG5cbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLS1ic2xpYi1kYXNoYm9hcmQtbWFpbi1iZzogcmdiKDIwLCAyMCwgMjQpO1xuICB9XG5cbiAgLmJzbGliLWNhcmQge1xuICAgIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiB2YXIoLS1ic2xpYi1kYXNoYm9hcmQtY2FyZC1jYXAtYmcpO1xuICAgIC5jYXJkLWhlYWRlciwgLmNhcmQtZm9vdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIH1cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJzbGliLWRhc2hib2FyZC1jYXJkLWhlYWRlci1mb250LXdlaWdodCk7XG4gICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2UgZGFzaGJvYXJkIGNsYXNzLi4uXG4gIC5ic2xpYi1wYWdlLWRhc2hib2FyZCxcbiAgLy8gb3Igb2YgZ2xvYmFsIG1haW4gY29udGVudCBhcmVhIGluIGEgcGFnZV9uYXZiYXIoKSB3aXRoIGEgZ2xvYmFsIHNpZGViYXJcbiAgLm1haW46aGFzKC50YWItY29udGVudCA+IC5ic2xpYi1wYWdlLWRhc2hib2FyZC5hY3RpdmUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ic2xpYi1kYXNoYm9hcmQtbWFpbi1iZyk7XG4gICAgLy8gb3Igb2YgbWFpbiBhcmVhIG9mIGEgcGFnZV9zaWRlYmFyKClcbiAgICAtLV9tYWluLWJnOiB2YXIoLS1ic2xpYi1kYXNoYm9hcmQtbWFpbi1iZyk7XG4gIH1cblxuICAuYnNsaWItcGFnZS1uYXZiYXIsIC5ic2xpYi1wYWdlLWRhc2hib2FyZCB7XG4gICAgPiAubmF2YmFyIHtcbiAgICAgIC0tYnNsaWItbmF2YmFyLWRlZmF1bHQtYmc6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTtcbiAgICAgIC0tYnNsaWItbmF2YmFyLWludmVyc2UtYmc6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgICB9XG5cbiAgICA+IC5uYXZiYXIgKyBkaXYge1xuICAgICAgLy8gU2luY2Ugd2UncmUgdXNpbmcgYSB0cmFuc3BhcmVudCBuYXZiYXIsIHdlIG5lZWQgdG8gKGdlbmVyYWxseSkgYWRkIGEgYm9yZGVyLXRvcFxuICAgICAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAgICAgLy8gQ2FzZSAxOiBwYWdlX25hdmJhcihzaWRlYmFyID0gLi4uKVxuICAgICAgLy8gQ2FzZSAyOiBwYWdlX25hdmJhcihuYXZfcGFuZWwobGF5b3V0X3NpZGViYXIoKSkpXG4gICAgICA+IC5ic2xpYi1zaWRlYmFyLWxheW91dCxcbiAgICAgID4gLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lLmFjdGl2ZS5odG1sLWZpbGwtY29udGFpbmVyID4gLmJzbGliLXNpZGViYXItbGF5b3V0Lmh0bWwtZmlsbC1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50OyAvLyBNYWtlIHN1cmUgd2UgZG9uJ3QgZW5kIHVwIHcvIGEgZG91YmxlIGJvcmRlclxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ic2xpYi1wYWdlLXNpZGViYXIge1xuICAgIC0tYnNsaWItcGFnZS1zaWRlYmFyLXRpdGxlLWJnOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZyk7XG4gICAgLS1ic2xpYi1wYWdlLXNpZGViYXItdGl0bGUtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcblxuICAgIC5ic2xpYi1wYWdlLXRpdGxlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7XG4gICAgfVxuICB9XG59XG5cbi8vIEJ5IGRlZmF1bHQsIG5vbi1hY3RpdmUgLm5hdiBsaW5rcyByZWZsZWN0IHRoZSBwcmltYXJ5IGNvbG9yLiBUaGlzIHN0eWxpbmdcbi8vIHR3ZWFrIGJyaW5ncyB0aGVtIGNsb3NlciB0byBob3cgdGhleSdsbCBhcHBlYXIgaW4gYSBuYXZiYXIuXG4ubmF2LXVuZGVybGluZSB7XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3I6IHJnYmEodmFyKC0tYnMtYm9keS1jb2xvci1yZ2IpLCAwLjY1KTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogcmdiYSh2YXIoLS1icy1ib2R5LWNvbG9yLXJnYiksIDAuOCk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZTogMC44NzVyZW07XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiB0aGUgbmF2YmFyIGlzIGNvbGxhcHNlZCAob3IgY29sbGFwc2luZykgb24gbW9iaWxlLCByZW1vdmUgdGhlXG4vLyAubmF2LXVuZGVybGluZSBib3JkZXJcbi5uYXZiYXItY29sbGFwc2Uuc2hvdywgLm5hdmJhci1jb2xsYXBzZS5jb2xsYXBzaW5nIHtcbiAgLm5hdi11bmRlcmxpbmUge1xuICAgIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAwO1xuICAgIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAwO1xuICB9XG59XG5cbi8vIEFsaWduIHRoZSBib3R0b20gb2YgLm5hdi1saW5rIHcvIHRoZSBib3R0b20gb2YgdGhlIG5hdmJhciAod2hlbiB1bmRlcmxpbmVkKVxuLm5hdmJhciAubmF2LXVuZGVybGluZSAubmF2LWxpbmsge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteSwgI3skbmF2YmFyLXBhZGRpbmcteX0pICogMik7XG4gIG1hcmdpbi1ib3R0b206ICBjYWxjKHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15LCAjeyRuYXZiYXItcGFkZGluZy15fSkgKiAtMSk7XG59XG5cbi8vIEZvciB2YWx1ZV9ib3goKSwgYXBwbHkgYSBncmFkaWVudCB0byB0aGUgaWNvbiAoYnkgZGVmYXVsdClcbiRpY29uLWNsYXNzZXM6IChcImJpXCIsIFwiZmFcIiwgXCJmYXNcIiwgXCJmYXJcIiwgXCJmYWJcIiwgXCJtYXRlcmlhbC1pY29uc1wiKSAhZGVmYXVsdDtcbi5ic2xpYi12YWx1ZS1ib3guZGVmYXVsdCAudmFsdWUtYm94LXNob3djYXNlIHtcbiAgPiBpIHtcbiAgICBAZWFjaCAkaWNvbi1jbGFzcyBpbiAkaWNvbi1jbGFzc2VzIHtcbiAgICAgICYuI3skaWNvbi1jbGFzc30ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQwZGVnLCAkYmx1ZSAzNiUsICRwdXJwbGUgMTgwJSkgJGJsdWU7XG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gc3ZnIHtcbiAgICBAZWFjaCAkaWNvbi1jbGFzcyBpbiAkaWNvbi1jbGFzc2VzIHtcbiAgICAgICYuI3skaWNvbi1jbGFzc30ge1xuICAgICAgICAvLyBSZXF1aXJlcyBpY29uLWdyYWRpZW50LnN2ZyB3aGljaCBpcyBhZGRlZCBpbiB0aGUgdmFsdWVfYm94KCkgZGVwZW5kZW5jeVxuICAgICAgICBmaWxsOiB1cmwoJyNic2xpYi0tLWljb24tZ3JhZGllbnQnKSAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGb3IgdmFsdWVfYm94KCksIGltcHJvdmUgY29udHJhc3Qgb2YgdGV4dCBjb2xvcnNcbi5ic2xpYi12YWx1ZS1ib3gge1xuICAkY3lhbjogIzAyODA5NzsgLy8gQ29udHJhc3QgNC42M1xuICAkd2FybmluZzogI0E4NzYwMDsgLy8gQ29udHJhc3QgNCAob2theSBmb3IgMTZweCsgdGV4dClcblxuICAmLnRleHQtaW5mbyB7XG4gICAgJiwgJi50ZXh0LWN5YW4ge1xuICAgICAgLS1ic2xpYi1jb2xvci1mZzogJGN5YW4gIWltcG9ydGFudDtcbiAgICB9XG4gICAgY29sb3I6ICRjeWFuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnRleHQtbGlnaHQge1xuICAgIC0tYnNsaWItY29sb3ItZmc6ICRncmF5LTYwMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi50ZXh0LXdhcm5pbmcge1xuICAgICYsICYudGV4dC15ZWxsb3cge1xuICAgICAgLS1ic2xpYi1jb2xvci1mZzogJHdhcm5pbmcgIWltcG9ydGFudDtcbiAgICB9XG4gICAgY29sb3I6ICR3YXJuaW5nICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnRleHQtdGVhbC50ZXh0LXRlYWwge1xuICAgIC0tYnNsaWItY29sb3ItZmc6ICMwMDg1NTg7IC8vIENvbnRyYXN0IDQuNjdcbiAgfVxufVxuXG4vLyBNb2RhbHNcbi5tb2RhbC1ib2R5LCAubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4jc2hpbnktbW9kYWwtd3JhcHBlcjpoYXMoIH4gLm1vZGFsLWJhY2tkcm9wKSAubW9kYWwge1xuICAvLyBCbHVyIHRoZSBiYWNrZ3JvdW5kIHdoZW4gdGhlIG1vZGFsIGhhcyBhIGJhY2tkcm9wXG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigycHgpO1xufVxuXG4vLyBQcm9ncmVzcyBCYXJzICYgTm90aWZpY2F0aW9uc1xuLy8gRklYTUU6IFVzZSBjc3MgbGF5ZXJzIChkeW5hbWljIHRoZW1laW5nIGlzc3VlKVxuI3NoaW55LW5vdGlmaWNhdGlvbi1wYW5lbCNzaGlueS1ub3RpZmljYXRpb24tcGFuZWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogY2FsYyh2YXIoLS1ic2xpYi1zcGFjZXIsIDFyZW0pIC8gMik7XG4gIHJpZ2h0OiBjYWxjKHZhcigtLWJzbGliLXNwYWNlciwgMXJlbSkgLyAyKTtcbiAgd2lkdGg6IDQ1MHB4O1xuICB6LWluZGV4OiAkemluZGV4LXRvYXN0O1xufVxuXG4ucHJvZ3Jlc3MtbWVzc2FnZSB7XG4gIG1hcmdpbi1yaWdodDogLjZyZW07XG59XG5cbi8vIEZJWE1FOiBVc2UgY3NzIGxheWVycyAoZHluYW1pYyB0aGVtZWluZyBpc3N1ZSlcbi5zaGlueS1ub3RpZmljYXRpb24uc2hpbnktbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjk2O1xuICBwYWRkaW5nOiAycmVtO1xuICBtYXJnaW46IHZhcigtLWJzbGliLXNwYWNlciwgMXJlbSk7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KTtcbiAgYm9yZGVyLXJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG5cbiAgLnNoaW55LW5vdGlmaWNhdGlvbi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgd2lkdGg6IDJyZW07XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IHVuc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLnNoaW55LW5vdGlmaWNhdGlvbi1jb250ZW50LXRleHQgOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsCgkJIi5pcnMuaXJzLS1zaGlueSB7XG4gICRpcnMtc2hpbnktc3BhY2U6IDNweCAhZGVmYXVsdDtcblxuICBtYXJnaW4tdG9wOiAkaXJzLXNoaW55LXNwYWNlO1xuXG4gIC5pcnMtbWluLFxuICAuaXJzLW1heCxcbiAgLmlycy1mcm9tLFxuICAuaXJzLXRvLFxuICAuaXJzLXNpbmdsZSB7XG4gICAgcGFkZGluZzogJGlycy1zaGlueS1zcGFjZSAkaXJzLXNoaW55LXNwYWNlICogMjtcbiAgICB0b3A6IC0kaXJzLXNoaW55LXNwYWNlO1xuICB9XG5cbiAgLmlycy1oYW5kbGUge1xuICAgIHRvcDogJHRvcCAtICgkaGFuZGxlX2hlaWdodCAvIDIpICsgKCRsaW5lX2hlaWdodCAvIDIpO1xuICB9XG5cbiAgLmlycy1iYXIge1xuICAgIHRvcDogMzFweDtcbiAgICBoZWlnaHQ6ICRpcnMtc2hpbnktc3BhY2U7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmlycy1saW5lIHtcbiAgICAvLyBOT1RFOiBub3Qgc3VyZSB3ZSBuZWVkIHRoaXMgYm9yZGVyIHJhZGl1c1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgfVxuXG4gIC5pcnMtZ3JpZC1wb2wge1xuICAgIGhlaWdodDogNnB4O1xuICB9XG5cbiAgLmlycy1ncmlkLXRleHQge1xuICAgIGJvdHRvbTogOHB4O1xuICB9XG5cbiAgLy8gbWFrZSBoYW5kbGVzIGtleWJvYXJkIGFjY2Vzc2libGVcbiAgLy9cbiAgLy8gV2UgbWlnaHQgbmVlZCBzb21lIGphdmFzY3JpcHQgc2hlbmFuaWdhbnMgdG8gbWFrZSB0aGUgaGFuZGxlcyBvbiB0aGUgc2xpZGVyXG4gIC8vIGtleWJvYXJkIGFjY2Vzc2libGUuICBJIHRoaW5rIHdlIGNhbiBkbyB0aGlzIGJ5IGFzc2lnbmluZyBpdCBhIHJvbGUgYW5kIGFuZFxuICAvLyBhIHRhYmluZGV4PyBjaGVjayBvdXQgdGhpcyBhcnRpY2xlOlxuICAvLyBodHRwczovL3d3dy40NTZiZXJlYXN0cmVldC5jb20vYXJjaGl2ZS8yMDEzMDIvbWFraW5nX2VsZW1lbnRzX2tleWJvYXJkX2ZvY3VzYWJsZV9hbmRfY2xpY2thYmxlL1xuICAuaXJzLWhhbmRsZTpmb2N1cy12aXNpYmxlLFxuICAuaXJzLWhhbmRsZTphY3RpdmUge1xuICAgIC8vIEZJWE1FXG4gICAgY29sb3I6IHNoYWRlLWNvbG9yKCRoYW5kbGVfY29sb3IsIDMwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUtY29sb3IoJGhhbmRsZV9jb2xvciwgMzAlKTtcbiAgICBib3JkZXItY29sb3I6IHNoYWRlLWNvbG9yKCRoYW5kbGVfY29sb3IsIDMwKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICYgfiAuc2xpZGVyLWFuaW1hdGUtY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLnNsaWRlci1hbmltYXRlLWJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gICYuaXJzLXdpdGgtZ3JpZCB+IC5zbGlkZXItYW5pbWF0ZS1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gIH1cbiAgJjpub3QoLmlycy13aXRoLWdyaWQpIH4gLnNsaWRlci1hbmltYXRlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG4iLAoJCSIvLyBUT0RPOiBNYW55IG9mIHRoZXNlIHJ1bGVzIGNvdWxkIGJlIGFwcGxpZWQgdG8gYWxsIGJzbGliIHRoZW1lc1xuLnRhYmxlLmRhdGFUYWJsZSB7XG4gIC8vIENTUyB2YXJpYWJsZXMgYXJlIHNjb3BlZCB0byBkYXRhdGFibGVzIGluIEJvb3RzdHJhcFxuICAtLWR0LXJvdy1zZWxlY3RlZDogdmFyKC0tYnMtcHJpbWFyeS1yZ2IsIFwiMCwxMjMsMTk0XCIpO1xuICAtLWR0LXJvdy1zZWxlY3RlZC10ZXh0OiB2YXIoLS1icy13aGl0ZS1yZ2IsIFwiMjU1LDI1NSwyNTVcIik7XG4gIC0tZHQtcm93LXNlbGVjdGVkLWxpbms6IHZhcigtLWJzLWxpZ2h0LXJnaCwgXCIyNDgsMjQ4LDI0OFwiKTtcbn1cblxuLy8gTm90ZSBDU1Mgc3BlY2lmaWNpdHkgaGFjayBiZWNhdXNlIERUJ3MgQ1NTIGRlcHMgYXJlIGxvYWRlZCBhZnRlciB0aGUgdGhlbWVcbi50YWJsZS5kYXRhVGFibGUuZGF0YVRhYmxlIHtcbiAgJGNsYXNzLXN0cmlwZTogXCJldmVuXCI7XG4gICRjbGFzcy11bnN0cmlwZWQ6IFwib2RkXCI7XG5cbiAgQGlmICR0YWJsZS1zdHJpcGVkLW9yZGVyID09IG9kZCB7XG4gICAgJGNsYXNzLXN0cmlwZTogXCJvZGRcIjtcbiAgICAkY2xhc3MtdW5zdHJpcGVkOiBcImV2ZW5cIjtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCA+IHRib2R5ID4gdHIuI3skY2xhc3MtdW5zdHJpcGVkfTpub3QoLnNlbGVjdGVkKSA+ICoge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyLiN7JGNsYXNzLXN0cmlwZX06bm90KC5zZWxlY3RlZCkgPiAqIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cblxuICB0Ym9keSB0ZC5hY3RpdmUsXG4gIHRib2R5IHRyLmFjdGl2ZSB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdGFibGUtYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyOm5vdCguc2VsZWN0ZWQpID4gKiB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLWJzLXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG50aGVhZCwgdGJvZHksIHRmb290LCB0ciwgdGQsIHRoIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udGFibGUgPiB0aGVhZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy10YWJsZS1jb2xvcik7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmRhdGF0YWJsZXMge1xuICAvLyBUYWJsZSBwYWdpbmF0aW9uIHJvdyB0d2Vha3NcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciBkaXYuZGF0YVRhYmxlc19pbmZvIHtcbiAgICBwYWRkaW5nLXRvcDogMS42NXJlbTtcbiAgICBmb250LXNpemU6IC45NXJlbTtcbiAgfVxuXG4gIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdpbmF0ZV9idXR0b24gYSB7XG4gICAgZm9udC1zaXplOiAuOTVyZW07XG4gIH1cblxuICAvLyBjcmVhdGUgc3BhY2UgYmV0d2VlbiAnc2hvdyBfX18gZW50cmllcycgYW5kICdzZWFyY2gnIGFib3ZlIHRhYmxlXG4gIC5kYXRhVGFibGVzX2xlbmd0aCwgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC8vIFNjcm9sbCB0aGUgZGF0YSB0YWJsZSBjb250YWluZXIsIG5vdCB0aGUgZW50aXJlIHdyYXBwZXJcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZHQtcm93IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBTdHlsZSB0aGUgbGVuZ3RoIGFuZCBzZWFyY2ggaW5wdXRzXG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoIHNlbGVjdCxcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIgaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4vLyBUT0RPOiBUaGlzIGNvdWxkIGJlIGFwcGxpZWQgbW9yZSBnZW5lcmFsbHkgdmlhIHRoZSBjYXJkIHNjc3Ncbi5ic2xpYi1jYXJkLXRhYmxlLXNtIHtcbiAgJi5ic2xpYi1jYXJkW2RhdGEtZnVsbC1zY3JlZW49XCJmYWxzZVwiXSAuZGF0YXRhYmxlcyAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgICBmb250LXNpemU6IDg1JTtcblxuICAgIC8vIGhpZGUgdGhlIHN1cHBvcnRpbmcgZWxlbWVudHMgd2hlbiBpbnNpZGUgYSBub24tZnVsbC1zY3JlZW4gY2FyZFxuICAgIC5kYXRhVGFibGVzX2xlbmd0aCwgIC8vIHNob3cgX19fIGVudHJpZXNcbiAgICAuZGF0YVRhYmxlc19maWx0ZXIsICAvLyBzZWFyY2hcbiAgICAvLyAuZGF0YVRhYmxlc19pbmZvLCAgICAvLyBzaG93aW5nIDEgdG8gMTAgb2YgMTAwIGVudHJpZXNcbiAgICAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIgoJXSwKCSJuYW1lcyI6IFtdLAoJIm1hcHBpbmdzIjogIkE4R01FLE9BQU8sQ0FBQyxlQUFJLEU5R2ViLEFBQUQsSUFBSyxBQUFDLENBQ04seUJBQXlCLENBQUEsRUFBQyxDQUMxQixtQkFBbUIsQ0FBQSxNQUFDLENBQ3BCLG1CQUFtQixDQUFBLFFBQUMsQ0FDbkIsQXNDeEJDOzs7O0tBSUcsQ0VMSixBQUFELElBQUssRUFDTCxBQUFBLGFBQUMsQ0FBYyxPQUFPLEFBQXJCLENBQXVCLENBUXBCLFNBQXFCLENBQWUsUUFBQyxDQUFyQyxXQUFxQixDQUFlLFFBQUMsQ0FBckMsV0FBcUIsQ0FBZSxRQUFDLENBQXJDLFNBQXFCLENBQWUsUUFBQyxDQUFyQyxRQUFxQixDQUFlLFFBQUMsQ0FBckMsV0FBcUIsQ0FBZSxRQUFDLENBQXJDLFdBQXFCLENBQWUsUUFBQyxDQUFyQyxVQUFxQixDQUFlLFFBQUMsQ0FBckMsU0FBcUIsQ0FBZSxRQUFDLENBQXJDLFNBQXFCLENBQWUs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cURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxhQWxFSyxBQWtFMkUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosbURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxVQWxFRSxBQWtFOEUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosZ0RBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxhQWxFSyxBQWtFMkUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosbURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxZQWxFSSxBQWtFNEUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosa0RBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxXQWxFRyxBQWtFNkUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosaURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxVQWxFRSxBQWtFOEUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosZ0RBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxXQWxFRyxBQWtFNkUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosaURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxXQWxFRyxBQWtFNkUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkIzQlosaURBQThILENtQjJCaEUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxVQWxFRSxBQWtFOEUsQ0FJeEUsaUJBQXlCLENBQW1CLEVBQUMsQ0FHakQsS0FBWSxDbkI3Qlosc0RBQTBJLENtQjZCNUUsVUFBVSxDQUUzRSxBQTNFVCxBQWtFUSxXQWxFRyxDNEVBWCxVQUFVLENBQUUsV0FB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QixDQUM3QixBQWxDTCxBQXdCSSxVQXhCTSxBQXdCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxZQS9CUSxBQStCRCxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxVQXhCTSxBQXdCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxZQS9CUSxBQStCRCxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxRQXhCSSxBQXdCRyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxVQS9CTSxBQStCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxPQXhCRyxBQXdCSSxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxTQS9CSyxBQStCRSxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxVQXhCTSxBQXdCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxZQS9CUSxBQStCRCxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxVQXhCTSxBQXdCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxZQS9CUSxBQStCRCxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxTQXhCSyxBQXdCRSxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxXQS9CTyxBQStCQSxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxRQXhCSSxBQXdCRyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxVQS9CTSxBQStCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXdCSSxRQXhCSSxBQXdCRyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsZ0JBQWdCLENBQUEsS0FBQyxDQUNqQixnQkFBZ0IsQ0FBRSxxQkFBcUIsQ0FDdkMsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQTdCTCxBQStCSSxVQS9CTSxBQStCQyxDQUNMLGdCQUFnQixDQUFBLFFBQUMsQ0FDakIsS0FBSyxDQUFFLHFCQUFxQixDQUM3QixBQWxDTCxBQXVD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 */ \ No newline at end of file diff --git a/shiny/www/shared/ionrangeslider/css/ion.rangeSlider.css b/shiny/www/shared/ionrangeslider/css/ion.rangeSlider.css index 8b98d9058..7fdfc6448 100644 --- a/shiny/www/shared/ionrangeslider/css/ion.rangeSlider.css +++ b/shiny/www/shared/ionrangeslider/css/ion.rangeSlider.css @@ -290,7 +290,6 @@ background-color: transparent; } -/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAic3RkaW4uY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzdGRpbiIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvc2Fzcy11dGlscy9jb2xvci1jb250cmFzdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fdmFyaWFibGVzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZGVmYXVsdHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMtZGFyay5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21hcHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19taXhpbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2NvbG9yLXNjaGVtZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2RlY2xhcmF0aW9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fbWl4aW5zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L2lvbnJhbmdlc2xpZGVyL192YXJpYWJsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvc2hpbnkvd3d3L3NoYXJlZC9pb25yYW5nZXNsaWRlci9zY3NzL3NoaW55LnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL3NoaW55L3d3dy9zaGFyZWQvaW9ucmFuZ2VzbGlkZXIvc2Nzcy9fYmFzZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9zaGlueS93d3cvc2hhcmVkL2lvbnJhbmdlc2xpZGVyL3Njc3MvX21peGlucy5zY3NzIgoJXSwKCSJzb3VyY2VzQ29udGVudCI6IFsKCQkiQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fZnVuY3Rpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9ic2xpYi1zY3NzL2Z1bmN0aW9ucy5zY3NzXCI7XG5cblxuXG4kYnNsaWItcHJlc2V0LXR5cGU6IGJ1aWx0aW47XG4kYnNsaWItcHJlc2V0LW5hbWU6IHNoaW55O1xuJHdlYi1mb250LXBhdGg6IFwiZm9udC5jc3NcIiAhZGVmYXVsdDtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fdmFyaWFibGVzLnNjc3NcIjtcbiRlbmFibGUtY3NzZ3JpZDogdHJ1ZSAhZGVmYXVsdDtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2RlZmF1bHRzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX3ZhcmlhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMtZGFyay5zY3NzXCI7XG4kYm9vdHN0cmFwLXZlcnNpb246IDU7XG4kYnNsaWItcHJlc2V0LW5hbWU6IG51bGwgIWRlZmF1bHQ7XG4kYnNsaWItcHJlc2V0LXR5cGU6IG51bGwgIWRlZmF1bHQ7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19tYXBzLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21peGlucy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L19kZWNsYXJhdGlvbnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L19taXhpbnMuc2Nzc1wiO1xuJGFjY2VudDogJGNvbXBvbmVudC1hY3RpdmUtYmc7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvc2hpbnkvd3d3L3NoYXJlZC9pb25yYW5nZXNsaWRlci9zY3NzL3NoaW55LnNjc3NcIjsiLAoJCSIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sb3JzXG5AZnVuY3Rpb24gdG8tcmdiKCR2YWx1ZSkge1xuICBAcmV0dXJuIHJlZCgkdmFsdWUpLCBncmVlbigkdmFsdWUpLCBibHVlKCR2YWx1ZSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbkBmdW5jdGlvbiByZ2JhLWNzcy12YXIoJGlkZW50aWZpZXIsICR0YXJnZXQpIHtcbiAgQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwiYmdcIiB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1iZy1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH0gQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwidGV4dFwiIHtcbiAgICBAcmV0dXJuIHJnYmEodmFyKC0tI3skcHJlZml4fSN7JGlkZW50aWZpZXJ9LWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH0jeyR0YXJnZXR9LW9wYWNpdHkpKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIG1hcC1sb29wKCRtYXAsICRmdW5jLCAkYXJncy4uLikge1xuICAkX21hcDogKCk7XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIC8vIGFsbG93IHRvIHBhc3MgdGhlICRrZXkgYW5kICR2YWx1ZSBvZiB0aGUgbWFwIGFzIGFuIGZ1bmN0aW9uIGFyZ3VtZW50XG4gICAgJF9hcmdzOiAoKTtcbiAgICBAZWFjaCAkYXJnIGluICRhcmdzIHtcbiAgICAgICRfYXJnczogYXBwZW5kKCRfYXJncywgaWYoJGFyZyA9PSBcIiRrZXlcIiwgJGtleSwgaWYoJGFyZyA9PSBcIiR2YWx1ZVwiLCAkdmFsdWUsICRhcmcpKSk7XG4gICAgfVxuXG4gICAgJF9tYXA6IG1hcC1tZXJnZSgkX21hcCwgKCRrZXk6IGNhbGwoZ2V0LWZ1bmN0aW9uKCRmdW5jKSwgJF9hcmdzLi4uKSkpO1xuICB9XG5cbiAgQHJldHVybiAkX21hcDtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuXG5AZnVuY3Rpb24gdmFyaWZ5KCRsaXN0KSB7XG4gICRyZXN1bHQ6IG51bGw7XG4gIEBlYWNoICRlbnRyeSBpbiAkbGlzdCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIHZhcigtLSN7JHByZWZpeH0jeyRlbnRyeX0pLCBzcGFjZSk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBJbnRlcm5hbCBCb290c3RyYXAgZnVuY3Rpb24gdG8gdHVybiBtYXBzIGludG8gaXRzIG5lZ2F0aXZlIHZhcmlhbnQuXG4vLyBJdCBwcmVmaXhlcyB0aGUga2V5cyB3aXRoIGBuYCBhbmQgbWFrZXMgdGhlIHZhbHVlIG5lZ2F0aXZlLlxuQGZ1bmN0aW9uIG5lZ2F0aXZpZnktbWFwKCRtYXApIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgJGtleSAhPSAwIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoXCJuXCIgKyAka2V5OiAoLSR2YWx1ZSkpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBHZXQgbXVsdGlwbGUga2V5cyBmcm9tIGEgc2FzcyBtYXBcbkBmdW5jdGlvbiBtYXAtZ2V0LW11bHRpcGxlKCRtYXAsICR2YWx1ZXMpIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgKGluZGV4KCR2YWx1ZXMsICRrZXkpICE9IG51bGwpIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGtleTogJHZhbHVlKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gTWVyZ2UgbXVsdGlwbGUgbWFwc1xuQGZ1bmN0aW9uIG1hcC1tZXJnZS1tdWx0aXBsZSgkbWFwcy4uLikge1xuICAkbWVyZ2VkLW1hcHM6ICgpO1xuXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgICRtZXJnZWQtbWFwczogbWFwLW1lcmdlKCRtZXJnZWQtbWFwcywgJG1hcCk7XG4gIH1cbiAgQHJldHVybiAkbWVyZ2VkLW1hcHM7XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzAxNjhcblxuLy8gQSBsaXN0IG9mIHByZS1jYWxjdWxhdGVkIG51bWJlcnMgb2YgcG93KGRpdmlkZSgoZGl2aWRlKCR2YWx1ZSwgMjU1KSArIC4wNTUpLCAxLjA1NSksIDIuNCkuIChmcm9tIDAgdG8gMjU1KVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHQsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbiRfbHVtaW5hbmNlLWxpc3Q6IC4wMDA4IC4wMDEgLjAwMTEgLjAwMTMgLjAwMTUgLjAwMTcgLjAwMiAuMDAyMiAuMDAyNSAuMDAyNyAuMDAzIC4wMDMzIC4wMDM3IC4wMDQgLjAwNDQgLjAwNDggLjAwNTIgLjAwNTYgLjAwNiAuMDA2NSAuMDA3IC4wMDc1IC4wMDggLjAwODYgLjAwOTEgLjAwOTcgLjAxMDMgLjAxMSAuMDExNiAuMDEyMyAuMDEzIC4wMTM3IC4wMTQ0IC4wMTUyIC4wMTYgLjAxNjggLjAxNzYgLjAxODUgLjAxOTQgLjAyMDMgLjAyMTIgLjAyMjIgLjAyMzIgLjAyNDIgLjAyNTIgLjAyNjIgLjAyNzMgLjAyODQgLjAyOTYgLjAzMDcgLjAzMTkgLjAzMzEgLjAzNDMgLjAzNTYgLjAzNjkgLjAzODIgLjAzOTUgLjA0MDkgLjA0MjMgLjA0MzcgLjA0NTIgLjA0NjcgLjA0ODIgLjA0OTcgLjA1MTMgLjA1MjkgLjA1NDUgLjA1NjEgLjA1NzggLjA1OTUgLjA2MTIgLjA2MyAuMDY0OCAuMDY2NiAuMDY4NSAuMDcwNCAuMDcyMyAuMDc0MiAuMDc2MiAuMDc4MiAuMDgwMiAuMDgyMyAuMDg0NCAuMDg2NSAuMDg4NyAuMDkwOCAuMDkzMSAuMDk1MyAuMDk3NiAuMDk5OSAuMTAyMiAuMTA0NiAuMTA3IC4xMDk1IC4xMTE5IC4xMTQ0IC4xMTcgLjExOTUgLjEyMjEgLjEyNDggLjEyNzQgLjEzMDEgLjEzMjkgLjEzNTYgLjEzODQgLjE0MTMgLjE0NDEgLjE0NyAuMTUgLjE1MjkgLjE1NTkgLjE1OSAuMTYyIC4xNjUxIC4xNjgzIC4xNzE0IC4xNzQ2IC4xNzc5IC4xODEyIC4xODQ1IC4xODc4IC4xOTEyIC4xOTQ2IC4xOTgxIC4yMDE2IC4yMDUxIC4yMDg2IC4yMTIyIC4yMTU5IC4yMTk1IC4yMjMyIC4yMjcgLjIzMDcgLjIzNDYgLjIzODQgLjI0MjMgLjI0NjIgLjI1MDIgLjI1NDIgLjI1ODIgLjI2MjMgLjI2NjQgLjI3MDUgLjI3NDcgLjI3ODkgLjI4MzEgLjI4NzQgLjI5MTggLjI5NjEgLjMwMDUgLjMwNSAuMzA5NSAuMzE0IC4zMTg1IC4zMjMxIC4zMjc4IC4zMzI1IC4zMzcyIC4zNDE5IC4zNDY3IC4zNTE1IC4zNTY0IC4zNjEzIC4zNjYzIC4zNzEyIC4zNzYzIC4zODEzIC4zODY0IC4zOTE2IC4zOTY4IC40MDIgLjQwNzIgLjQxMjUgLjQxNzkgLjQyMzMgLjQyODcgLjQzNDIgLjQzOTcgLjQ0NTIgLjQ1MDggLjQ1NjQgLjQ2MjEgLjQ2NzggLjQ3MzUgLjQ3OTMgLjQ4NTEgLjQ5MSAuNDk2OSAuNTAyOSAuNTA4OSAuNTE0OSAuNTIxIC41MjcxIC41MzMzIC41Mzk1IC41NDU3IC41NTIgLjU1ODMgLjU2NDcgLjU3MTEgLjU3NzYgLjU4NDEgLjU5MDYgLjU5NzIgLjYwMzggLjYxMDUgLjYxNzIgLjYyNCAuNjMwOCAuNjM3NiAuNjQ0NSAuNjUxNCAuNjU4NCAuNjY1NCAuNjcyNCAuNjc5NSAuNjg2NyAuNjkzOSAuNzAxMSAuNzA4NCAuNzE1NyAuNzIzMSAuNzMwNSAuNzM3OSAuNzQ1NCAuNzUyOSAuNzYwNSAuNzY4MiAuNzc1OCAuNzgzNSAuNzkxMyAuNzk5MSAuODA3IC44MTQ4IC44MjI4IC44MzA4IC44Mzg4IC44NDY5IC44NTUgLjg2MzIgLjg3MTQgLjg3OTYgLjg4NzkgLjg5NjMgLjkwNDcgLjkxMzEgLjkyMTYgLjkzMDEgLjkzODcgLjk0NzMgLjk1NiAuOTY0NyAuOTczNCAuOTgyMyAuOTkxMSAxO1xuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQsICRjb2xvci1jb250cmFzdC1kYXJrOiAkY29sb3ItY29udHJhc3QtZGFyaywgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRtaW4tY29udHJhc3QtcmF0aW86ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgJGZvcmVncm91bmRzOiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgJG1heC1yYXRpbzogMDtcbiAgJG1heC1yYXRpby1jb2xvcjogbnVsbDtcblxuICBAZWFjaCAkY29sb3IgaW4gJGZvcmVncm91bmRzIHtcbiAgICAkY29udHJhc3QtcmF0aW86IGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICAgIEBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWluLWNvbnRyYXN0LXJhdGlvIHtcbiAgICAgIEByZXR1cm4gJGNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1heC1yYXRpbyB7XG4gICAgICAkbWF4LXJhdGlvOiAkY29udHJhc3QtcmF0aW87XG4gICAgICAkbWF4LXJhdGlvLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgQHdhcm4gXCJGb3VuZCBubyBjb2xvciBsZWFkaW5nIHRvICN7JG1pbi1jb250cmFzdC1yYXRpb306MSBjb250cmFzdCByYXRpbyBhZ2FpbnN0ICN7JGJhY2tncm91bmR9Li4uXCI7XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsIGRpdmlkZSgkbDEgKyAuMDUsICRsMiArIC4wNSksIGRpdmlkZSgkbDIgKyAuMDUsICRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMSByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRy8jZGZuLXJlbGF0aXZlLWx1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNkZm4tY29udHJhc3QtcmF0aW9cbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZihkaXZpZGUoJHZhbHVlLCAyNTUpIDwgLjA0MDQ1LCBkaXZpZGUoZGl2aWRlKCR2YWx1ZSwgMjU1KSwgMTIuOTIpLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCUpO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItZnVuY3Rpb25zXG4vLyBUaW50IGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggd2hpdGVcbkBmdW5jdGlvbiB0aW50LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCBibGFja1xuQGZ1bmN0aW9uIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgdGhlIGNvbG9yIGlmIHRoZSB3ZWlnaHQgaXMgcG9zaXRpdmUsIGVsc2UgdGludCBpdFxuQGZ1bmN0aW9uIHNoaWZ0LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIGlmKCR3ZWlnaHQgPiAwLCBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpLCB0aW50LWNvbG9yKCRjb2xvciwgLSR3ZWlnaHQpKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItZnVuY3Rpb25zXG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsCgkJIi8vIGNvbG9yLWNvbnRyYXN0KCkgd2FzIGludHJvZHVjZWQgaW4gQm9vdHN0cmFwIDUuXG4vLyBXZSBpbmNsdWRlIG91ciBvd24gdmVyc2lvbiBmb3IgYSBmZXcgcmVhc29uczpcbi8vIDEuIEVhc2lseSB0dXJuIG9mZiB3YXJuaW5ncyBvcHRpb25zKGJzbGliLmNvbG9yX2NvbnRyYXN0X3dhcm5pbmdzPUYpXG4vLyAyLiBBbGxvdyBCb290c3RyYXAgMyAmIDQgdG8gdXNlIGNvbG9yLWNvbnRyYXN0KCkgaW4gdmFyaWFibGUgZGVmaW5pdGlvbnNcbi8vIDMuIEFsbG93IEJvb3RzdHJhcCAzICYgNCB0byB1c2UgYnNfZ2V0X2NvbnRyYXN0KClcblxuLy8gQWxzbyBub3RlIHRoYXQgY29sb3ItY29udHJhc3QoKSBsaXZlcyBpbiBzYXNzLXV0aWxzIHNpbmNlIHByb2plY3RzIGxpa2UgUXVhcnRvXG4vLyBhbmQgZmxleGRhc2hib2FyZCBjdXJyZW50bHkgYXNzdW1lIGl0IGV4aXN0cyB0aGVyZS4uLi5cbkBpbXBvcnQgXCIuLi9zYXNzLXV0aWxzL2NvbG9yLWNvbnRyYXN0LnNjc3NcIjtcblxuXG5AZnVuY3Rpb24gaXMtY3NzLXZhcmlhYmxlKCR4KSB7XG4gIEBpZiAodHlwZS1vZigkeCkgIT0gc3RyaW5nKSB7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHgsIDEsIDYpID09ICd2YXIoLS0nO1xuICB9XG59XG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQ29sb3IgY29udHJhc3RpbmcgKGJhY2twb3J0ZWQgdG8gQlM0IGZyb20gQlM1KVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwMTY4XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBBIGxpc3Qgb2YgcHJlLWNhbGN1bGF0ZWQgbnVtYmVycyBvZiBwb3coZGl2aWRlKChkaXZpZGUoJHZhbHVlLCAyNTUpICsgLjA1NSksIDEuMDU1KSwgMi40KS4gKGZyb20gMCB0byAyNTUpXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuJF9sdW1pbmFuY2UtbGlzdDogLjAwMDggLjAwMSAuMDAxMSAuMDAxMyAuMDAxNSAuMDAxNyAuMDAyIC4wMDIyIC4wMDI1IC4wMDI3IC4wMDMgLjAwMzMgLjAwMzcgLjAwNCAuMDA0NCAuMDA0OCAuMDA1MiAuMDA1NiAuMDA2IC4wMDY1IC4wMDcgLjAwNzUgLjAwOCAuMDA4NiAuMDA5MSAuMDA5NyAuMDEwMyAuMDExIC4wMTE2IC4wMTIzIC4wMTMgLjAxMzcgLjAxNDQgLjAxNTIgLjAxNiAuMDE2OCAuMDE3NiAuMDE4NSAuMDE5NCAuMDIwMyAuMDIxMiAuMDIyMiAuMDIzMiAuMDI0MiAuMDI1MiAuMDI2MiAuMDI3MyAuMDI4NCAuMDI5NiAuMDMwNyAuMDMxOSAuMDMzMSAuMDM0MyAuMDM1NiAuMDM2OSAuMDM4MiAuMDM5NSAuMDQwOSAuMDQyMyAuMDQzNyAuMDQ1MiAuMDQ2NyAuMDQ4MiAuMDQ5NyAuMDUxMyAuMDUyOSAuMDU0NSAuMDU2MSAuMDU3OCAuMDU5NSAuMDYxMiAuMDYzIC4wNjQ4IC4wNjY2IC4wNjg1IC4wNzA0IC4wNzIzIC4wNzQyIC4wNzYyIC4wNzgyIC4wODAyIC4wODIzIC4wODQ0IC4wODY1IC4wODg3IC4wOTA4IC4wOTMxIC4wOTUzIC4wOTc2IC4wOTk5IC4xMDIyIC4xMDQ2IC4xMDcgLjEwOTUgLjExMTkgLjExNDQgLjExNyAuMTE5NSAuMTIyMSAuMTI0OCAuMTI3NCAuMTMwMSAuMTMyOSAuMTM1NiAuMTM4NCAuMTQxMyAuMTQ0MSAuMTQ3IC4xNSAuMTUyOSAuMTU1OSAuMTU5IC4xNjIgLjE2NTEgLjE2ODMgLjE3MTQgLjE3NDYgLjE3NzkgLjE4MTIgLjE4NDUgLjE4NzggLjE5MTIgLjE5NDYgLjE5ODEgLjIwMTYgLjIwNTEgLjIwODYgLjIxMjIgLjIxNTkgLjIxOTUgLjIyMzIgLjIyNyAuMjMwNyAuMjM0NiAuMjM4NCAuMjQyMyAuMjQ2MiAuMjUwMiAuMjU0MiAuMjU4MiAuMjYyMyAuMjY2NCAuMjcwNSAuMjc0NyAuMjc4OSAuMjgzMSAuMjg3NCAuMjkxOCAuMjk2MSAuMzAwNSAuMzA1IC4zMDk1IC4zMTQgLjMxODUgLjMyMzEgLjMyNzggLjMzMjUgLjMzNzIgLjM0MTkgLjM0NjcgLjM1MTUgLjM1NjQgLjM2MTMgLjM2NjMgLjM3MTIgLjM3NjMgLjM4MTMgLjM4NjQgLjM5MTYgLjM5NjggLjQwMiAuNDA3MiAuNDEyNSAuNDE3OSAuNDIzMyAuNDI4NyAuNDM0MiAuNDM5NyAuNDQ1MiAuNDUwOCAuNDU2NCAuNDYyMSAuNDY3OCAuNDczNSAuNDc5MyAuNDg1MSAuNDkxIC40OTY5IC41MDI5IC41MDg5IC41MTQ5IC41MjEgLjUyNzEgLjUzMzMgLjUzOTUgLjU0NTcgLjU1MiAuNTU4MyAuNTY0NyAuNTcxMSAuNTc3NiAuNTg0MSAuNTkwNiAuNTk3MiAuNjAzOCAuNjEwNSAuNjE3MiAuNjI0IC42MzA4IC42Mzc2IC42NDQ1IC42NTE0IC42NTg0IC42NjU0IC42NzI0IC42Nzk1IC42ODY3IC42OTM5IC43MDExIC43MDg0IC43MTU3IC43MjMxIC43MzA1IC43Mzc5IC43NDU0IC43NTI5IC43NjA1IC43NjgyIC43NzU4IC43ODM1IC43OTEzIC43OTkxIC44MDcgLjgxNDggLjgyMjggLjgzMDggLjgzODggLjg0NjkgLjg1NSAuODYzMiAuODcxNCAuODc5NiAuODg3OSAuODk2MyAuOTA0NyAuOTEzMSAuOTIxNiAuOTMwMSAuOTM4NyAuOTQ3MyAuOTU2IC45NjQ3IC45NzM0IC45ODIzIC45OTExIDE7XG5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCwgJGZvcmVncm91bmRzOiBudWxsKSB7XG5cbiAgLy8gVGhlc2UgdmFyaWFibGVzIHNob3VsZCBiZSBkZWZpbmVkIGluIF92YXJpYWJsZXMuc2NzcywgYnV0IHdlIGFsc29cbiAgLy8gZGVmaW5lIHRoZW0gaGVyZSBzbyB0aGF0IDNyZCBwYXJ0eSBsaWJzIGNhbiB1c2UgaWYgdGhleSB3YW50XG4gIC8vIHdpdGhvdXQgcG9sbHV0aW5nIHRoZSBnbG9iYWwgbmFtZXNwYWNlXG4gICRibGFjazogIzAwMCAhZGVmYXVsdDtcbiAgJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuICAkY29sb3ItY29udHJhc3QtZGFyazogJGJsYWNrICFkZWZhdWx0O1xuICAkY29sb3ItY29udHJhc3QtbGlnaHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiAgJG1pbi1jb250cmFzdC1yYXRpbzogMyAhZGVmYXVsdDtcblxuICBAaWYgJGZvcmVncm91bmRzID09IG51bGwge1xuICAgICRmb3JlZ3JvdW5kczogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gIH0gQGVsc2Uge1xuICAgICRmb3JlZ3JvdW5kczogJGZvcmVncm91bmRzLCAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgfVxuXG4gICRtYXgtcmF0aW86IDA7XG4gICRtYXgtcmF0aW8tY29sb3I6IG51bGw7XG5cbiAgQGVhY2ggJGNvbG9yIGluICRmb3JlZ3JvdW5kcyB7XG4gICAgJGNvbnRyYXN0LXJhdGlvOiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgICBAaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1pbi1jb250cmFzdC1yYXRpbyB7XG4gICAgICBAcmV0dXJuICRjb2xvcjtcbiAgICB9IEBlbHNlIGlmICRjb250cmFzdC1yYXRpbyA+ICRtYXgtcmF0aW8ge1xuICAgICAgJG1heC1yYXRpbzogJGNvbnRyYXN0LXJhdGlvO1xuICAgICAgJG1heC1yYXRpby1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICRjb2xvci1jb250cmFzdC13YXJuaW5nczogZmFsc2UgIWRlZmF1bHQ7XG4gIEBpZiAkY29sb3ItY29udHJhc3Qtd2FybmluZ3Mge1xuICAgIEB3YXJuIFwiRm91bmQgbm8gY29sb3IgbGVhZGluZyB0byAjeyRtaW4tY29udHJhc3QtcmF0aW99OjEgY29udHJhc3QgcmF0aW8gYWdhaW5zdCAjeyRiYWNrZ3JvdW5kfS4uLlwiO1xuICB9XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsIGRpdmlkZSgkbDEgKyAuMDUsICRsMiArIC4wNSksIGRpdmlkZSgkbDIgKyAuMDUsICRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMCByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvV0FJL0dML3dpa2kvUmVsYXRpdmVfbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHNcbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZihkaXZpZGUoJHZhbHVlLCAyNTUpIDwgLjA0MDQ1LCBkaXZpZGUoZGl2aWRlKCR2YWx1ZSwgMjU1KSwgMTIuOTIpLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCUpO1xufVxuXG4vLyBBZGRlZCBpbiBCUzUgYXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIFxcIG9wZXJhdG9yLCB3aGljaFxuLy8gdGhyb3dzIHdhcm5pbmdzIGluIERhcnQgU2Fzc1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzQyNDVcbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLAoJCSIkYmx1ZTogIzAwN2JjMiAhZGVmYXVsdDtcbiRpbmRpZ286ICM0YjAwYzEgIWRlZmF1bHQ7XG4kcHVycGxlOiAjNzQxNDljICFkZWZhdWx0O1xuJHBpbms6ICNiZjAwN2YgIWRlZmF1bHQ7XG4kcmVkOiAjYzEwMDAwICFkZWZhdWx0O1xuJG9yYW5nZTogI2Y0NTEwMCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICNmOWI5MjggIWRlZmF1bHQ7XG4kZ3JlZW46ICMwMDg5MWEgIWRlZmF1bHQ7XG4kdGVhbDogIzAwYmY3ZiAhZGVmYXVsdDtcbiRjeWFuOiAjMDNjN2U4ICFkZWZhdWx0O1xuJHdoaXRlOiAjZmZmZmZmICFkZWZhdWx0O1xuXG4kZ3JheTogIzYwNjA2MCAhZGVmYXVsdDtcbiRncmF5LWRhcms6ICMzMDMwMzAgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY4ZjggIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZGQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICM4RDk1OUUgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM3MDc3ODIgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0ODUwNUYgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNBNDYgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMxRDFGMjEgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0OiAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kcHJpbWFyeTogJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAjNDA0MDQwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICMyMDIwMjAgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXJnYjogMjIyLCAyMjYsIDIzMCAhZGVmYXVsdDtcbiRwcmltYXJ5LXJnYjogMCwgMTIzLCAxOTQgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXJnYjogNjQsIDY0LCA2NCAhZGVmYXVsdDtcbiRzdWNjZXNzLXJnYjogMCwgMTM3LCAyNiAhZGVmYXVsdDtcbiRpbmZvLXJnYjogMywgMTk5LCAyMzIgIWRlZmF1bHQ7XG4kd2FybmluZy1yZ2I6IDI0OSwgMTg1LCA0MCAhZGVmYXVsdDtcbiRkYW5nZXItcmdiOiAxOTMsIDAsIDAgIWRlZmF1bHQ7XG4kbGlnaHQtcmdiOiAyNDgsIDI0OCwgMjQ4ICFkZWZhdWx0O1xuJGRhcmstcmdiOiAzMiwgMzIsIDMyICFkZWZhdWx0O1xuJHdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NSAhZGVmYXVsdDtcbiRibGFjay1yZ2I6IDAsIDAsIDAgIWRlZmF1bHQ7XG4kYm9keS1jb2xvci1yZ2I6IDUyLCA1OCwgNzAgIWRlZmF1bHQ7XG4kYm9keS1iZy1yZ2I6IDI1NSwgMjU1LCAyNTUgIWRlZmF1bHQ7XG5cbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KFxuICAxODBkZWcsXG4gIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksXG4gIHJnYmEoMjU1LCAyNTUsIDI1NSwgMClcbikgIWRlZmF1bHQ7XG5cbiRib2R5LWNvbG9yOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogJHdoaXRlICFkZWZhdWx0O1xuXG4kcHJlZml4OiBicy0gIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4kZm9udC1mYW1pbHktYmFzZTogXCJPcGVuIFNhbnNcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IFwiU291cmNlIENvZGUgUHJvXCIsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2VcdCFkZWZhdWx0O1xuXG4kcm9vdC1mb250LXNpemU6IDE4cHggIWRlZmF1bHQ7XG4kYm9keS1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kaDEtZm9udC1zaXplOiAyLjFyZW0gIWRlZmF1bHQ7XG5cbiRib2R5LWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDQwMCAhZGVmYXVsdDtcblxuLy8gU3BhY2luZ1xuJGJzbGliLXNwYWNlcjogMS41cmVtICFkZWZhdWx0O1xuJGhyLW1hcmdpbi15OiAycmVtICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6IDAuNjZyZW0gIWRlZmF1bHQ7XG5cbi8vIElucHV0c1xuJGlucHV0LWJ0bi1mb250LXNpemU6IDE1cHggIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvbnNcbiRidG4tZm9udC13ZWlnaHQ6IDUwMCAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAwLjc1ZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogMmVtICFkZWZhdWx0O1xuXG4vLyBGb3JtIGNvbnRyb2xzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogMS4yZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAwLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogJGdyYXktNjAwICFkZWZhdWx0O1xuXG4vLyBCb3JkZXJzXG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gRGVmYXVsdHMgdG8gJGdyYXk3MDAsIG9mIHdoaWNoIHdlJ3ZlIHNldCB0byBhIGJsdWVpc2gtZ3JheSwgd2hpY2ggbG9va3MgYSBiaXQgd2VpcmQuLi5cbi8vIFdlIGNvdWxkIGdvIGZvcndhcmQgd2l0aCB0aGUgYmx1ZS1pc2ggZ3JheSwgYnV0IGlmIHdlIGRvLCB3ZSdsbCB3YW50IHRvIGFsc28gbWFrZVxuLy8gJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrIGEgYml0IG1vcmUgYmx1ZWlzaFxuJGJvcmRlci1jb2xvci1kYXJrOiAjNDk1MDU3ICFkZWZhdWx0O1xuXG4vLyBUYWJsZXNcbiR0YWJsZS1zdHJpcGVkLWJnOiByZ2JhKCRwcmltYXJ5LCAwLjA2KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogcmdiYSgkcHJpbWFyeSwgMC4xKSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4vLyBCb3ggU2hhZG93c1xuLy8gPT4gVGhlc2UgYXJlIHNoaW55LXByZXNldC1zcGVjaWZpYywgaG9waW5nIEJvb3RzdHJhcCBhZGRzIHNvbWV0aGluZyBsaWtlIHRoaXNcbiRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYjogMjksIDMxLCAzMyAhZGVmYXVsdDtcbiRic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYi1kYXJrOiAwLCAwLCAwICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTpcbiAgMHB4IDBweCAycHggMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAwLjE0KSxcbiAgMHB4IDJweCA0cHggMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAwLjE2KSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3c6XG4gIDBweCAxcHggMnB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMSksXG4gIDBweCAzcHggN3B4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMSksXG4gIDBweCAxMnB4IDMwcHggUkdCQSh2YXIoLS1ic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYiksIC4wOCkgIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LWxnOlxuICAwcHggNHB4IDEwcHggUkdCQSh2YXIoLS1ic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYiksIC4xKSxcbiAgMHB4IDEycHggMzBweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgMC4xNykgIWRlZmF1bHQ7XG5cbi8vIFBvcG92ZXJcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4vLyBDYXJkc1xuJGNhcmQtYm9yZGVyLXJhZGl1czogOHB4ICFkZWZhdWx0O1xuXG4vLyBic2xpYiBEYXNoYm9hcmQgU3R5bGVzXG4vLyBcIkRhc2hib2FyZFwiIHN0eWxlcyBnaXZlIHlvdTpcbi8vICogc29mdGVyIGJvcmRlcnNcbi8vICogd2hpdGUgY2FyZHNcbi8vICogYm94IHNoYWRvdyBvbiBjYXJkc1xuLy8gKiB3aGl0ZSBzaWRlYmFyc1xuLy8gKiBsaWdodCBncmF5IGJhY2tncm91bmQgaW4gdGhlIG1haW4gY29udGFpbmVyKHMpXG4vLyAqIHdoaXRlIG5hdmJhciBhbmQgdGl0bGUgcGFuZWxcblxuJGJzbGliLWRhc2hib2FyZC1kZXNpZ246IHRydWUgIWRlZmF1bHQ7XG4kYnNsaWItZW5hYmxlLXNoYWRvd3M6ICRic2xpYi1kYXNoYm9hcmQtZGVzaWduICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiBpZigkYnNsaWItZGFzaGJvYXJkLWRlc2lnbiwgcmdiYSg0MCwgNzAsIDk0LCAwLjEpLCBudWxsKSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyazogaWYoJGJzbGliLWRhc2hib2FyZC1kZXNpZ24sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSwgbnVsbCkgIWRlZmF1bHQ7XG5cbi8vIE1vZGFsc1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogMTAlICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6IG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1iZzogIzQ2NDY0NiAhZGVmYXVsdDtcblxuLy8gU2hpbnk6IEJhc2Ugc2hpbnkuc2NzcyB2YXJpYWJsZXNcbiRub3RpZmljYXRpb24tY2xvc2UtY29sb3I6IGN1cnJlbnRDb2xvciAhZGVmYXVsdDtcbiIsCgkJIi8vIEJTMyBoYWQgLm5hdmJhciB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogMjBweCAhZGVmYXVsdDtcblxuLy8gQlM1KyB2YXJpYWJsZSB1c2VkIGZvciBwcmVmaXhpbmcgQ1NTIHZhcnNcbiRwcmVmaXg6IGJzLSAhZGVmYXVsdDsiLAoJCSIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAvI3Zpc3VhbC1hdWRpby1jb250cmFzdC1jb250cmFzdFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuJGJsdWUtMjAwOiB0aW50LWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNTAwOiAkYmx1ZSAhZGVmYXVsdDtcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtODAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRpbmRpZ28tMTAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNDAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby03MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMzAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XG4kcHVycGxlLTYwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTkwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcblxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuJHBpbmstMjAwOiB0aW50LWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNTAwOiAkcGluayAhZGVmYXVsdDtcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstODAwOiBzaGFkZS1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG5cbiRyZWQtMTAwOiB0aW50LWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtNDAwOiB0aW50LWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC03MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcblxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAkeWVsbG93ICFkZWZhdWx0O1xuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG5cbiRncmVlbi0xMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi00MDA6IHRpbnQtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6IHRpbnQtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xuJHRlYWwtNjAwOiBzaGFkZS1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtOTAwOiBzaGFkZS1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcblxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuJGN5YW4tMjAwOiB0aW50LWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAkY3lhbiAhZGVmYXVsdDtcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tODAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiRibHVlczogKFxuICBcImJsdWUtMTAwXCI6ICRibHVlLTEwMCxcbiAgXCJibHVlLTIwMFwiOiAkYmx1ZS0yMDAsXG4gIFwiYmx1ZS0zMDBcIjogJGJsdWUtMzAwLFxuICBcImJsdWUtNDAwXCI6ICRibHVlLTQwMCxcbiAgXCJibHVlLTUwMFwiOiAkYmx1ZS01MDAsXG4gIFwiYmx1ZS02MDBcIjogJGJsdWUtNjAwLFxuICBcImJsdWUtNzAwXCI6ICRibHVlLTcwMCxcbiAgXCJibHVlLTgwMFwiOiAkYmx1ZS04MDAsXG4gIFwiYmx1ZS05MDBcIjogJGJsdWUtOTAwXG4pICFkZWZhdWx0O1xuXG4kaW5kaWdvczogKFxuICBcImluZGlnby0xMDBcIjogJGluZGlnby0xMDAsXG4gIFwiaW5kaWdvLTIwMFwiOiAkaW5kaWdvLTIwMCxcbiAgXCJpbmRpZ28tMzAwXCI6ICRpbmRpZ28tMzAwLFxuICBcImluZGlnby00MDBcIjogJGluZGlnby00MDAsXG4gIFwiaW5kaWdvLTUwMFwiOiAkaW5kaWdvLTUwMCxcbiAgXCJpbmRpZ28tNjAwXCI6ICRpbmRpZ28tNjAwLFxuICBcImluZGlnby03MDBcIjogJGluZGlnby03MDAsXG4gIFwiaW5kaWdvLTgwMFwiOiAkaW5kaWdvLTgwMCxcbiAgXCJpbmRpZ28tOTAwXCI6ICRpbmRpZ28tOTAwXG4pICFkZWZhdWx0O1xuXG4kcHVycGxlczogKFxuICBcInB1cnBsZS0xMDBcIjogJHB1cnBsZS0xMDAsXG4gIFwicHVycGxlLTIwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMzAwXCI6ICRwdXJwbGUtMzAwLFxuICBcInB1cnBsZS00MDBcIjogJHB1cnBsZS00MDAsXG4gIFwicHVycGxlLTUwMFwiOiAkcHVycGxlLTUwMCxcbiAgXCJwdXJwbGUtNjAwXCI6ICRwdXJwbGUtNjAwLFxuICBcInB1cnBsZS03MDBcIjogJHB1cnBsZS03MDAsXG4gIFwicHVycGxlLTgwMFwiOiAkcHVycGxlLTgwMCxcbiAgXCJwdXJwbGUtOTAwXCI6ICRwdXJwbGUtOTAwXG4pICFkZWZhdWx0O1xuXG4kcGlua3M6IChcbiAgXCJwaW5rLTEwMFwiOiAkcGluay0xMDAsXG4gIFwicGluay0yMDBcIjogJHBpbmstMjAwLFxuICBcInBpbmstMzAwXCI6ICRwaW5rLTMwMCxcbiAgXCJwaW5rLTQwMFwiOiAkcGluay00MDAsXG4gIFwicGluay01MDBcIjogJHBpbmstNTAwLFxuICBcInBpbmstNjAwXCI6ICRwaW5rLTYwMCxcbiAgXCJwaW5rLTcwMFwiOiAkcGluay03MDAsXG4gIFwicGluay04MDBcIjogJHBpbmstODAwLFxuICBcInBpbmstOTAwXCI6ICRwaW5rLTkwMFxuKSAhZGVmYXVsdDtcblxuJHJlZHM6IChcbiAgXCJyZWQtMTAwXCI6ICRyZWQtMTAwLFxuICBcInJlZC0yMDBcIjogJHJlZC0yMDAsXG4gIFwicmVkLTMwMFwiOiAkcmVkLTMwMCxcbiAgXCJyZWQtNDAwXCI6ICRyZWQtNDAwLFxuICBcInJlZC01MDBcIjogJHJlZC01MDAsXG4gIFwicmVkLTYwMFwiOiAkcmVkLTYwMCxcbiAgXCJyZWQtNzAwXCI6ICRyZWQtNzAwLFxuICBcInJlZC04MDBcIjogJHJlZC04MDAsXG4gIFwicmVkLTkwMFwiOiAkcmVkLTkwMFxuKSAhZGVmYXVsdDtcblxuJG9yYW5nZXM6IChcbiAgXCJvcmFuZ2UtMTAwXCI6ICRvcmFuZ2UtMTAwLFxuICBcIm9yYW5nZS0yMDBcIjogJG9yYW5nZS0yMDAsXG4gIFwib3JhbmdlLTMwMFwiOiAkb3JhbmdlLTMwMCxcbiAgXCJvcmFuZ2UtNDAwXCI6ICRvcmFuZ2UtNDAwLFxuICBcIm9yYW5nZS01MDBcIjogJG9yYW5nZS01MDAsXG4gIFwib3JhbmdlLTYwMFwiOiAkb3JhbmdlLTYwMCxcbiAgXCJvcmFuZ2UtNzAwXCI6ICRvcmFuZ2UtNzAwLFxuICBcIm9yYW5nZS04MDBcIjogJG9yYW5nZS04MDAsXG4gIFwib3JhbmdlLTkwMFwiOiAkb3JhbmdlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHllbGxvd3M6IChcbiAgXCJ5ZWxsb3ctMTAwXCI6ICR5ZWxsb3ctMTAwLFxuICBcInllbGxvdy0yMDBcIjogJHllbGxvdy0yMDAsXG4gIFwieWVsbG93LTMwMFwiOiAkeWVsbG93LTMwMCxcbiAgXCJ5ZWxsb3ctNDAwXCI6ICR5ZWxsb3ctNDAwLFxuICBcInllbGxvdy01MDBcIjogJHllbGxvdy01MDAsXG4gIFwieWVsbG93LTYwMFwiOiAkeWVsbG93LTYwMCxcbiAgXCJ5ZWxsb3ctNzAwXCI6ICR5ZWxsb3ctNzAwLFxuICBcInllbGxvdy04MDBcIjogJHllbGxvdy04MDAsXG4gIFwieWVsbG93LTkwMFwiOiAkeWVsbG93LTkwMFxuKSAhZGVmYXVsdDtcblxuJGdyZWVuczogKFxuICBcImdyZWVuLTEwMFwiOiAkZ3JlZW4tMTAwLFxuICBcImdyZWVuLTIwMFwiOiAkZ3JlZW4tMjAwLFxuICBcImdyZWVuLTMwMFwiOiAkZ3JlZW4tMzAwLFxuICBcImdyZWVuLTQwMFwiOiAkZ3JlZW4tNDAwLFxuICBcImdyZWVuLTUwMFwiOiAkZ3JlZW4tNTAwLFxuICBcImdyZWVuLTYwMFwiOiAkZ3JlZW4tNjAwLFxuICBcImdyZWVuLTcwMFwiOiAkZ3JlZW4tNzAwLFxuICBcImdyZWVuLTgwMFwiOiAkZ3JlZW4tODAwLFxuICBcImdyZWVuLTkwMFwiOiAkZ3JlZW4tOTAwXG4pICFkZWZhdWx0O1xuXG4kdGVhbHM6IChcbiAgXCJ0ZWFsLTEwMFwiOiAkdGVhbC0xMDAsXG4gIFwidGVhbC0yMDBcIjogJHRlYWwtMjAwLFxuICBcInRlYWwtMzAwXCI6ICR0ZWFsLTMwMCxcbiAgXCJ0ZWFsLTQwMFwiOiAkdGVhbC00MDAsXG4gIFwidGVhbC01MDBcIjogJHRlYWwtNTAwLFxuICBcInRlYWwtNjAwXCI6ICR0ZWFsLTYwMCxcbiAgXCJ0ZWFsLTcwMFwiOiAkdGVhbC03MDAsXG4gIFwidGVhbC04MDBcIjogJHRlYWwtODAwLFxuICBcInRlYWwtOTAwXCI6ICR0ZWFsLTkwMFxuKSAhZGVmYXVsdDtcblxuJGN5YW5zOiAoXG4gIFwiY3lhbi0xMDBcIjogJGN5YW4tMTAwLFxuICBcImN5YW4tMjAwXCI6ICRjeWFuLTIwMCxcbiAgXCJjeWFuLTMwMFwiOiAkY3lhbi0zMDAsXG4gIFwiY3lhbi00MDBcIjogJGN5YW4tNDAwLFxuICBcImN5YW4tNTAwXCI6ICRjeWFuLTUwMCxcbiAgXCJjeWFuLTYwMFwiOiAkY3lhbi02MDAsXG4gIFwiY3lhbi03MDBcIjogJGN5YW4tNzAwLFxuICBcImN5YW4tODAwXCI6ICRjeWFuLTgwMCxcbiAgXCJjeWFuLTkwMFwiOiAkY3lhbi05MDBcbikgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBTZW1hbnRpY2FsbHksICRzZWNvbmRhcnkgaXMgY2xvc2VzdCB0byBCUzMncyAnZGVmYXVsdCcgdGhlbWUgY29sb3I7XG4vLyBzbyB1c2UgdGhhdCBpZiBzcGVjaWZpZWQuIE90aGVyd2lzZSwgdXNlIGEgbGlnaHQgaW5zdGVhZCBvZiBkYXJrIGdyYXlcbi8vIGRlZmF1bHQgY29sb3IgZm9yICRkZWZhdWx0IHNpbmNlIHRoYXQncyBjbG9zZXIgdG8gYm9vdHN0cmFwIDMncyBkZWZhdWx0XG4kZGVmYXVsdDogaWYodmFyaWFibGUtZXhpc3RzKFwic2Vjb25kYXJ5XCIpLCAkc2Vjb25kYXJ5LCAkZ3JheS0zMDApICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIC8vIGRlZmF1bHQgbmVlZHMgdG8gYmUgMXN0IHNvIHRoYXQgLmJ0bi1kZWZhdWx0IGNvbWVzIGJlZm9yZSAuYnRuLXByaW1hcnlcbiAgLy8gJiB0aGVyZWZvcmUgaGFzIGxvd2VyIHByaW9yaXR5LlxuICBcImRlZmF1bHRcIjogICAgJGRlZmF1bHQsXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXM6ICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzOiAgICBzaGFkZS1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXM6ICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzOiAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkcHJpbWFyeSwgODAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYmctc3VidGxlOiAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlOiAgICAgICAgICB0aW50LWNvbG9yKCRpbmZvLCA4MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGU6ICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlOiAgICAgICAgIG1peCgkZ3JheS0xMDAsICR3aGl0ZSkgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGU6ICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZTogdGludC1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZTogICAgICB0aW50LWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlOiAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZTogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGU6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jb250YWluZXItY2xhc3NlczogICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY3NzZ3JpZDogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuJGVuYWJsZS1kYXJrLW1vZGU6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRjb2xvci1tb2RlLXR5cGU6ICAgICAgICAgICAgIGRhdGEgIWRlZmF1bHQ7IC8vIGBkYXRhYCBvciBgbWVkaWEtcXVlcnlgXG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wIGZvciB0aGUgc2hvcnRlciBgJHByZWZpeGBcbiRwcmVmaXg6ICAgICAgICAgICAgICAgICAgICAgICR2YXJpYWJsZS1wcmVmaXggIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktdGV4dC1hbGlnbjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGJvZHktc2Vjb25kYXJ5LWNvbG9yOiAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kYm9keS10ZXJ0aWFyeS1jb2xvcjogICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjUpICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktYmc6ICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGJvZHktZW1waGFzaXMtY29sb3I6ICAgICAgICRibGFjayAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogICAgICAgICAgICAgICAgICAgMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4vLyBJY29uIGxpbmtzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaWNvbi1saW5rLXZhcmlhYmxlc1xuJGljb24tbGluay1nYXA6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDogIC4yNWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXNpemU6ICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zaXRpb246ICAgLjJzIGVhc2UtaW4tb3V0IHRyYW5zZm9ybSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZTNkKC4yNWVtLCAwLCAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaWNvbi1saW5rLXZhcmlhYmxlc1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweCxcbiAgeHhsOiAxNDAwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci12YXJpYWJsZXNcbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGhzOiAoXG4gIDE6IDFweCxcbiAgMjogMnB4LFxuICAzOiAzcHgsXG4gIDQ6IDRweCxcbiAgNTogNXB4XG4pICFkZWZhdWx0O1xuJGJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgc29saWQgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAgICByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteHhsOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuLy8gZnVzdi1kaXNhYmxlXG4kYm9yZGVyLXJhZGl1cy0yeGw6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy14eGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICBjb2xvci1jb250cmFzdCgkY29tcG9uZW50LWFjdGl2ZS1iZykgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuJGZvY3VzLXJpbmctd2lkdGg6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctb3BhY2l0eTogICAgLjI1ICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctY29sb3I6ICAgICAgcmdiYSgkcHJpbWFyeSwgJGZvY3VzLXJpbmctb3BhY2l0eSkgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ibHVyOiAgICAgICAwICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYm94LXNoYWRvdzogMCAwICRmb2N1cy1yaW5nLWJsdXIgJGZvY3VzLXJpbmctd2lkdGggJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvY3VzLXJpbmctdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1tZWRpdW06ICAgICAgICAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogICAgICAgIDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXN0eWxlOiAgbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiA1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAgICAgJHNwYWNlciAvIDQgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAyKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgICAgICAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ6ICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgY29sb3ItY29udHJhc3QoJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZywgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IpICFkZWZhdWx0O1xuXG4kbmF2LXVuZGVybGluZS1nYXA6ICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJG5hdmJhci1iZzogICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW55IG5hdmJhclBhZ2UoKVxuJG5hdmJhci1saWdodC1iZzogJG5hdmJhci1iZyAhZGVmYXVsdDsgLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgbmF2YmFyUGFnZShpbnZlcnNlID0gRkFMU0UpXG4kbmF2YmFyLWRhcmstYmc6ICAkbmF2YmFyLWJnICFkZWZhdWx0OyAvLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBUUlVFKVxuXG4kbmF2YmFyLWxpZ2h0LWNvbnRyYXN0OiBpZihcbiAgdHlwZS1vZigkbmF2YmFyLWxpZ2h0LWJnKSA9PSBjb2xvcixcbiAgY29sb3ItY29udHJhc3QoJG5hdmJhci1saWdodC1iZyksXG4gIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpXG4pICFkZWZhdWx0OyAvLyBEZWVwZXN0IGNvbnRyYXN0aW5nIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBGQUxTRSkuXG4kbmF2YmFyLWRhcmstY29udHJhc3Q6IGlmKFxuICB0eXBlLW9mKCRuYXZiYXItZGFyay1iZykgPT0gY29sb3IsXG4gIGNvbG9yLWNvbnRyYXN0KCRuYXZiYXItZGFyay1iZyksXG4gIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpXG4pICFkZWZhdWx0OyAvLyBEZWVwZXN0IGNvbnRyYXN0aW5nIGNvbG9yIGZvciBuYXZiYXJQYWdlKGludmVyc2UgPSBUUlVFKS5cblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRuYXZiYXItbGlnaHQtY29udHJhc3QsIDEpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKGlmKHR5cGUtb2YoJG5hdmJhci1saWdodC1jb250cmFzdCk9PWNvbG9yLCAkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAkYm9keS1jb2xvciksIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAuMTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRuYXZiYXItZGFyay1jb250cmFzdCwgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgcmdiYSgkbmF2YmFyLWRhcmstY29udHJhc3QsIDEpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkbmF2YmFyLWRhcmstY29udHJhc3QsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaWNvbi1jb2xvcjogICAgICAgICAgICByZ2JhKGlmKHR5cGUtb2YoJG5hdmJhci1kYXJrLWNvbnRyYXN0KT09Y29sb3IsICRuYXZiYXItZGFyay1jb250cmFzdCwgJHdoaXRlKSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgY29sb3ItY29udHJhc3QoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLCAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yOiAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtdmFyaWFibGVzXG5cblxuLy8gTGlzdCBncm91cFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICBjb2xvci1jb250cmFzdCgkbGlzdC1ncm91cC1hY3RpdmUtYmcsICRjb21wb25lbnQtYWN0aXZlLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMCAxIDEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDEgMSAxLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAgMSAwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4vLyBBbW91bnQgaW50ZW50aW9uYWxseSBtYXRjaGVzIG1peHR1cmUgYW1vdW50IG9mIHNoaW55OjppbnB1dFBhbmVsKClcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9yc3R1ZGlvL3NoaW55L2Jsb2IvNGVlYjRhMS9pbnN0L3d3dy9zaGFyZWQvc2hpbnlfc2Nzcy9ib290c3RyYXAuc2NzcyNMMjVcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiwgMCwwLDApLCAwLjA0KSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIFJHQih2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiLCAwLDAsMCkpICFkZWZhdWx0O1xuJGNvZGUtY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgUkdCKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IsIDAsMCwwKSkgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29kZS1iZyAgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkY29kZS1jb2xvciAhZGVmYXVsdDtcbiIsCgkJIi8vIERhcmsgY29sb3IgbW9kZSB2YXJpYWJsZXNcbi8vXG4vLyBDdXN0b20gdmFyaWFibGVzIGZvciB0aGUgYFtkYXRhLWJzLXRoZW1lPVwiZGFya1wiXWAgdGhlbWUuIFVzZSB0aGlzIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIHlvdXIgb3duIGN1c3RvbSBjb2xvciBtb2RlcyBieSBjcmVhdGluZyBhIG5ldyB0aGVtZS1zcGVjaWZpYyBmaWxlIGxpa2UgYF92YXJpYWJsZXMtZGFyay5zY3NzYCBhbmQgYWRkaW5nIHRoZSB2YXJpYWJsZXMgeW91IG5lZWQuXG5cbi8vXG4vLyBHbG9iYWwgY29sb3JzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2Fzcy1kYXJrLW1vZGUtdmFyc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDQwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA0MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAgdGludC1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDQwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDQwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRibGFjaykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyazogICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDQwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA0MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNDAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4kYm9keS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9keS1iZy1kYXJrOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktY29sb3ItZGFyazogICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmctZGFyazogICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrOiAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnLWRhcms6ICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRncmF5LTkwMCwgNTAlKSAhZGVmYXVsdDtcbiRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcms6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItZGFyazogICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyazogICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvci1kYXJrOiAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvci1kYXJrLCAtJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kY29kZS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb2RlLWNvbG9yLCA0MCUpICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrOiAgJGJvZHktY29sb3ItZGFyayAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyazogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNvbG9yLWRhcms6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvci1kYXJrfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1jb2xvcnMtZGFya1xuJGZvcm0tdmFsaWQtY29sb3ItZGFyazogICAgICAgICAgICAgJGdyZWVuLTMwMCAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrOiAgICAgICRncmVlbi0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yLWRhcms6ICAgICAgICAgICAkcmVkLTMwMCAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcms6ICAgICRyZWQtMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzLWRhcmtcblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4kYWNjb3JkaW9uLWljb24tY29sb3ItZGFyazogICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcms6ICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3ItZGFya30nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcms6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcmt9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNhc3MtZGFyay1tb2RlLXZhcnNcbiIsCgkJIi8vIFJlLWFzc2lnbmVkIG1hcHNcbi8vXG4vLyBQbGFjZWQgaGVyZSBzbyB0aGF0IG90aGVycyBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgU2FzcyBtYXBzIGFuZCBzZWUgYXV0b21hdGljIHVwZGF0ZXMgdG8gdXRpbGl0aWVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLXJnYlxuJHRoZW1lLWNvbG9ycy1yZ2I6IG1hcC1sb29wKCR0aGVtZS1jb2xvcnMsIHRvLXJnYiwgXCIkdmFsdWVcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1yZ2JcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtbWFwXG4kdGhlbWUtY29sb3JzLXRleHQ6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LXRleHQtZW1waGFzaXMsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktdGV4dC1lbXBoYXNpcyxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMsXG4gIFwiaW5mb1wiOiAkaW5mby10ZXh0LWVtcGhhc2lzLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctdGV4dC1lbXBoYXNpcyxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLFxuICBcImxpZ2h0XCI6ICRsaWdodC10ZXh0LWVtcGhhc2lzLFxuICBcImRhcmtcIjogJGRhcmstdGV4dC1lbXBoYXNpcyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJnLXN1YnRsZTogKFxuICBcInByaW1hcnlcIjogJHByaW1hcnktYmctc3VidGxlLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJnLXN1YnRsZSxcbiAgXCJpbmZvXCI6ICRpbmZvLWJnLXN1YnRsZSxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1iZy1zdWJ0bGUsXG4gIFwibGlnaHRcIjogJGxpZ2h0LWJnLXN1YnRsZSxcbiAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGU6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJvcmRlci1zdWJ0bGUsXG4gIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctYm9yZGVyLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1ib3JkZXItc3VidGxlLFxuICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLFxuICBcImRhcmtcIjogJGRhcmstYm9yZGVyLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG5cbiR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrOiBudWxsICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogbnVsbCAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiBudWxsICFkZWZhdWx0O1xuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuICAkdGhlbWUtY29sb3JzLXRleHQtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICkgIWRlZmF1bHQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtZGFyay1tYXBcbiAgJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1iZy1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrLFxuICAgIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1iZy1zdWJ0bGUtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tYmctc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXItYmctc3VidGxlLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtYmctc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZS1kYXJrLFxuICApICFkZWZhdWx0O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG4gICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiAoXG4gICAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInN1Y2Nlc3NcIjogJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImRhbmdlclwiOiAkZGFuZ2VyLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgKSAhZGVmYXVsdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG59XG5cbi8vIFV0aWxpdGllcyBtYXBzXG4vL1xuLy8gRXh0ZW5kcyB0aGUgZGVmYXVsdCBgJHRoZW1lLWNvbG9yc2AgbWFwcyB0byBoZWxwIGNyZWF0ZSBvdXIgdXRpbGl0aWVzLlxuXG4vLyBDb21lIHY2LCB3ZSdsbCBkZS1kdXBlIHRoZXNlIHZhcmlhYmxlcy4gVW50aWwgdGhlbiwgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlIGtlZXAgdGhlbSB0byByZWFzc2lnbi5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtY29sb3JzXG4kdXRpbGl0aWVzLWNvbG9yczogJHRoZW1lLWNvbG9ycy1yZ2IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuJHV0aWxpdGllcy10ZXh0OiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpLFxuICAgIFwiYm9keVwiOiB0by1yZ2IoJGJvZHktY29sb3IpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLXRleHQtY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLXRleHQsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwidGV4dFwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy10ZXh0LWVtcGhhc2lzLWNvbG9yczogKFxuICBcInByaW1hcnktZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic2Vjb25kYXJ5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic3VjY2Vzcy1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy10ZXh0LWVtcGhhc2lzKSxcbiAgXCJpbmZvLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLXRleHQtZW1waGFzaXMpLFxuICBcIndhcm5pbmctZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctdGV4dC1lbXBoYXNpcyksXG4gIFwiZGFuZ2VyLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItdGV4dC1lbXBoYXNpcyksXG4gIFwibGlnaHQtZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LXRleHQtZW1waGFzaXMpLFxuICBcImRhcmstZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWRhcmstdGV4dC1lbXBoYXNpcylcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuJHV0aWxpdGllcy1iZzogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWJnKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1iZy1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYmcsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwiYmdcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtYmctc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSxcbiAgXCJzZWNvbmRhcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctc3VidGxlKSxcbiAgXCJzdWNjZXNzLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1iZy1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJnLXN1YnRsZSksXG4gIFwid2FybmluZy1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctYmctc3VidGxlKSxcbiAgXCJkYW5nZXItc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItYmctc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJnLXN1YnRsZSksXG4gIFwiZGFyay1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhcmstYmctc3VidGxlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcbiR1dGlsaXRpZXMtYm9yZGVyOiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLWJvcmRlci1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYm9yZGVyLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJvcmRlclwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy1ib3JkZXItc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYm9yZGVyLXN1YnRsZSksXG4gIFwic2Vjb25kYXJ5LXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUpLFxuICBcInN1Y2Nlc3Mtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLWJvcmRlci1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJvcmRlci1zdWJ0bGUpLFxuICBcIndhcm5pbmctc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLWJvcmRlci1zdWJ0bGUpLFxuICBcImRhbmdlci1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlci1ib3JkZXItc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJvcmRlci1zdWJ0bGUpLFxuICBcImRhcmstc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLWJvcmRlci1zdWJ0bGUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtYm9yZGVyLWNvbG9yc1xuXG4kdXRpbGl0aWVzLWxpbmtzLXVuZGVybGluZTogbWFwLWxvb3AoJHV0aWxpdGllcy1jb2xvcnMsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwibGluay11bmRlcmxpbmVcIikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcbiIsCgkJIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3ItbW9kZVwiO1xuQGltcG9ydCBcIm1peGlucy9jb2xvci1zY2hlbWVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc3VhbGx5LWhpZGRlblwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL3V0aWxpdGllc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tkcm9wXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS12YXJpYW50c1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLAoJCSIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwKCQkiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1tb2RlLW1peGluXG5AbWl4aW4gY29sb3ItbW9kZSgkbW9kZTogbGlnaHQsICRyb290OiBmYWxzZSkge1xuICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgIEBpZiAkcm9vdCA9PSB0cnVlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIDpyb290IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogJG1vZGUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBbZGF0YS1icy10aGVtZT1cIiN7JG1vZGV9XCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1tb2RlLW1peGluXG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgbWl4aW4tY29sb3Itc2NoZW1lXG5AbWl4aW4gY29sb3Itc2NoZW1lKCRuYW1lKSB7XG4gIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICN7JG5hbWV9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbWl4aW4tY29sb3Itc2NoZW1lXG4iLAoJCSIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG4iLAoJCSIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwKCQkiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLAoJCSJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsCgkJIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwKCQkiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsCgkJIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwKCQkiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LW1peGluc1xuQG1peGluIGNhcmV0LWRvd24oJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LXN0YXJ0KCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KFxuICAkZGlyZWN0aW9uOiBkb3duLFxuICAkd2lkdGg6ICRjYXJldC13aWR0aCxcbiAgJHNwYWNpbmc6ICRjYXJldC1zcGFjaW5nLFxuICAkdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnblxuKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsCgkJIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLAoJCSIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwKCQkiLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcbiAgJHN0YXRlLFxuICAkY29sb3IsXG4gICRpY29uLFxuICAkdG9vbHRpcC1jb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICRib3JkZXItY29sb3I6ICRjb2xvclxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbjogI3tlc2NhcGUtc3ZnKCRpY29uKX07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICB3aWR0aDogYWRkKCRmb3JtLWNvbG9yLXdpZHRoLCAkaW5wdXQtaGVpZ2h0LWlubmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cblxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgICAgQGlmICRzdGF0ZSA9PSBcInZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH0gQGVsc2UgaWYgJHN0YXRlID09IFwiaW52YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbiIsCgkJIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsCgkJIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsCgkJIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJHNoYWRvdyB7XG4gICAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHZhbHVlLCBcImNvbW1hXCIpO1xuICAgICAgfVxuICAgICAgQGlmICR2YWx1ZSA9PSBub25lIGFuZCBsZW5ndGgoJHNoYWRvdykgPiAxIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAobGVuZ3RoKCRyZXN1bHQpID4gMCkge1xuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIEdyYWRpZW50c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtYmctbWl4aW5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3I6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1iZy1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtbWl4aW5zXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogbnVsbCwgJGVuZC1wZXJjZW50OiBudWxsKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LW1peGluc1xuIiwKCQkiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgY2xlYXJmaXhcbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2xlYXJmaXhcbiIsCgkJIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLAoJCSIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgLXdlYmtpdC1mbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyIG9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuZCBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBCUzUrIGRhcmsgY29sb3IgbW9kZSBmb3JlZ3JvdW5kIGNvbG9yXG4kZW1waGFzaXMtY29sb3ItcmdiOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiLCAwLDAsMCkgIWRlZmF1bHQ7XG5cbi8vIENhcmRzIGFyZSB3aGl0ZSBieSBkZWZhdWx0LCBidXQgd2Ugd2FudCBhIHNtYXJ0ZXIgZGVmYXVsdCBmb3IgLndlbGxcbi8vIHRoYXQgaXQgYXBwZWFycyBncmF5IGJ5IGRlZmF1bHRcbiR3ZWxsLWJnOiBpZigkYm9vdHN0cmFwLXZlcnNpb24+PTUsIFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgLjAzKSwgcmdiYSgkYmxhY2ssIC4wMykpICFkZWZhdWx0O1xuJHdlbGwtY29sb3I6IGlmKCRib290c3RyYXAtdmVyc2lvbj49NSwgUkdCKCRlbXBoYXNpcy1jb2xvci1yZ2IpLCAkYm9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vIEJvb3RzdHJhcCA1LjMuMSArIHNlbGVjdGl6ZS5qcyB2MC4xMi40IChpLmUuLCBzaGlueSB2MS43LjUpIHNoaW1cbi8vXG4vLyBTdGFydGluZyB3aXRoIDUuMy54LCBCb290c3RyYXAgc3RhcnRlZCBoYXZpbmcgU2FzcyB2YXJpYWJsZXMgZGVmYXVsdCB0byBDU1Ncbi8vIHZhcmlhYmxlcyAoZS5nLiwgJGlucHV0LWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSksIHdoaWNoIGlzIHByb2JsZW1hdGljIGZvclxuLy8gY29tcHVhdGlvbiB0aGF0IGhhcHBlbnMgaW4gU2FzcyAoZS5nLiwgYG1peCgkY29sb3IxLCAkY29sb3IyKWApLiBUaGlzIGJ1bmRsZVxuLy8gZml4ZXMgdGhpcyBwcm9ibGVtIGZvciBzaGlueTo6c2VsZWN0aXplSW5wdXQoKSdzIFNhc3MgY29kZSAoZnV0dXJlIHZlcnNpb25zIG9mXG4vLyBzZWxlY3RpemVJbnB1dCgpIHNob3VsZCBob3BlZnVsbHkgYWRkcmVzcyB0aGlzIHByb2JsZW0sIG1ha2luZyB0aGlzIHRlbXBvcmFyeVxuLy8gc3RvcGdhcCBzb2x1dGlvbiBubyBsb25nZXIgcmVxdWlyZWQpLlxuJHNlbGVjdGl6ZS1jb2xvci10ZXh0OiBpZihpcy1jc3MtdmFyaWFibGUoJGlucHV0LWNvbG9yKSwgJGJvZHktY29sb3IsICRpbnB1dC1jb2xvcikgIWRlZmF1bHQ7XG4kc2VsZWN0aXplLWNvbG9yLWl0ZW06IHJnYmEoJHNlbGVjdGl6ZS1jb2xvci10ZXh0LCAwLjEpICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1pdGVtLWJvcmRlcjogaWYoaXMtY3NzLXZhcmlhYmxlKCRpbnB1dC1ib3JkZXItY29sb3IpLCAkYm9yZGVyLWNvbG9yLCAkaW5wdXQtYm9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd246IGlmKGlzLWNzcy12YXJpYWJsZSgkZHJvcGRvd24tYmcpLCAkYm9keS1iZywgJGRyb3Bkb3duLWJnKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24tYm9yZGVyLXRvcDogcmdiYSgkaW5wdXQtYm9yZGVyLWNvbG9yLCAwLjIpICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1kcm9wZG93bi1pdGVtLWNyZWF0ZS10ZXh0OiByZ2JhKCRzZWxlY3RpemUtY29sb3ItdGV4dCwgMC41KSAhZGVmYXVsdDtcbkBpZiB2YXJpYWJsZS1leGlzdHMoXCJpbnB1dC1idG4tZm9udC1zaXplXCIpIHtcbiAgJHNlbGVjdGl6ZS1mb250LXNpemU6ICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xufSBAZWxzZSBpZiB2YXJpYWJsZS1leGlzdHMoXCJmb250LXNpemUtYmFzZVwiKSB7XG4gICRzZWxlY3RpemUtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG59XG4kc2VsZWN0aXplLWZvbnQtZmFtaWx5OiBpZigkaW5wdXQtYnRuLWZvbnQtZmFtaWx5LCAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5LCBpbmhlcml0KSAhZGVmYXVsdDtcbiIsCgkJIi8vIEFjY29yZGlvbnNcbi8vIFRoZXNlIGRlZmluaXRpb25zIGNhbid0IGdvIGluIF9kZWZhdWx0cy5zY3NzIHdpdGggYSAhZGVmYXVsdCBmbGFnIChiZWNhdXNlICFkZWZhdWx0IGRvZXNuJ3QgcmVzcGVjdCBudWxsKVxuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiBudWxsO1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiBudWxsO1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogbnVsbDtcblxuLy8gU2hpbnk6IHNlbGVjdElucHV0KCkgYW5kIHNlbGVjdGl6ZUlucHV0KClcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24taXRlbS1hY3RpdmU6ICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1kcm9wZG93bi1pdGVtLWFjdGl2ZS10ZXh0OiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuLy8gQ29tcG9uZW50IFZhcmlhYmxlc1xuQGltcG9ydCBcImlvbnJhbmdlc2xpZGVyL192YXJpYWJsZXMuc2Nzc1wiO1xuIiwKCQkiLy8gaHR0cHM6Ly9naXRodWIuY29tL3JzdHVkaW8vc2hpbnkvYmxvYi9tYWluL2luc3Qvd3d3L3NoYXJlZC9pb25yYW5nZXNsaWRlci9zY3NzL3NoaW55LnNjc3NcblxuJGVtcGhhc2lzLWNvbG9yLXJnYjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiLCAwLCAwLCAwKSAhZGVmYXVsdDtcblxuJG1pbm1heF9iZ19jb2xvcjogUkdCQSgkZW1waGFzaXMtY29sb3ItcmdiLCAwLjEpICFkZWZhdWx0O1xuXG4kdG9wOiAzMnB4ICFkZWZhdWx0O1xuXG4kbGluZV9oZWlnaHQ6IDFweCAhZGVmYXVsdDtcbiRsaW5lX2JnOiBub25lICFkZWZhdWx0O1xuJGxpbmVfYmdfY29sb3I6IFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgMC42NSkgIWRlZmF1bHQ7XG4kbGluZV9ib3JkZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbiRoYW5kbGVfY29sb3I6ICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGhhbmRsZV9jb2xvcl9ob3ZlcjogdGludC1jb2xvcigkaGFuZGxlX2NvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGhhbmRsZV9ib3JkZXI6IG5vbmUgIWRlZmF1bHQ7XG4kaGFuZGxlX2JveF9zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG4kaGFuZGxlX3JhZGl1czogJHRvcCAtIDEwcHggIWRlZmF1bHQ7XG4kaGFuZGxlX2hlaWdodDogMTlweCAhZGVmYXVsdDtcbiRoYW5kbGVfd2lkdGg6ICRoYW5kbGVfaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYmFyX2NvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGdyaWRfbWFqb3JfY29sb3I6IFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgMC42NSkgIWRlZmF1bHQ7XG4kZ3JpZF9taW5vcl9jb2xvcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZ3JpZF90ZXh0X2NvbG9yOiBSR0JBKCRlbXBoYXNpcy1jb2xvci1yZ2IsIDAuODUpICFkZWZhdWx0O1xuIiwKCQkiLyogJ3NoaW55JyBza2luIGZvciBJb24uUmFuZ2VTbGlkZXIsIGxhcmdlbHkgYmFzZWQgb24gdGhlICdiaWcnIHNraW4sIGJ1dCB3aXRoIHNtYWxsZXIgZGltZW5zaW9ucywgZ3JheXNjYWxlIGdyaWQgdGV4dCwgYW5kIHdpdGhvdXQgZ3JhZGllbnRzXG7CqSBQb3NpdCwgUEJDLCAyMDIzXG7CqSBSU3R1ZGlvLCBJbmMsIDIwMTRcbsKpIERlbmlzIEluZXNoaW4sIDIwMTQgIGh0dHBzOi8vZ2l0aHViLmNvbS9Jb25EZW5cbsKpIGd1eWJvd2RlbiwgMjAxNCAgaHR0cHM6Ly9naXRodWIuY29tL2d1eWJvd2RlblxuKi9cblxuQGltcG9ydCBcIl9iYXNlXCI7XG5cbi8vIEJvdGggQlMzIGFuZCBCUzQgZGVmaW5lIGEgYm9yZGVyIHJhZGl1cyBtaXhpbiwgYnV0IGp1c3QgaW4gY2FzZVxuLy8gd2UncmUgdHJ5aW5nIHRvIGNvbXBpbGUgdGhpcyB3aXRob3V0IGJvb3RzdHJhcFNhc3NcbkBtaXhpbiBib3JkZXItcmFkaXVzLXNoaW0oJHJhZGl1cykge1xuICBAaWYgbWl4aW4tZXhpc3RzKFwiYm9yZGVyLXJhZGl1c1wiKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcmFkaXVzKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuJGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZSAhZGVmYXVsdDtcbi5pcnMge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xufVxuXG4uaXJzLS1zaGlueSB7XG4gICRuYW1lOiBpcnMgIWRlZmF1bHQ7XG5cbiAgLy8gU2l6aW5nIGNvbnRyb2xzXG4gICR0b3A6ICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuICAkbGluZV9oZWlnaHQ6ICAgOHB4ICFkZWZhdWx0O1xuICAkaGFuZGxlX3dpZHRoOiAgMjJweCAhZGVmYXVsdDtcbiAgJGhhbmRsZV9oZWlnaHQ6IDIycHggIWRlZmF1bHQ7XG4gICRjdXN0b21fcmFkaXVzOiAzcHggIWRlZmF1bHQ7XG5cbiAgLy8gXCJIaWdoLWxldmVsXCIgY29sb3JpbmdcbiAgJGJnOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4gICRmZzogICAgIGNvbG9yLWNvbnRyYXN0KCRib2R5LWJnKSAhZGVmYXVsdDtcbiAgJGFjY2VudDogIzQyOGJjYSAhZGVmYXVsdDtcblxuICAvLyBcIkxvdy1sZXZlbFwiIGNvbG9yaW5nLCBib3JkZXJzLCBhbmQgZm9udHNcbiAgJGxpbmVfYmc6ICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgbWl4KCRiZywgJGZnLCA4NyUpIC01MCUsICRiZyAxNTAlKSAhZGVmYXVsdDtcbiAgJGxpbmVfYmdfY29sb3I6ICAgICAgbWl4KCRiZywgJGZnLCA5MyUpICFkZWZhdWx0O1xuICAkbGluZV9ib3JkZXI6ICAgICAgICAxcHggc29saWQgbWl4KCRiZywgJGZnLCA4MCUpICFkZWZhdWx0O1xuXG4gICRiYXJfY29sb3I6ICAgICAgICAgICRhY2NlbnQgIWRlZmF1bHQ7XG5cbiAgJGhhbmRsZV9jb2xvcjogICAgICAgbWl4KCRiZywgJGZnLCA4NyUpICFkZWZhdWx0O1xuICAkaGFuZGxlX2NvbG9yX2hvdmVyOiAkYmcgIWRlZmF1bHQ7XG4gICRoYW5kbGVfYm9yZGVyOiAgICAgIDFweCBzb2xpZCBtaXgoJGJnLCAkZmcsIDY3JSkgIWRlZmF1bHQ7XG4gICRoYW5kbGVfYm94X3NoYWRvdzogIDFweCAxcHggM3B4IHJnYmEoJGJnLCAwLjMpICFkZWZhdWx0O1xuXG4gICRtaW5tYXhfdGV4dF9jb2xvcjogIG51bGwgIWRlZmF1bHQ7XG4gICRtaW5tYXhfYmdfY29sb3I6ICAgIHJnYmEoJGZnLCAwLjEpICFkZWZhdWx0O1xuICAkbWlubWF4X2ZvbnRfc2l6ZTogICAxMHB4ICFkZWZhdWx0O1xuICAkbWlubWF4X2xpbmVfaGVpZ2h0OiAxLjMzMyAhZGVmYXVsdDtcblxuICAkZnJvbXRvX2JnX2NvbG9yOiAgICAkYWNjZW50ICFkZWZhdWx0O1xuICAkZnJvbXRvX2NvbG9yOiAgICAgICBjb2xvci1jb250cmFzdCgkZnJvbXRvX2JnX2NvbG9yKSAhZGVmYXVsdDtcbiAgJGZyb210b19mb250X3NpemU6ICAgMTFweCAhZGVmYXVsdDtcbiAgJGZyb210b19saW5lX2hlaWdodDogMS4zMzMgIWRlZmF1bHQ7XG5cbiAgJGdyaWRfbWFqb3JfY29sb3I6ICAkZmcgIWRlZmF1bHQ7XG4gICRncmlkX21pbm9yX2NvbG9yOiAgbWl4KCRiZywgJGZnLCA2MCUpICFkZWZhdWx0O1xuICAkZ3JpZF90ZXh0X2NvbG9yOiAgIG51bGwgIWRlZmF1bHQ7XG5cblxuICBoZWlnaHQ6IDQwcHg7XG5cbiAgJi5pcnMtd2l0aC1ncmlkIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gIH1cblxuICAuI3skbmFtZX0tbGluZSB7XG4gICAgdG9wOiAkdG9wO1xuICAgIGhlaWdodDogJGxpbmVfaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRsaW5lX2JnO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5lX2JnX2NvbG9yO1xuICAgIGJvcmRlcjogJGxpbmVfYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMtc2hpbSgkbGluZV9oZWlnaHQpO1xuXG4gICAgLy8gSW5jcmVhc2UgdGhlIHRvdWNoIHRhcmdldCBhcmVhIG9mIHRoZSBzbGlkZXIgbGluZVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjdXJzb3I6IHMtcmVzaXplOyAvLyBkb3dud2FyZCBhcnJvd1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6ICRoYW5kbGVfaGVpZ2h0O1xuICAgICAgdG9wOiAtKCgkaGFuZGxlX2hlaWdodCAtICRsaW5lX2hlaWdodCAvIDIpIC8gMik7XG4gICAgICB6LWluZGV4OiAxOyAvLyByYWlzZSB0b3VjaCBhcmVhIGFib3ZlIGdyaWRcbiAgICB9XG4gIH1cblxuICAuI3skbmFtZX0tYmFyIHtcbiAgICB0b3A6ICR0b3A7XG4gICAgaGVpZ2h0OiAkbGluZV9oZWlnaHQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiYXJfY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiYXJfY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJhcl9jb2xvcjtcbiAgICBjdXJzb3I6IHMtcmVzaXplOyAvLyBkb3duYXJkIGFycm93LCBvdmVyd3JpdHRlbiB3aGVuIGEgcmFuZ2VcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJi0tc2luZ2xlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMtc2hpbSgkbGluZV9oZWlnaHQgMCAwICRsaW5lX2hlaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSW5jcmVhc2UgdGhlIHRvdWNoIHRhcmdldCBhcmVhIG9mIHRoZSBzbGlkZXIgYmFyXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAkaGFuZGxlX2hlaWdodDtcbiAgICAgIHRvcDogLSgoJGhhbmRsZV9oZWlnaHQgLSAkbGluZV9oZWlnaHQgLyAyKSAvIDIpO1xuICAgICAgei1pbmRleDogMjsgLy8gcmFpc2UgdG91Y2ggYXJlYSBhYm92ZSBsaW5lIHRvdWNoIHRhcmdldFxuICAgIH1cbiAgfVxuXG4gIC8vIHNsaWRlcklucHV0KCkgZG9lc24ndCBjdXJyZW50bHkgc3VwcG9ydCBmcm9tX21pbi9mcm9tX21heCwgc28gdGhpcyBpc24ndCByZWxldmFudFxuICAuI3skbmFtZX0tc2hhZG93IHtcbiAgICB0b3A6IDM4cHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZmcsIDAuMyk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cy1zaGltKDVweCk7XG4gIH1cbiAgLmx0LWllOSAuI3skbmFtZX0tc2hhZG93IHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MzApO1xuICB9XG5cbiAgLy8gLmlycy1zbGlkZXIgY2hhbmdlZCB0byAuaXJzLWhhbmRsZSBpbiB2Mi4zLjBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL0lvbkRlbi9pb24ucmFuZ2VTbGlkZXIvY29tbWl0L2M5OGMxMGQzZDM2MGFhNTJlOTk3YmI4ZTRmZDM3MWM5NThmNzhlNGIjZGlmZi05MWNjNmZkZTI1ZmUzODBhYzJhN2FjNThlMTUzOGRjZVIxNDBcbiAgLiN7JG5hbWV9LWhhbmRsZSB7XG4gICAgdG9wOiAxN3B4O1xuICAgIHdpZHRoOiAkaGFuZGxlX3dpZHRoO1xuICAgIGhlaWdodDogJGhhbmRsZV9oZWlnaHQ7XG4gICAgYm9yZGVyOiAkaGFuZGxlX2JvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFuZGxlX2NvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRoYW5kbGVfYm94X3NoYWRvdztcbiAgICBib3JkZXItcmFkaXVzOiAkaGFuZGxlX3dpZHRoO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmLnN0YXRlX2hvdmVyLFxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGhhbmRsZV9jb2xvcl9ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAuI3skbmFtZX0tbWluLFxuICAuI3skbmFtZX0tbWF4IHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMXB4IDNweDtcbiAgICBjb2xvcjogJG1pbm1heF90ZXh0X2NvbG9yO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtaW5tYXhfYmdfY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cy1zaGltKCRjdXN0b21fcmFkaXVzKTtcbiAgICBmb250LXNpemU6ICRtaW5tYXhfZm9udF9zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbWlubWF4X2xpbmVfaGVpZ2h0O1xuICB9XG5cbiAgLmx0LWllOSAuI3skbmFtZX0tbWluLFxuICAubHQtaWU5IC4jeyRuYW1lfS1tYXgge1xuICAgIGJhY2tncm91bmQ6IG1peCgkYmcsICRmZywgODAlKTtcbiAgfVxuXG4gIC4jeyRuYW1lfS1mcm9tLFxuICAuI3skbmFtZX0tdG8sXG4gIC4jeyRuYW1lfS1zaW5nbGUge1xuICAgIGNvbG9yOiAkZnJvbXRvX2NvbG9yO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDFweCAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZyb210b19iZ19jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzLXNoaW0oJGN1c3RvbV9yYWRpdXMpO1xuICAgIGZvbnQtc2l6ZTogJGZyb210b19mb250X3NpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRmcm9tdG9fbGluZV9oZWlnaHQ7XG4gIH1cblxuICAubHQtaWU5IC4jeyRuYW1lfS1mcm9tLFxuICAubHQtaWU5IC4jeyRuYW1lfS10byxcbiAgLmx0LWllOSAuI3skbmFtZX0tc2luZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiBtaXgoJGJnLCAkZmcsIDYwJSk7XG4gIH1cblxuICAuI3skbmFtZX0tZ3JpZCB7XG4gICAgaGVpZ2h0OiAyN3B4O1xuICAgICYtcG9sIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlkX21ham9yX2NvbG9yO1xuICAgIH1cbiAgICAmLXRleHQge1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICBjb2xvcjogJGdyaWRfdGV4dF9jb2xvcjtcbiAgICB9XG4gICAgJi1wb2wuc21hbGwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaWRfbWlub3JfY29sb3I7XG4gICAgfVxuICB9XG5cbn1cbiIsCgkJIkBpbXBvcnQgXCJfbWl4aW5zXCI7XG5cbi5pcnMge1xuICAgIEBpbmNsdWRlIHBvcy1yKCk7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIEBpbmNsdWRlIG5vLWNsaWNrKCk7XG4gICAgLyogaHR0cHM6Ly9naXRodWIuY29tL3JzdHVkaW8vc2hpbnkvaXNzdWVzLzM0NDMgKi9cbiAgICAvKiBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS8gKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJi1saW5lIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zLXIoKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYtYmFyIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zLWEoKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJi1zaGFkb3cge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cblxuICAgICYtaGFuZGxlIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zLWEoKTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICYuc2luZ2xlLFxuICAgICAgICAmLmZyb20sXG4gICAgICAgICYudG8ge31cblxuICAgICAgICAmLnR5cGVfbGFzdCB7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1taW4sXG4gICAgJi1tYXgge1xuICAgICAgICBAaW5jbHVkZSBwb3MtYSgpO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi1taW4ge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgICYtbWF4IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi1mcm9tLFxuICAgICYtdG8sXG4gICAgJi1zaW5nbGUge1xuICAgICAgICBAaW5jbHVkZSBwb3MtYSgpO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmLWdyaWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjBweDtcblxuICAgICAgICAuaXJzLXdpdGgtZ3JpZCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wb2wge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcblxuICAgICAgICAgICAgJi5zbWFsbCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDNweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZGlzYWJsZS1tYXNrIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zLWEoKTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtMSU7XG4gICAgICAgIHdpZHRoOiAxMDIlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjApO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIC5sdC1pZTkgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgJi1oaWRkZW4taW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHotaW5kZXg6IC05OTk5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwKCQkiQG1peGluIG5vLWNsaWNrKCkge1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5AbWl4aW4gcG9zLXIoKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWl4aW4gcG9zLWEoKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuIgoJXSwKCSJuYW1lcyI6IFtdLAoJIm1hcHBpbmdzIjogIjtBc0NBQTs7Ozs7RUFLRTtBQ0hGLEFBQUEsSUFBSSxDQUFDO0VDT0QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RUROZCxxQkFBcUIsRUFBRSxJQUFJO0VDSDNCLG1CQUFtQixFQUFFLElBQUk7RUFDekIsa0JBQWtCLEVBQUUsSUFBSTtFQUN4QixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLFdBQVcsRUFBRSxJQUFJO0VEQ2pCLGtEQUFrRDtFQUNsRCwwRkFBMEY7RUFDMUYsVUFBVSxFQUFFLFVBQVU7Q0EwSXpCOztBQWhKRCxBQU9JLElBUEEsQ0FPQSxDQUFDLEVBUEwsSUFBSSxDQU9HLENBQUMsQ0FBQyxNQUFNLEVBUGYsSUFBSSxDQU9hLENBQUMsQ0FBQyxLQUFLLENBQUM7RUFDbkIsVUFBVSxFQUFFLE9BQU87Q0FDcEI7O0FBVEwsQUFXSSxTQVhBLENBV087RUNKUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsS0FBSztFREtWLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxlQUFlO0NBQzNCOztBQWZMLEFBaUJJLFFBakJBLENBaUJNO0VDTE4sUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RURNVixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0NBQ1g7O0FBckJMLEFBdUJJLFdBdkJBLENBdUJTO0VBQ0wsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxDQUFDO0NBQ1g7O0FBNUJMLEFBOEJJLFdBOUJBLENBOEJTO0VDbEJULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxLQUFLO0VEbUJWLFVBQVUsRUFBRSxVQUFVO0VBQ3RC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 */ /* shiny preset styles */ @@ -355,4 +354,3 @@ margin-top: 5px; } -/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAic3RkaW4uY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzdGRpbiIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9mdW5jdGlvbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvc2Fzcy11dGlscy9jb2xvci1jb250cmFzdC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fdmFyaWFibGVzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZGVmYXVsdHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMtZGFyay5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX21hcHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19taXhpbnMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2NvbG9yLXNjaGVtZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsCgkJIi4uLy4uLy4uLy4uL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9iczNjb21wYXQvX2RlY2xhcmF0aW9ucy5zY3NzIiwKCQkiLi4vLi4vLi4vLi4vcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fbWl4aW5zLnNjc3MiLAoJCSIuLi8uLi8uLi8uLi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2J1aWx0aW4vYnM1L3NoaW55L2lvbnJhbmdlc2xpZGVyL192YXJpYWJsZXMuc2NzcyIKCV0sCgkic291cmNlc0NvbnRlbnQiOiBbCgkJIkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9saWIvYnM1L3Njc3MvX2Z1bmN0aW9ucy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnNsaWItc2Nzcy9mdW5jdGlvbnMuc2Nzc1wiO1xuXG5cblxuJGJzbGliLXByZXNldC10eXBlOiBidWlsdGluO1xuJGJzbGliLXByZXNldC1uYW1lOiBzaGlueTtcbiR3ZWItZm9udC1wYXRoOiBcImZvbnQuY3NzXCIgIWRlZmF1bHQ7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnVpbHRpbi9iczUvc2hpbnkvX3ZhcmlhYmxlcy5zY3NzXCI7XG4kZW5hYmxlLWNzc2dyaWQ6IHRydWUgIWRlZmF1bHQ7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvYnMzY29tcGF0L19kZWZhdWx0cy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL192YXJpYWJsZXMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fdmFyaWFibGVzLWRhcmsuc2Nzc1wiO1xuJGJvb3RzdHJhcC12ZXJzaW9uOiA1O1xuJGJzbGliLXByZXNldC1uYW1lOiBudWxsICFkZWZhdWx0O1xuJGJzbGliLXByZXNldC10eXBlOiBudWxsICFkZWZhdWx0O1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2xpYi9iczUvc2Nzcy9fbWFwcy5zY3NzXCI7XG5AaW1wb3J0IFwiL3ByaXZhdGUvdmFyL2ZvbGRlcnMvdDgvanh3NGJmdGozNWcxNWZjYjZtNG1mYmM4MDAwMGduL1QvUnRtcFg2Tlp5dy90ZW1wX2xpYnBhdGhlZDc2MWY5MjJhYWYvYnNsaWIvbGliL2JzNS9zY3NzL19taXhpbnMuc2Nzc1wiO1xuQGltcG9ydCBcIi9wcml2YXRlL3Zhci9mb2xkZXJzL3Q4L2p4dzRiZnRqMzVnMTVmY2I2bTRtZmJjODAwMDBnbi9UL1J0bXBYNk5aeXcvdGVtcF9saWJwYXRoZWQ3NjFmOTIyYWFmL2JzbGliL2JzM2NvbXBhdC9fZGVjbGFyYXRpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCIvcHJpdmF0ZS92YXIvZm9sZGVycy90OC9qeHc0YmZ0ajM1ZzE1ZmNiNm00bWZiYzgwMDAwZ24vVC9SdG1wWDZOWnl3L3RlbXBfbGlicGF0aGVkNzYxZjkyMmFhZi9ic2xpYi9idWlsdGluL2JzNS9zaGlueS9fbWl4aW5zLnNjc3NcIjtcbi5pcnMuaXJzLS1zaGlueSB7XG4gICRpcnMtc2hpbnktc3BhY2U6IDNweCAhZGVmYXVsdDtcblxuICBtYXJnaW4tdG9wOiAkaXJzLXNoaW55LXNwYWNlO1xuXG4gIC5pcnMtbWluLFxuICAuaXJzLW1heCxcbiAgLmlycy1mcm9tLFxuICAuaXJzLXRvLFxuICAuaXJzLXNpbmdsZSB7XG4gICAgcGFkZGluZzogJGlycy1zaGlueS1zcGFjZSAkaXJzLXNoaW55LXNwYWNlICogMjtcbiAgICB0b3A6IC0kaXJzLXNoaW55LXNwYWNlO1xuICB9XG5cbiAgLmlycy1oYW5kbGUge1xuICAgIHRvcDogJHRvcCAtICgkaGFuZGxlX2hlaWdodCAvIDIpICsgKCRsaW5lX2hlaWdodCAvIDIpO1xuICB9XG5cbiAgLmlycy1iYXIge1xuICAgIHRvcDogMzFweDtcbiAgICBoZWlnaHQ6ICRpcnMtc2hpbnktc3BhY2U7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmlycy1saW5lIHtcbiAgICAvLyBOT1RFOiBub3Qgc3VyZSB3ZSBuZWVkIHRoaXMgYm9yZGVyIHJhZGl1c1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgfVxuXG4gIC5pcnMtZ3JpZC1wb2wge1xuICAgIGhlaWdodDogNnB4O1xuICB9XG5cbiAgLmlycy1ncmlkLXRleHQge1xuICAgIGJvdHRvbTogOHB4O1xuICB9XG5cbiAgLy8gbWFrZSBoYW5kbGVzIGtleWJvYXJkIGFjY2Vzc2libGVcbiAgLy9cbiAgLy8gV2UgbWlnaHQgbmVlZCBzb21lIGphdmFzY3JpcHQgc2hlbmFuaWdhbnMgdG8gbWFrZSB0aGUgaGFuZGxlcyBvbiB0aGUgc2xpZGVyXG4gIC8vIGtleWJvYXJkIGFjY2Vzc2libGUuICBJIHRoaW5rIHdlIGNhbiBkbyB0aGlzIGJ5IGFzc2lnbmluZyBpdCBhIHJvbGUgYW5kIGFuZFxuICAvLyBhIHRhYmluZGV4PyBjaGVjayBvdXQgdGhpcyBhcnRpY2xlOlxuICAvLyBodHRwczovL3d3dy40NTZiZXJlYXN0cmVldC5jb20vYXJjaGl2ZS8yMDEzMDIvbWFraW5nX2VsZW1lbnRzX2tleWJvYXJkX2ZvY3VzYWJsZV9hbmRfY2xpY2thYmxlL1xuICAuaXJzLWhhbmRsZTpmb2N1cy12aXNpYmxlLFxuICAuaXJzLWhhbmRsZTphY3RpdmUge1xuICAgIC8vIEZJWE1FXG4gICAgY29sb3I6IHNoYWRlLWNvbG9yKCRoYW5kbGVfY29sb3IsIDMwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUtY29sb3IoJGhhbmRsZV9jb2xvciwgMzAlKTtcbiAgICBib3JkZXItY29sb3I6IHNoYWRlLWNvbG9yKCRoYW5kbGVfY29sb3IsIDMwKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICYgfiAuc2xpZGVyLWFuaW1hdGUtY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLnNsaWRlci1hbmltYXRlLWJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gICYuaXJzLXdpdGgtZ3JpZCB+IC5zbGlkZXItYW5pbWF0ZS1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gIH1cbiAgJjpub3QoLmlycy13aXRoLWdyaWQpIH4gLnNsaWRlci1hbmltYXRlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59IiwKCQkiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbG9yc1xuQGZ1bmN0aW9uIHRvLXJnYigkdmFsdWUpIHtcbiAgQHJldHVybiByZWQoJHZhbHVlKSwgZ3JlZW4oJHZhbHVlKSwgYmx1ZSgkdmFsdWUpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG5AZnVuY3Rpb24gcmdiYS1jc3MtdmFyKCRpZGVudGlmaWVyLCAkdGFyZ2V0KSB7XG4gIEBpZiAkaWRlbnRpZmllciA9PSBcImJvZHlcIiBhbmQgJHRhcmdldCA9PSBcImJnXCIge1xuICAgIEByZXR1cm4gcmdiYSh2YXIoLS0jeyRwcmVmaXh9I3skaWRlbnRpZmllcn0tYmctcmdiKSwgdmFyKC0tI3skcHJlZml4fSN7JHRhcmdldH0tb3BhY2l0eSkpO1xuICB9IEBpZiAkaWRlbnRpZmllciA9PSBcImJvZHlcIiBhbmQgJHRhcmdldCA9PSBcInRleHRcIiB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gcmdiYSh2YXIoLS0jeyRwcmVmaXh9I3skaWRlbnRpZmllcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fSN7JHRhcmdldH0tb3BhY2l0eSkpO1xuICB9XG59XG5cbkBmdW5jdGlvbiBtYXAtbG9vcCgkbWFwLCAkZnVuYywgJGFyZ3MuLi4pIHtcbiAgJF9tYXA6ICgpO1xuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAvLyBhbGxvdyB0byBwYXNzIHRoZSAka2V5IGFuZCAkdmFsdWUgb2YgdGhlIG1hcCBhcyBhbiBmdW5jdGlvbiBhcmd1bWVudFxuICAgICRfYXJnczogKCk7XG4gICAgQGVhY2ggJGFyZyBpbiAkYXJncyB7XG4gICAgICAkX2FyZ3M6IGFwcGVuZCgkX2FyZ3MsIGlmKCRhcmcgPT0gXCIka2V5XCIsICRrZXksIGlmKCRhcmcgPT0gXCIkdmFsdWVcIiwgJHZhbHVlLCAkYXJnKSkpO1xuICAgIH1cblxuICAgICRfbWFwOiBtYXAtbWVyZ2UoJF9tYXAsICgka2V5OiBjYWxsKGdldC1mdW5jdGlvbigkZnVuYyksICRfYXJncy4uLikpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9tYXA7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cblxuQGZ1bmN0aW9uIHZhcmlmeSgkbGlzdCkge1xuICAkcmVzdWx0OiBudWxsO1xuICBAZWFjaCAkZW50cnkgaW4gJGxpc3Qge1xuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCB2YXIoLS0jeyRwcmVmaXh9I3skZW50cnl9KSwgc3BhY2UpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gSW50ZXJuYWwgQm9vdHN0cmFwIGZ1bmN0aW9uIHRvIHR1cm4gbWFwcyBpbnRvIGl0cyBuZWdhdGl2ZSB2YXJpYW50LlxuLy8gSXQgcHJlZml4ZXMgdGhlIGtleXMgd2l0aCBgbmAgYW5kIG1ha2VzIHRoZSB2YWx1ZSBuZWdhdGl2ZS5cbkBmdW5jdGlvbiBuZWdhdGl2aWZ5LW1hcCgkbWFwKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmICRrZXkgIT0gMCB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKFwiblwiICsgJGtleTogKC0kdmFsdWUpKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gR2V0IG11bHRpcGxlIGtleXMgZnJvbSBhIHNhc3MgbWFwXG5AZnVuY3Rpb24gbWFwLWdldC1tdWx0aXBsZSgkbWFwLCAkdmFsdWVzKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmIChpbmRleCgkdmFsdWVzLCAka2V5KSAhPSBudWxsKSB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICR2YWx1ZSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIE1lcmdlIG11bHRpcGxlIG1hcHNcbkBmdW5jdGlvbiBtYXAtbWVyZ2UtbXVsdGlwbGUoJG1hcHMuLi4pIHtcbiAgJG1lcmdlZC1tYXBzOiAoKTtcblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICAkbWVyZ2VkLW1hcHM6IG1hcC1tZXJnZSgkbWVyZ2VkLW1hcHMsICRtYXApO1xuICB9XG4gIEByZXR1cm4gJG1lcmdlZC1tYXBzO1xufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwMTY4XG5cbi8vIEEgbGlzdCBvZiBwcmUtY2FsY3VsYXRlZCBudW1iZXJzIG9mIHBvdyhkaXZpZGUoKGRpdmlkZSgkdmFsdWUsIDI1NSkgKyAuMDU1KSwgMS4wNTUpLCAyLjQpLiAoZnJvbSAwIHRvIDI1NSlcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG4kX2x1bWluYW5jZS1saXN0OiAuMDAwOCAuMDAxIC4wMDExIC4wMDEzIC4wMDE1IC4wMDE3IC4wMDIgLjAwMjIgLjAwMjUgLjAwMjcgLjAwMyAuMDAzMyAuMDAzNyAuMDA0IC4wMDQ0IC4wMDQ4IC4wMDUyIC4wMDU2IC4wMDYgLjAwNjUgLjAwNyAuMDA3NSAuMDA4IC4wMDg2IC4wMDkxIC4wMDk3IC4wMTAzIC4wMTEgLjAxMTYgLjAxMjMgLjAxMyAuMDEzNyAuMDE0NCAuMDE1MiAuMDE2IC4wMTY4IC4wMTc2IC4wMTg1IC4wMTk0IC4wMjAzIC4wMjEyIC4wMjIyIC4wMjMyIC4wMjQyIC4wMjUyIC4wMjYyIC4wMjczIC4wMjg0IC4wMjk2IC4wMzA3IC4wMzE5IC4wMzMxIC4wMzQzIC4wMzU2IC4wMzY5IC4wMzgyIC4wMzk1IC4wNDA5IC4wNDIzIC4wNDM3IC4wNDUyIC4wNDY3IC4wNDgyIC4wNDk3IC4wNTEzIC4wNTI5IC4wNTQ1IC4wNTYxIC4wNTc4IC4wNTk1IC4wNjEyIC4wNjMgLjA2NDggLjA2NjYgLjA2ODUgLjA3MDQgLjA3MjMgLjA3NDIgLjA3NjIgLjA3ODIgLjA4MDIgLjA4MjMgLjA4NDQgLjA4NjUgLjA4ODcgLjA5MDggLjA5MzEgLjA5NTMgLjA5NzYgLjA5OTkgLjEwMjIgLjEwNDYgLjEwNyAuMTA5NSAuMTExOSAuMTE0NCAuMTE3IC4xMTk1IC4xMjIxIC4xMjQ4IC4xMjc0IC4xMzAxIC4xMzI5IC4xMzU2IC4xMzg0IC4xNDEzIC4xNDQxIC4xNDcgLjE1IC4xNTI5IC4xNTU5IC4xNTkgLjE2MiAuMTY1MSAuMTY4MyAuMTcxNCAuMTc0NiAuMTc3OSAuMTgxMiAuMTg0NSAuMTg3OCAuMTkxMiAuMTk0NiAuMTk4MSAuMjAxNiAuMjA1MSAuMjA4NiAuMjEyMiAuMjE1OSAuMjE5NSAuMjIzMiAuMjI3IC4yMzA3IC4yMzQ2IC4yMzg0IC4yNDIzIC4yNDYyIC4yNTAyIC4yNTQyIC4yNTgyIC4yNjIzIC4yNjY0IC4yNzA1IC4yNzQ3IC4yNzg5IC4yODMxIC4yODc0IC4yOTE4IC4yOTYxIC4zMDA1IC4zMDUgLjMwOTUgLjMxNCAuMzE4NSAuMzIzMSAuMzI3OCAuMzMyNSAuMzM3MiAuMzQxOSAuMzQ2NyAuMzUxNSAuMzU2NCAuMzYxMyAuMzY2MyAuMzcxMiAuMzc2MyAuMzgxMyAuMzg2NCAuMzkxNiAuMzk2OCAuNDAyIC40MDcyIC40MTI1IC40MTc5IC40MjMzIC40Mjg3IC40MzQyIC40Mzk3IC40NDUyIC40NTA4IC40NTY0IC40NjIxIC40Njc4IC40NzM1IC40NzkzIC40ODUxIC40OTEgLjQ5NjkgLjUwMjkgLjUwODkgLjUxNDkgLjUyMSAuNTI3MSAuNTMzMyAuNTM5NSAuNTQ1NyAuNTUyIC41NTgzIC41NjQ3IC41NzExIC41Nzc2IC41ODQxIC41OTA2IC41OTcyIC42MDM4IC42MTA1IC42MTcyIC42MjQgLjYzMDggLjYzNzYgLjY0NDUgLjY1MTQgLjY1ODQgLjY2NTQgLjY3MjQgLjY3OTUgLjY4NjcgLjY5MzkgLjcwMTEgLjcwODQgLjcxNTcgLjcyMzEgLjczMDUgLjczNzkgLjc0NTQgLjc1MjkgLjc2MDUgLjc2ODIgLjc3NTggLjc4MzUgLjc5MTMgLjc5OTEgLjgwNyAuODE0OCAuODIyOCAuODMwOCAuODM4OCAuODQ2OSAuODU1IC44NjMyIC44NzE0IC44Nzk2IC44ODc5IC44OTYzIC45MDQ3IC45MTMxIC45MjE2IC45MzAxIC45Mzg3IC45NDczIC45NTYgLjk2NDcgLjk3MzQgLjk4MjMgLjk5MTEgMTtcblxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAkY29sb3ItY29udHJhc3QtZGFyazogJGNvbG9yLWNvbnRyYXN0LWRhcmssICRjb2xvci1jb250cmFzdC1saWdodDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkbWluLWNvbnRyYXN0LXJhdGlvOiAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICRmb3JlZ3JvdW5kczogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gICRtYXgtcmF0aW86IDA7XG4gICRtYXgtcmF0aW8tY29sb3I6IG51bGw7XG5cbiAgQGVhY2ggJGNvbG9yIGluICRmb3JlZ3JvdW5kcyB7XG4gICAgJGNvbnRyYXN0LXJhdGlvOiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgICBAaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1pbi1jb250cmFzdC1yYXRpbyB7XG4gICAgICBAcmV0dXJuICRjb2xvcjtcbiAgICB9IEBlbHNlIGlmICRjb250cmFzdC1yYXRpbyA+ICRtYXgtcmF0aW8ge1xuICAgICAgJG1heC1yYXRpbzogJGNvbnRyYXN0LXJhdGlvO1xuICAgICAgJG1heC1yYXRpby1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEB3YXJuIFwiRm91bmQgbm8gY29sb3IgbGVhZGluZyB0byAjeyRtaW4tY29udHJhc3QtcmF0aW99OjEgY29udHJhc3QgcmF0aW8gYWdhaW5zdCAjeyRiYWNrZ3JvdW5kfS4uLlwiO1xuXG4gIEByZXR1cm4gJG1heC1yYXRpby1jb2xvcjtcbn1cblxuQGZ1bmN0aW9uIGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0KSB7XG4gICRsMTogbHVtaW5hbmNlKCRiYWNrZ3JvdW5kKTtcbiAgJGwyOiBsdW1pbmFuY2Uob3BhcXVlKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZCkpO1xuXG4gIEByZXR1cm4gaWYoJGwxID4gJGwyLCBkaXZpZGUoJGwxICsgLjA1LCAkbDIgKyAuMDUpLCBkaXZpZGUoJGwyICsgLjA1LCAkbDEgKyAuMDUpKTtcbn1cblxuLy8gUmV0dXJuIFdDQUcyLjEgcmVsYXRpdmUgbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcvI2Rmbi1yZWxhdGl2ZS1sdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRy8jZGZuLWNvbnRyYXN0LXJhdGlvXG5AZnVuY3Rpb24gbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmdiOiAoXG4gICAgXCJyXCI6IHJlZCgkY29sb3IpLFxuICAgIFwiZ1wiOiBncmVlbigkY29sb3IpLFxuICAgIFwiYlwiOiBibHVlKCRjb2xvcilcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRyZ2Ige1xuICAgICR2YWx1ZTogaWYoZGl2aWRlKCR2YWx1ZSwgMjU1KSA8IC4wNDA0NSwgZGl2aWRlKGRpdmlkZSgkdmFsdWUsIDI1NSksIDEyLjkyKSwgbnRoKCRfbHVtaW5hbmNlLWxpc3QsICR2YWx1ZSArIDEpKTtcbiAgICAkcmdiOiBtYXAtbWVyZ2UoJHJnYiwgKCRuYW1lOiAkdmFsdWUpKTtcbiAgfVxuXG4gIEByZXR1cm4gKG1hcC1nZXQoJHJnYiwgXCJyXCIpICogLjIxMjYpICsgKG1hcC1nZXQoJHJnYiwgXCJnXCIpICogLjcxNTIpICsgKG1hcC1nZXQoJHJnYiwgXCJiXCIpICogLjA3MjIpO1xufVxuXG4vLyBSZXR1cm4gb3BhcXVlIGNvbG9yXG4vLyBvcGFxdWUoI2ZmZiwgcmdiYSgwLCAwLCAwLCAuNSkpID0+ICM4MDgwODBcbkBmdW5jdGlvbiBvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSB7XG4gIEByZXR1cm4gbWl4KHJnYmEoJGZvcmVncm91bmQsIDEpLCAkYmFja2dyb3VuZCwgb3BhY2l0eSgkZm9yZWdyb3VuZCkgKiAxMDAlKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLWZ1bmN0aW9uc1xuLy8gVGludCBhIGNvbG9yOiBtaXggYSBjb2xvciB3aXRoIHdoaXRlXG5AZnVuY3Rpb24gdGludC1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHdlaWdodCk7XG59XG5cbi8vIFNoYWRlIGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggYmxhY2tcbkBmdW5jdGlvbiBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHdlaWdodCk7XG59XG5cbi8vIFNoYWRlIHRoZSBjb2xvciBpZiB0aGUgd2VpZ2h0IGlzIHBvc2l0aXZlLCBlbHNlIHRpbnQgaXRcbkBmdW5jdGlvbiBzaGlmdC1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBpZigkd2VpZ2h0ID4gMCwgc2hhZGUtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSwgdGludC1jb2xvcigkY29sb3IsIC0kd2VpZ2h0KSk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLWZ1bmN0aW9uc1xuXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gc3VidHJhY3QoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAtJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUyKSAhPSBudW1iZXIge1xuICAgICR2YWx1ZTI6IHVucXVvdGUoXCIoXCIpICsgJHZhbHVlMiArIHVucXVvdGUoXCIpXCIpO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9IC0gI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiIC0gXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLAoJCSIvLyBjb2xvci1jb250cmFzdCgpIHdhcyBpbnRyb2R1Y2VkIGluIEJvb3RzdHJhcCA1LlxuLy8gV2UgaW5jbHVkZSBvdXIgb3duIHZlcnNpb24gZm9yIGEgZmV3IHJlYXNvbnM6XG4vLyAxLiBFYXNpbHkgdHVybiBvZmYgd2FybmluZ3Mgb3B0aW9ucyhic2xpYi5jb2xvcl9jb250cmFzdF93YXJuaW5ncz1GKVxuLy8gMi4gQWxsb3cgQm9vdHN0cmFwIDMgJiA0IHRvIHVzZSBjb2xvci1jb250cmFzdCgpIGluIHZhcmlhYmxlIGRlZmluaXRpb25zXG4vLyAzLiBBbGxvdyBCb290c3RyYXAgMyAmIDQgdG8gdXNlIGJzX2dldF9jb250cmFzdCgpXG5cbi8vIEFsc28gbm90ZSB0aGF0IGNvbG9yLWNvbnRyYXN0KCkgbGl2ZXMgaW4gc2Fzcy11dGlscyBzaW5jZSBwcm9qZWN0cyBsaWtlIFF1YXJ0b1xuLy8gYW5kIGZsZXhkYXNoYm9hcmQgY3VycmVudGx5IGFzc3VtZSBpdCBleGlzdHMgdGhlcmUuLi4uXG5AaW1wb3J0IFwiLi4vc2Fzcy11dGlscy9jb2xvci1jb250cmFzdC5zY3NzXCI7XG5cblxuQGZ1bmN0aW9uIGlzLWNzcy12YXJpYWJsZSgkeCkge1xuICBAaWYgKHR5cGUtb2YoJHgpICE9IHN0cmluZykge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCR4LCAxLCA2KSA9PSAndmFyKC0tJztcbiAgfVxufVxuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIENvbG9yIGNvbnRyYXN0aW5nIChiYWNrcG9ydGVkIHRvIEJTNCBmcm9tIEJTNSlcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDE2OFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8gQSBsaXN0IG9mIHByZS1jYWxjdWxhdGVkIG51bWJlcnMgb2YgcG93KGRpdmlkZSgoZGl2aWRlKCR2YWx1ZSwgMjU1KSArIC4wNTUpLCAxLjA1NSksIDIuNCkuIChmcm9tIDAgdG8gMjU1KVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHQsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbiRfbHVtaW5hbmNlLWxpc3Q6IC4wMDA4IC4wMDEgLjAwMTEgLjAwMTMgLjAwMTUgLjAwMTcgLjAwMiAuMDAyMiAuMDAyNSAuMDAyNyAuMDAzIC4wMDMzIC4wMDM3IC4wMDQgLjAwNDQgLjAwNDggLjAwNTIgLjAwNTYgLjAwNiAuMDA2NSAuMDA3IC4wMDc1IC4wMDggLjAwODYgLjAwOTEgLjAwOTcgLjAxMDMgLjAxMSAuMDExNiAuMDEyMyAuMDEzIC4wMTM3IC4wMTQ0IC4wMTUyIC4wMTYgLjAxNjggLjAxNzYgLjAxODUgLjAxOTQgLjAyMDMgLjAyMTIgLjAyMjIgLjAyMzIgLjAyNDIgLjAyNTIgLjAyNjIgLjAyNzMgLjAyODQgLjAyOTYgLjAzMDcgLjAzMTkgLjAzMzEgLjAzNDMgLjAzNTYgLjAzNjkgLjAzODIgLjAzOTUgLjA0MDkgLjA0MjMgLjA0MzcgLjA0NTIgLjA0NjcgLjA0ODIgLjA0OTcgLjA1MTMgLjA1MjkgLjA1NDUgLjA1NjEgLjA1NzggLjA1OTUgLjA2MTIgLjA2MyAuMDY0OCAuMDY2NiAuMDY4NSAuMDcwNCAuMDcyMyAuMDc0MiAuMDc2MiAuMDc4MiAuMDgwMiAuMDgyMyAuMDg0NCAuMDg2NSAuMDg4NyAuMDkwOCAuMDkzMSAuMDk1MyAuMDk3NiAuMDk5OSAuMTAyMiAuMTA0NiAuMTA3IC4xMDk1IC4xMTE5IC4xMTQ0IC4xMTcgLjExOTUgLjEyMjEgLjEyNDggLjEyNzQgLjEzMDEgLjEzMjkgLjEzNTYgLjEzODQgLjE0MTMgLjE0NDEgLjE0NyAuMTUgLjE1MjkgLjE1NTkgLjE1OSAuMTYyIC4xNjUxIC4xNjgzIC4xNzE0IC4xNzQ2IC4xNzc5IC4xODEyIC4xODQ1IC4xODc4IC4xOTEyIC4xOTQ2IC4xOTgxIC4yMDE2IC4yMDUxIC4yMDg2IC4yMTIyIC4yMTU5IC4yMTk1IC4yMjMyIC4yMjcgLjIzMDcgLjIzNDYgLjIzODQgLjI0MjMgLjI0NjIgLjI1MDIgLjI1NDIgLjI1ODIgLjI2MjMgLjI2NjQgLjI3MDUgLjI3NDcgLjI3ODkgLjI4MzEgLjI4NzQgLjI5MTggLjI5NjEgLjMwMDUgLjMwNSAuMzA5NSAuMzE0IC4zMTg1IC4zMjMxIC4zMjc4IC4zMzI1IC4zMzcyIC4zNDE5IC4zNDY3IC4zNTE1IC4zNTY0IC4zNjEzIC4zNjYzIC4zNzEyIC4zNzYzIC4zODEzIC4zODY0IC4zOTE2IC4zOTY4IC40MDIgLjQwNzIgLjQxMjUgLjQxNzkgLjQyMzMgLjQyODcgLjQzNDIgLjQzOTcgLjQ0NTIgLjQ1MDggLjQ1NjQgLjQ2MjEgLjQ2NzggLjQ3MzUgLjQ3OTMgLjQ4NTEgLjQ5MSAuNDk2OSAuNTAyOSAuNTA4OSAuNTE0OSAuNTIxIC41MjcxIC41MzMzIC41Mzk1IC41NDU3IC41NTIgLjU1ODMgLjU2NDcgLjU3MTEgLjU3NzYgLjU4NDEgLjU5MDYgLjU5NzIgLjYwMzggLjYxMDUgLjYxNzIgLjYyNCAuNjMwOCAuNjM3NiAuNjQ0NSAuNjUxNCAuNjU4NCAuNjY1NCAuNjcyNCAuNjc5NSAuNjg2NyAuNjkzOSAuNzAxMSAuNzA4NCAuNzE1NyAuNzIzMSAuNzMwNSAuNzM3OSAuNzQ1NCAuNzUyOSAuNzYwNSAuNzY4MiAuNzc1OCAuNzgzNSAuNzkxMyAuNzk5MSAuODA3IC44MTQ4IC44MjI4IC44MzA4IC44Mzg4IC44NDY5IC44NTUgLjg2MzIgLjg3MTQgLjg3OTYgLjg4NzkgLjg5NjMgLjkwNDcgLjkxMzEgLjkyMTYgLjkzMDEgLjkzODcgLjk0NzMgLjk1NiAuOTY0NyAuOTczNCAuOTgyMyAuOTkxMSAxO1xuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kczogbnVsbCkge1xuXG4gIC8vIFRoZXNlIHZhcmlhYmxlcyBzaG91bGQgYmUgZGVmaW5lZCBpbiBfdmFyaWFibGVzLnNjc3MsIGJ1dCB3ZSBhbHNvXG4gIC8vIGRlZmluZSB0aGVtIGhlcmUgc28gdGhhdCAzcmQgcGFydHkgbGlicyBjYW4gdXNlIGlmIHRoZXkgd2FudFxuICAvLyB3aXRob3V0IHBvbGx1dGluZyB0aGUgZ2xvYmFsIG5hbWVzcGFjZVxuICAkYmxhY2s6ICMwMDAgIWRlZmF1bHQ7XG4gICR3aGl0ZTogI2ZmZiAhZGVmYXVsdDtcbiAgJGNvbG9yLWNvbnRyYXN0LWRhcms6ICRibGFjayAhZGVmYXVsdDtcbiAgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAkd2hpdGUgIWRlZmF1bHQ7XG4gICRtaW4tY29udHJhc3QtcmF0aW86IDMgIWRlZmF1bHQ7XG5cbiAgQGlmICRmb3JlZ3JvdW5kcyA9PSBudWxsIHtcbiAgICAkZm9yZWdyb3VuZHM6ICRjb2xvci1jb250cmFzdC1saWdodCwgJGNvbG9yLWNvbnRyYXN0LWRhcmssICR3aGl0ZSwgJGJsYWNrO1xuICB9IEBlbHNlIHtcbiAgICAkZm9yZWdyb3VuZHM6ICRmb3JlZ3JvdW5kcywgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gIH1cblxuICAkbWF4LXJhdGlvOiAwO1xuICAkbWF4LXJhdGlvLWNvbG9yOiBudWxsO1xuXG4gIEBlYWNoICRjb2xvciBpbiAkZm9yZWdyb3VuZHMge1xuICAgICRjb250cmFzdC1yYXRpbzogY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRjb2xvcik7XG4gICAgQGlmICRjb250cmFzdC1yYXRpbyA+ICRtaW4tY29udHJhc3QtcmF0aW8ge1xuICAgICAgQHJldHVybiAkY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWF4LXJhdGlvIHtcbiAgICAgICRtYXgtcmF0aW86ICRjb250cmFzdC1yYXRpbztcbiAgICAgICRtYXgtcmF0aW8tY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAkY29sb3ItY29udHJhc3Qtd2FybmluZ3M6IGZhbHNlICFkZWZhdWx0O1xuICBAaWYgJGNvbG9yLWNvbnRyYXN0LXdhcm5pbmdzIHtcbiAgICBAd2FybiBcIkZvdW5kIG5vIGNvbG9yIGxlYWRpbmcgdG8gI3skbWluLWNvbnRyYXN0LXJhdGlvfToxIGNvbnRyYXN0IHJhdGlvIGFnYWluc3QgI3skYmFja2dyb3VuZH0uLi5cIjtcbiAgfVxuXG4gIEByZXR1cm4gJG1heC1yYXRpby1jb2xvcjtcbn1cblxuQGZ1bmN0aW9uIGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0KSB7XG4gICRsMTogbHVtaW5hbmNlKCRiYWNrZ3JvdW5kKTtcbiAgJGwyOiBsdW1pbmFuY2Uob3BhcXVlKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZCkpO1xuXG4gIEByZXR1cm4gaWYoJGwxID4gJGwyLCBkaXZpZGUoJGwxICsgLjA1LCAkbDIgKyAuMDUpLCBkaXZpZGUoJGwyICsgLjA1LCAkbDEgKyAuMDUpKTtcbn1cblxuLy8gUmV0dXJuIFdDQUcyLjAgcmVsYXRpdmUgbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1dBSS9HTC93aWtpL1JlbGF0aXZlX2x1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXG5AZnVuY3Rpb24gbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmdiOiAoXG4gICAgXCJyXCI6IHJlZCgkY29sb3IpLFxuICAgIFwiZ1wiOiBncmVlbigkY29sb3IpLFxuICAgIFwiYlwiOiBibHVlKCRjb2xvcilcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRyZ2Ige1xuICAgICR2YWx1ZTogaWYoZGl2aWRlKCR2YWx1ZSwgMjU1KSA8IC4wNDA0NSwgZGl2aWRlKGRpdmlkZSgkdmFsdWUsIDI1NSksIDEyLjkyKSwgbnRoKCRfbHVtaW5hbmNlLWxpc3QsICR2YWx1ZSArIDEpKTtcbiAgICAkcmdiOiBtYXAtbWVyZ2UoJHJnYiwgKCRuYW1lOiAkdmFsdWUpKTtcbiAgfVxuXG4gIEByZXR1cm4gKG1hcC1nZXQoJHJnYiwgXCJyXCIpICogLjIxMjYpICsgKG1hcC1nZXQoJHJnYiwgXCJnXCIpICogLjcxNTIpICsgKG1hcC1nZXQoJHJnYiwgXCJiXCIpICogLjA3MjIpO1xufVxuXG4vLyBSZXR1cm4gb3BhcXVlIGNvbG9yXG4vLyBvcGFxdWUoI2ZmZiwgcmdiYSgwLCAwLCAwLCAuNSkpID0+ICM4MDgwODBcbkBmdW5jdGlvbiBvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSB7XG4gIEByZXR1cm4gbWl4KHJnYmEoJGZvcmVncm91bmQsIDEpLCAkYmFja2dyb3VuZCwgb3BhY2l0eSgkZm9yZWdyb3VuZCkgKiAxMDAlKTtcbn1cblxuLy8gQWRkZWQgaW4gQlM1IGFzIGFuIGFsdGVybmF0aXZlIHRvIHRoZSBcXCBvcGVyYXRvciwgd2hpY2hcbi8vIHRocm93cyB3YXJuaW5ncyBpbiBEYXJ0IFNhc3Ncbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM0MjQ1XG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuIiwKCQkiJGJsdWU6ICMwMDdiYzIgIWRlZmF1bHQ7XG4kaW5kaWdvOiAjNGIwMGMxICFkZWZhdWx0O1xuJHB1cnBsZTogIzc0MTQ5YyAhZGVmYXVsdDtcbiRwaW5rOiAjYmYwMDdmICFkZWZhdWx0O1xuJHJlZDogI2MxMDAwMCAhZGVmYXVsdDtcbiRvcmFuZ2U6ICNmNDUxMDAgIWRlZmF1bHQ7XG4keWVsbG93OiAjZjliOTI4ICFkZWZhdWx0O1xuJGdyZWVuOiAjMDA4OTFhICFkZWZhdWx0O1xuJHRlYWw6ICMwMGJmN2YgIWRlZmF1bHQ7XG4kY3lhbjogIzAzYzdlOCAhZGVmYXVsdDtcbiR3aGl0ZTogI2ZmZmZmZiAhZGVmYXVsdDtcblxuJGdyYXk6ICM2MDYwNjAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrOiAjMzAzMDMwICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOGY4ICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2RkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjOEQ5NTlFICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNzA3NzgyICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDg1MDVGICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzQTQ2ICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMUQxRjIxICFkZWZhdWx0O1xuXG4kZGVmYXVsdDogJGdyYXktMzAwICFkZWZhdWx0O1xuJHByaW1hcnk6ICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogIzQwNDA0MCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAjMjAyMDIwICFkZWZhdWx0O1xuXG4kZGVmYXVsdC1yZ2I6IDIyMiwgMjI2LCAyMzAgIWRlZmF1bHQ7XG4kcHJpbWFyeS1yZ2I6IDAsIDEyMywgMTk0ICFkZWZhdWx0O1xuJHNlY29uZGFyeS1yZ2I6IDY0LCA2NCwgNjQgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1yZ2I6IDAsIDEzNywgMjYgIWRlZmF1bHQ7XG4kaW5mby1yZ2I6IDMsIDE5OSwgMjMyICFkZWZhdWx0O1xuJHdhcm5pbmctcmdiOiAyNDksIDE4NSwgNDAgIWRlZmF1bHQ7XG4kZGFuZ2VyLXJnYjogMTkzLCAwLCAwICFkZWZhdWx0O1xuJGxpZ2h0LXJnYjogMjQ4LCAyNDgsIDI0OCAhZGVmYXVsdDtcbiRkYXJrLXJnYjogMzIsIDMyLCAzMiAhZGVmYXVsdDtcbiR3aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTUgIWRlZmF1bHQ7XG4kYmxhY2stcmdiOiAwLCAwLCAwICFkZWZhdWx0O1xuJGJvZHktY29sb3ItcmdiOiA1MiwgNTgsIDcwICFkZWZhdWx0O1xuJGJvZHktYmctcmdiOiAyNTUsIDI1NSwgMjU1ICFkZWZhdWx0O1xuXG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudChcbiAgMTgwZGVnLFxuICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLFxuICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApXG4pICFkZWZhdWx0O1xuXG4kYm9keS1jb2xvcjogJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktYmc6ICR3aGl0ZSAhZGVmYXVsdDtcblxuJHByZWZpeDogYnMtICFkZWZhdWx0O1xuXG4vLyBGb250c1xuJGZvbnQtZmFtaWx5LWJhc2U6IFwiT3BlbiBTYW5zXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBcIlNvdXJjZSBDb2RlIFByb1wiLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlXHQhZGVmYXVsdDtcblxuJHJvb3QtZm9udC1zaXplOiAxOHB4ICFkZWZhdWx0O1xuJGJvZHktZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJGgxLWZvbnQtc2l6ZTogMi4xcmVtICFkZWZhdWx0O1xuXG4kYm9keS1mb250LXdlaWdodDogNDAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG5cbi8vIFNwYWNpbmdcbiRic2xpYi1zcGFjZXI6IDEuNXJlbSAhZGVmYXVsdDtcbiRoci1tYXJnaW4teTogMnJlbSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAwLjY2cmVtICFkZWZhdWx0O1xuXG4vLyBJbnB1dHNcbiRpbnB1dC1idG4tZm9udC1zaXplOiAxNXB4ICFkZWZhdWx0O1xuXG4vLyBCdXR0b25zXG4kYnRuLWZvbnQtd2VpZ2h0OiA1MDAgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogMC43NWVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6IDJlbSAhZGVmYXVsdDtcblxuLy8gRm9ybSBjb250cm9sc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6IDEuMmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICRncmF5LTYwMCAhZGVmYXVsdDtcblxuLy8gQm9yZGVyc1xuJGlucHV0LWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6IDNweCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIERlZmF1bHRzIHRvICRncmF5NzAwLCBvZiB3aGljaCB3ZSd2ZSBzZXQgdG8gYSBibHVlaXNoLWdyYXksIHdoaWNoIGxvb2tzIGEgYml0IHdlaXJkLi4uXG4vLyBXZSBjb3VsZCBnbyBmb3J3YXJkIHdpdGggdGhlIGJsdWUtaXNoIGdyYXksIGJ1dCBpZiB3ZSBkbywgd2UnbGwgd2FudCB0byBhbHNvIG1ha2Vcbi8vICRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyayBhIGJpdCBtb3JlIGJsdWVpc2hcbiRib3JkZXItY29sb3ItZGFyazogIzQ5NTA1NyAhZGVmYXVsdDtcblxuLy8gVGFibGVzXG4kdGFibGUtc3RyaXBlZC1iZzogcmdiYSgkcHJpbWFyeSwgMC4wNikgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6IHJnYmEoJHByaW1hcnksIDAuMSkgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1vcmRlcjogZXZlbiAhZGVmYXVsdDtcblxuLy8gQm94IFNoYWRvd3Ncbi8vID0+IFRoZXNlIGFyZSBzaGlueS1wcmVzZXQtc3BlY2lmaWMsIGhvcGluZyBCb290c3RyYXAgYWRkcyBzb21ldGhpbmcgbGlrZSB0aGlzXG4kYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2I6IDI5LCAzMSwgMzMgIWRlZmF1bHQ7XG4kYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2ItZGFyazogMCwgMCwgMCAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206XG4gIDBweCAwcHggMnB4IDBweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgMC4xNCksXG4gIDBweCAycHggNHB4IDBweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgMC4xNikgIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93OlxuICAwcHggMXB4IDJweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgLjEpLFxuICAwcHggM3B4IDdweCBSR0JBKHZhcigtLWJzbGliLWJveC1zaGFkb3ctY29sb3ItcmdiKSwgLjEpLFxuICAwcHggMTJweCAzMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMDgpICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1sZzpcbiAgMHB4IDRweCAxMHB4IFJHQkEodmFyKC0tYnNsaWItYm94LXNoYWRvdy1jb2xvci1yZ2IpLCAuMSksXG4gIDBweCAxMnB4IDMwcHggUkdCQSh2YXIoLS1ic2xpYi1ib3gtc2hhZG93LWNvbG9yLXJnYiksIDAuMTcpICFkZWZhdWx0O1xuXG4vLyBQb3BvdmVyXG4kcG9wb3Zlci1ib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuLy8gQ2FyZHNcbiRjYXJkLWJvcmRlci1yYWRpdXM6IDhweCAhZGVmYXVsdDtcblxuLy8gYnNsaWIgRGFzaGJvYXJkIFN0eWxlc1xuLy8gXCJEYXNoYm9hcmRcIiBzdHlsZXMgZ2l2ZSB5b3U6XG4vLyAqIHNvZnRlciBib3JkZXJzXG4vLyAqIHdoaXRlIGNhcmRzXG4vLyAqIGJveCBzaGFkb3cgb24gY2FyZHNcbi8vICogd2hpdGUgc2lkZWJhcnNcbi8vICogbGlnaHQgZ3JheSBiYWNrZ3JvdW5kIGluIHRoZSBtYWluIGNvbnRhaW5lcihzKVxuLy8gKiB3aGl0ZSBuYXZiYXIgYW5kIHRpdGxlIHBhbmVsXG5cbiRic2xpYi1kYXNoYm9hcmQtZGVzaWduOiB0cnVlICFkZWZhdWx0O1xuJGJzbGliLWVuYWJsZS1zaGFkb3dzOiAkYnNsaWItZGFzaGJvYXJkLWRlc2lnbiAhZGVmYXVsdDtcblxuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogaWYoJGJzbGliLWRhc2hib2FyZC1kZXNpZ24sIHJnYmEoNDAsIDcwLCA5NCwgMC4xKSwgbnVsbCkgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50LWRhcms6IGlmKCRic2xpYi1kYXNoYm9hcmQtZGVzaWduLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSksIG51bGwpICFkZWZhdWx0O1xuXG4vLyBNb2RhbHNcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6IDEwJSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiBub25lICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3AtYmc6ICM0NjQ2NDYgIWRlZmF1bHQ7XG5cbi8vIFNoaW55OiBCYXNlIHNoaW55LnNjc3MgdmFyaWFibGVzXG4kbm90aWZpY2F0aW9uLWNsb3NlLWNvbG9yOiBjdXJyZW50Q29sb3IgIWRlZmF1bHQ7XG4iLAoJCSIvLyBCUzMgaGFkIC5uYXZiYXIgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206IDIwcHggIWRlZmF1bHQ7XG5cbi8vIEJTNSsgdmFyaWFibGUgdXNlZCBmb3IgcHJlZml4aW5nIENTUyB2YXJzXG4kcHJlZml4OiBicy0gIWRlZmF1bHQ7IiwKCQkiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9ycy1tYXBcbiRncmF5czogKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9ycy1tYXBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjb2xvcnM6IChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwiYmxhY2tcIjogICAgICAkYmxhY2ssXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gU2VtYW50aWNhbGx5LCAkc2Vjb25kYXJ5IGlzIGNsb3Nlc3QgdG8gQlMzJ3MgJ2RlZmF1bHQnIHRoZW1lIGNvbG9yO1xuLy8gc28gdXNlIHRoYXQgaWYgc3BlY2lmaWVkLiBPdGhlcndpc2UsIHVzZSBhIGxpZ2h0IGluc3RlYWQgb2YgZGFyayBncmF5XG4vLyBkZWZhdWx0IGNvbG9yIGZvciAkZGVmYXVsdCBzaW5jZSB0aGF0J3MgY2xvc2VyIHRvIGJvb3RzdHJhcCAzJ3MgZGVmYXVsdFxuJGRlZmF1bHQ6IGlmKHZhcmlhYmxlLWV4aXN0cyhcInNlY29uZGFyeVwiKSwgJHNlY29uZGFyeSwgJGdyYXktMzAwKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICAvLyBkZWZhdWx0IG5lZWRzIHRvIGJlIDFzdCBzbyB0aGF0IC5idG4tZGVmYXVsdCBjb21lcyBiZWZvcmUgLmJ0bi1wcmltYXJ5XG4gIC8vICYgdGhlcmVmb3JlIGhhcyBsb3dlciBwcmlvcml0eS5cbiAgXCJkZWZhdWx0XCI6ICAgICRkZWZhdWx0LFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuJHByaW1hcnktdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktdGV4dC1lbXBoYXNpczogc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby10ZXh0LWVtcGhhc2lzOiAgICAgIHNoYWRlLWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItdGV4dC1lbXBoYXNpczogICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC10ZXh0LWVtcGhhc2lzOiAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpczogICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZTogICAgIHRpbnQtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgODAlKSAhZGVmYXVsdDtcbiRpbmZvLWJnLXN1YnRsZTogICAgICAgICAgdGludC1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlOiAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA4MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJnLXN1YnRsZTogICAgICAgICBtaXgoJGdyYXktMTAwLCAkd2hpdGUpICFkZWZhdWx0O1xuJGRhcmstYmctc3VidGxlOiAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6IHRpbnQtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLWJvcmRlci1zdWJ0bGU6ICAgICAgdGludC1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZTogICAgdGludC1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJvcmRlci1zdWJ0bGU6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY29udGFpbmVyLWNsYXNzZXM6ICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtZGFyay1tb2RlOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kY29sb3ItbW9kZS10eXBlOiAgICAgICAgICAgICBkYXRhICFkZWZhdWx0OyAvLyBgZGF0YWAgb3IgYG1lZGlhLXF1ZXJ5YFxuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRib2R5LXNlY29uZGFyeS1jb2xvcjogICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGJvZHktdGVydGlhcnktY29sb3I6ICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWVtcGhhc2lzLWNvbG9yOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gSWNvbiBsaW5rc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGljb24tbGluay12YXJpYWJsZXNcbiRpY29uLWxpbmstZ2FwOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ6ICAuMjVlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi1zaXplOiAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uOiAgIC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGljb24tbGluay12YXJpYWJsZXNcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcbiRib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgIHNvbGlkICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogICAgcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteGw6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXh4bDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbi8vIGZ1c3YtZGlzYWJsZVxuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMteHhsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgY29sb3ItY29udHJhc3QoJGNvbXBvbmVudC1hY3RpdmUtYmcpICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9jdXMtcmluZy12YXJpYWJsZXNcbiRmb2N1cy1yaW5nLXdpZHRoOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLW9wYWNpdHk6ICAgIC4yNSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiAgICAgIHJnYmEoJHByaW1hcnksICRmb2N1cy1yaW5nLW9wYWNpdHkpICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYmx1cjogICAgICAgMCAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJveC1zaGFkb3c6IDAgMCAkZm9jdXMtcmluZy1ibHVyICRmb2N1cy1yaW5nLXdpZHRoICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgICA2MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC1zdHlsZTogIG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gNS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWJvcmRlci13aWR0aDogICAgICRzcGFjZXIgLyA0ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kaHItYmctY29sb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuJGhyLWhlaWdodDogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIEFsbG93cyBmb3IgaW5oZXJpdGVkIGNvbG9yc1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kaHItb3BhY2l0eTogICAgICAgICAgICAgICAgICAuMjUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCB2ci12YXJpYWJsZXNcbiR2ci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2ci12YXJpYWJsZXNcblxuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4xODc1ZW0gIWRlZmF1bHQ7XG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAkeWVsbG93LTEwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItZmFjdG9yOiAgICAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcjogZXZlbiAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudGNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgJGZvY3VzLXJpbmctd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6ICRmb2N1cy1yaW5nLW9wYWNpdHkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ibHVyOiAgICAgICAgICAkZm9jdXMtcmluZy1ibHVyICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1idG4tdmFyaWFibGVzXG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhYmxlc1xuJGJ0bi1jb2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogMikgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tY29sb3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGc6ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtdHJhbnNpdGlvbjogICAgICAgICAgJGlucHV0LXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAgICAgICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0OiAgICAgICAgICAgIDEuNWVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgICAgICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICAgICAgICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcbiRmb3JtLXZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IChcbiAgXCJ2YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1zdWNjZXNzKSxcbiAgICBcImZvY3VzLWJveC1zaGFkb3dcIjogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSh2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvciksXG4gICksXG4gIFwiaW52YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyKSxcbiAgICBcImZvY3VzLWJveC1zaGFkb3dcIjogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3IpLFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3A6ICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNDUgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1NSAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuJHppbmRleC10b2FzdDogICAgICAgICAgICAgICAgICAgICAgMTA5MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtbGV2ZWxzLW1hcFxuJHppbmRleC1sZXZlbHM6IChcbiAgbjE6IC0xLFxuICAwOiAwLFxuICAxOiAxLFxuICAyOiAyLFxuICAzOiAzXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtbGV2ZWxzLW1hcFxuXG5cbi8vIE5hdnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi12YXJpYWJsZXNcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgIGNvbG9yLWNvbnRyYXN0KCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcsICRjb21wb25lbnQtYWN0aXZlLWNvbG9yKSAhZGVmYXVsdDtcblxuJG5hdi11bmRlcmxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdmFyaWFibGVzXG5cblxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdmFyaWFibGVzXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItYmc6ICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIEJhY2tncm91bmQgY29sb3IgZm9yIGFueSBuYXZiYXJQYWdlKClcbiRuYXZiYXItbGlnaHQtYmc6ICRuYXZiYXItYmcgIWRlZmF1bHQ7IC8vIEJhY2tncm91bmQgY29sb3IgZm9yIG5hdmJhclBhZ2UoaW52ZXJzZSA9IEZBTFNFKVxuJG5hdmJhci1kYXJrLWJnOiAgJG5hdmJhci1iZyAhZGVmYXVsdDsgLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgbmF2YmFyUGFnZShpbnZlcnNlID0gVFJVRSlcblxuJG5hdmJhci1saWdodC1jb250cmFzdDogaWYoXG4gIHR5cGUtb2YoJG5hdmJhci1saWdodC1iZykgPT0gY29sb3IsXG4gIGNvbG9yLWNvbnRyYXN0KCRuYXZiYXItbGlnaHQtYmcpLFxuICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKVxuKSAhZGVmYXVsdDsgLy8gRGVlcGVzdCBjb250cmFzdGluZyBjb2xvciBmb3IgbmF2YmFyUGFnZShpbnZlcnNlID0gRkFMU0UpLlxuJG5hdmJhci1kYXJrLWNvbnRyYXN0OiBpZihcbiAgdHlwZS1vZigkbmF2YmFyLWRhcmstYmcpID09IGNvbG9yLFxuICBjb2xvci1jb250cmFzdCgkbmF2YmFyLWRhcmstYmcpLFxuICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKVxuKSAhZGVmYXVsdDsgLy8gRGVlcGVzdCBjb250cmFzdGluZyBjb2xvciBmb3IgbmF2YmFyUGFnZShpbnZlcnNlID0gVFJVRSkuXG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJG5hdmJhci1saWdodC1jb250cmFzdCwgLjY1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJG5hdmJhci1saWdodC1jb250cmFzdCwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkbmF2YmFyLWxpZ2h0LWNvbnRyYXN0LCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJG5hdmJhci1saWdodC1jb250cmFzdCwgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1pY29uLWNvbG9yOiAgICAgICAgICAgcmdiYShpZih0eXBlLW9mKCRuYXZiYXItbGlnaHQtY29udHJhc3QpPT1jb2xvciwgJG5hdmJhci1saWdodC1jb250cmFzdCwgJGJvZHktY29sb3IpLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJG5hdmJhci1saWdodC1jb250cmFzdCwgLjE1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkbmF2YmFyLWRhcmstY29udHJhc3QsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRuYXZiYXItZGFyay1jb250cmFzdCwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJG5hdmJhci1kYXJrLWNvbnRyYXN0LCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWljb24tY29sb3I6ICAgICAgICAgICAgcmdiYShpZih0eXBlLW9mKCRuYXZiYXItZGFyay1jb250cmFzdCk9PWNvbG9yLCAkbmF2YmFyLWRhcmstY29udHJhc3QsICR3aGl0ZSksIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1pY29uLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCRuYXZiYXItZGFyay1jb250cmFzdCwgLjEpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLXZhcmlhYmxlc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIGNhbGMoI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c30gLSAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIGNvbG9yLWNvbnRyYXN0KCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZywgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH0gKiAtMSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tdmFyaWFibGVzXG5cbi8vIFRvb2x0aXBzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLXZhcmlhYmxlc1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFRPRE86IHJlbW92ZSB0aGlzIGluIHY2XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcblxuXG4vLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci12YXJpYWJsZXNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBjYWxjKCN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGFsZXJ0LWJnLXNjYWxlOiAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAtNzAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy12YXJpYWJsZXNcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgY29sb3ItY29udHJhc3QoJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuLy8gQW1vdW50IGludGVudGlvbmFsbHkgbWF0Y2hlcyBtaXh0dXJlIGFtb3VudCBvZiBzaGlueTo6aW5wdXRQYW5lbCgpXG4vLyBodHRwczovL2dpdGh1Yi5jb20vcnN0dWRpby9zaGlueS9ibG9iLzRlZWI0YTEvaW5zdC93d3cvc2hhcmVkL3NoaW55X3Njc3MvYm9vdHN0cmFwLnNjc3MjTDI1XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IsIDAsMCwwKSwgMC4wNCkgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBSR0IodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiwgMCwwLDApKSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgIFJHQih2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiLCAwLDAsMCkpICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMTg3NXJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgcmVtb3ZpbmcgaW4gdjZcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvZGUtYmcgICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGNvZGUtY29sb3IgIWRlZmF1bHQ7XG4iLAoJCSIvLyBEYXJrIGNvbG9yIG1vZGUgdmFyaWFibGVzXG4vL1xuLy8gQ3VzdG9tIHZhcmlhYmxlcyBmb3IgdGhlIGBbZGF0YS1icy10aGVtZT1cImRhcmtcIl1gIHRoZW1lLiBVc2UgdGhpcyBhcyBhIHN0YXJ0aW5nIHBvaW50IGZvciB5b3VyIG93biBjdXN0b20gY29sb3IgbW9kZXMgYnkgY3JlYXRpbmcgYSBuZXcgdGhlbWUtc3BlY2lmaWMgZmlsZSBsaWtlIGBfdmFyaWFibGVzLWRhcmsuc2Nzc2AgYW5kIGFkZGluZyB0aGUgdmFyaWFibGVzIHlvdSBuZWVkLlxuXG4vL1xuLy8gR2xvYmFsIGNvbG9yc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNhc3MtZGFyay1tb2RlLXZhcnNcbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LWRhcmstdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgNDAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDQwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA0MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA0MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LWRhcmstdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICBzaGFkZS1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICBtaXgoJGdyYXktODAwLCAkYmxhY2spICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtZGFyay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNDAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA0MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDQwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICBzaGFkZS1jb2xvcigkd2FybmluZywgNDAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDQwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtZGFyay12YXJpYWJsZXNcblxuJGJvZHktY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvZHktYmctZGFyazogICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcms6ICAgICAgICAgcmdiYSgkYm9keS1jb2xvci1kYXJrLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnLWRhcms6ICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktY29sb3ItZGFyazogICAgICAgICAgcmdiYSgkYm9keS1jb2xvci1kYXJrLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZy1kYXJrOiAgICAgICAgICAgICBtaXgoJGdyYXktODAwLCAkZ3JheS05MDAsIDUwJSkgIWRlZmF1bHQ7XG4kYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50LWRhcms6ICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvci1kYXJrOiAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kbGluay1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3ItZGFyazogICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3ItZGFyaywgLSRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGNvZGUtY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29kZS1jb2xvciwgNDAlKSAhZGVmYXVsdDtcblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3ItZGFyazogICRib2R5LWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcms6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3ItZGFya30nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jb2xvci1kYXJrOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcms6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3ItZGFya30nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzLWRhcmtcbiRmb3JtLXZhbGlkLWNvbG9yLWRhcms6ICAgICAgICAgICAgICRncmVlbi0zMDAgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3ItZGFyazogICAgICAkZ3JlZW4tMzAwICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvci1kYXJrOiAgICAgICAgICAgJHJlZC0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvci1kYXJrOiAgICAkcmVkLTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLWNvbG9ycy1kYXJrXG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuJGFjY29yZGlvbi1pY29uLWNvbG9yLWRhcms6ICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvci1kYXJrOiAgJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uLWRhcms6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yLWRhcmt9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbi1kYXJrOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvci1kYXJrfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzYXNzLWRhcmstbW9kZS12YXJzXG4iLAoJCSIvLyBSZS1hc3NpZ25lZCBtYXBzXG4vL1xuLy8gUGxhY2VkIGhlcmUgc28gdGhhdCBvdGhlcnMgY2FuIG92ZXJyaWRlIHRoZSBkZWZhdWx0IFNhc3MgbWFwcyBhbmQgc2VlIGF1dG9tYXRpYyB1cGRhdGVzIHRvIHV0aWxpdGllcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1yZ2JcbiR0aGVtZS1jb2xvcnMtcmdiOiBtYXAtbG9vcCgkdGhlbWUtY29sb3JzLCB0by1yZ2IsIFwiJHZhbHVlXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtcmdiXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LW1hcFxuJHRoZW1lLWNvbG9ycy10ZXh0OiAoXG4gIFwicHJpbWFyeVwiOiAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLFxuICBcImluZm9cIjogJGluZm8tdGV4dC1lbXBoYXNpcyxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLXRleHQtZW1waGFzaXMsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItdGV4dC1lbXBoYXNpcyxcbiAgXCJsaWdodFwiOiAkbGlnaHQtdGV4dC1lbXBoYXNpcyxcbiAgXCJkYXJrXCI6ICRkYXJrLXRleHQtZW1waGFzaXMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLW1hcFxuJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGU6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJnLXN1YnRsZSxcbiAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1iZy1zdWJ0bGUsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1iZy1zdWJ0bGUsXG4gIFwiaW5mb1wiOiAkaW5mby1iZy1zdWJ0bGUsXG4gIFwid2FybmluZ1wiOiAkd2FybmluZy1iZy1zdWJ0bGUsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItYmctc3VidGxlLFxuICBcImxpZ2h0XCI6ICRsaWdodC1iZy1zdWJ0bGUsXG4gIFwiZGFya1wiOiAkZGFyay1iZy1zdWJ0bGUsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLW1hcFxuJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlOiAoXG4gIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1ib3JkZXItc3VidGxlLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1ib3JkZXItc3VidGxlLFxuICBcImluZm9cIjogJGluZm8tYm9yZGVyLXN1YnRsZSxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJvcmRlci1zdWJ0bGUsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItYm9yZGVyLXN1YnRsZSxcbiAgXCJsaWdodFwiOiAkbGlnaHQtYm9yZGVyLXN1YnRsZSxcbiAgXCJkYXJrXCI6ICRkYXJrLWJvcmRlci1zdWJ0bGUsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLW1hcFxuXG4kdGhlbWUtY29sb3JzLXRleHQtZGFyazogbnVsbCAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcms6IG51bGwgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyazogbnVsbCAhZGVmYXVsdDtcblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtZGFyay1tYXBcbiAgJHRoZW1lLWNvbG9ycy10ZXh0LWRhcms6IChcbiAgICBcInByaW1hcnlcIjogJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJpbmZvXCI6ICRpbmZvLXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcIndhcm5pbmdcIjogJHdhcm5pbmctdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXItdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwibGlnaHRcIjogJGxpZ2h0LXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcImRhcmtcIjogJGRhcmstdGV4dC1lbXBoYXNpcy1kYXJrLFxuICApICFkZWZhdWx0O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtZGFyay1tYXBcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLWRhcmstbWFwXG4gICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcms6IChcbiAgICBcInByaW1hcnlcIjogJHByaW1hcnktYmctc3VidGxlLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1iZy1zdWJ0bGUtZGFyayxcbiAgICBcInN1Y2Nlc3NcIjogJHN1Y2Nlc3MtYmctc3VidGxlLWRhcmssXG4gICAgXCJpbmZvXCI6ICRpbmZvLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy1iZy1zdWJ0bGUtZGFyayxcbiAgICBcImRhbmdlclwiOiAkZGFuZ2VyLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwibGlnaHRcIjogJGxpZ2h0LWJnLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay1iZy1zdWJ0bGUtZGFyayxcbiAgKSAhZGVmYXVsdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtZGFyay1tYXBcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLW1hcFxuICAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJkYW5nZXJcIjogJGRhbmdlci1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay1ib3JkZXItc3VidGxlLWRhcmssXG4gICkgIWRlZmF1bHQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLW1hcFxufVxuXG4vLyBVdGlsaXRpZXMgbWFwc1xuLy9cbi8vIEV4dGVuZHMgdGhlIGRlZmF1bHQgYCR0aGVtZS1jb2xvcnNgIG1hcHMgdG8gaGVscCBjcmVhdGUgb3VyIHV0aWxpdGllcy5cblxuLy8gQ29tZSB2Niwgd2UnbGwgZGUtZHVwZSB0aGVzZSB2YXJpYWJsZXMuIFVudGlsIHRoZW4sIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSBrZWVwIHRoZW0gdG8gcmVhc3NpZ24uXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWNvbG9yc1xuJHV0aWxpdGllcy1jb2xvcnM6ICR0aGVtZS1jb2xvcnMtcmdiICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcbiR1dGlsaXRpZXMtdGV4dDogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWNvbG9yKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy10ZXh0LWNvbG9yczogbWFwLWxvb3AoJHV0aWxpdGllcy10ZXh0LCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcInRleHRcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtdGV4dC1lbXBoYXNpcy1jb2xvcnM6IChcbiAgXCJwcmltYXJ5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpLFxuICBcInNlY29uZGFyeS1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LXRleHQtZW1waGFzaXMpLFxuICBcInN1Y2Nlc3MtZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtdGV4dC1lbXBoYXNpcyksXG4gIFwiaW5mby1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby10ZXh0LWVtcGhhc2lzKSxcbiAgXCJ3YXJuaW5nLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLXRleHQtZW1waGFzaXMpLFxuICBcImRhbmdlci1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLXRleHQtZW1waGFzaXMpLFxuICBcImxpZ2h0LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC10ZXh0LWVtcGhhc2lzKSxcbiAgXCJkYXJrLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLXRleHQtZW1waGFzaXMpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1iZy1jb2xvcnNcbiR1dGlsaXRpZXMtYmc6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1iZylcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtYmctY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJnLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJnXCIpICFkZWZhdWx0O1xuXG4kdXRpbGl0aWVzLWJnLXN1YnRsZTogKFxuICBcInByaW1hcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSksXG4gIFwic2Vjb25kYXJ5LXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXN1YnRsZSksXG4gIFwic3VjY2Vzcy1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtYmctc3VidGxlKSxcbiAgXCJpbmZvLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby1iZy1zdWJ0bGUpLFxuICBcIndhcm5pbmctc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLWJnLXN1YnRsZSksXG4gIFwiZGFuZ2VyLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLWJnLXN1YnRsZSksXG4gIFwibGlnaHQtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC1iZy1zdWJ0bGUpLFxuICBcImRhcmstc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLWJnLXN1YnRsZSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1iZy1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1ib3JkZXItY29sb3JzXG4kdXRpbGl0aWVzLWJvcmRlcjogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1ib3JkZXItY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJvcmRlciwgcmdiYS1jc3MtdmFyLCBcIiRrZXlcIiwgXCJib3JkZXJcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtYm9yZGVyLXN1YnRsZTogKFxuICBcInByaW1hcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJvcmRlci1zdWJ0bGUpLFxuICBcInNlY29uZGFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1ib3JkZXItc3VidGxlKSxcbiAgXCJzdWNjZXNzLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1ib3JkZXItc3VidGxlKSxcbiAgXCJpbmZvLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby1ib3JkZXItc3VidGxlKSxcbiAgXCJ3YXJuaW5nLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9d2FybmluZy1ib3JkZXItc3VidGxlKSxcbiAgXCJkYW5nZXItc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItYm9yZGVyLXN1YnRsZSksXG4gIFwibGlnaHQtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC1ib3JkZXItc3VidGxlKSxcbiAgXCJkYXJrLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFyay1ib3JkZXItc3VidGxlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcblxuJHV0aWxpdGllcy1saW5rcy11bmRlcmxpbmU6IG1hcC1sb29wKCR1dGlsaXRpZXMtY29sb3JzLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImxpbmstdW5kZXJsaW5lXCIpICFkZWZhdWx0O1xuXG4kbmVnYXRpdmUtc3BhY2VyczogaWYoJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zLCBuZWdhdGl2aWZ5LW1hcCgkc3BhY2VycyksIG51bGwpICFkZWZhdWx0O1xuXG4kZ3V0dGVyczogJHNwYWNlcnMgIWRlZmF1bHQ7XG4iLAoJCSIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbG9yLW1vZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3Itc2NoZW1lXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXN1YWxseS1oaWRkZW5cIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy91dGlsaXRpZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9iYWNrZHJvcFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtdmFyaWFudHNcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jb250YWluZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwKCQkiLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kaW1lbnNpb24tbm8tbm9uLW51bWVyaWMtdmFsdWVzXG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgdmFsdWVzIGZvciBmb250IHNpemVzLCBwYWRkaW5ncywgbWFyZ2lucyBhbmQgbXVjaCBtb3JlXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYWluL0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSB2YWx1ZVxuJHJmcy1iYXNlLXZhbHVlOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLXVuaXQgIT0gcmVtIGFuZCAkcmZzLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIHZhbHVlcyBzdGFydCBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSB2YWx1ZXMgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBudW1iZXIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBNb2RlLiBQb3NzaWJpbGl0aWVzOiBcIm1pbi1tZWRpYS1xdWVyeVwiLCBcIm1heC1tZWRpYS1xdWVyeVwiXG4kcmZzLW1vZGU6IG1pbi1tZWRpYS1xdWVyeSAhZGVmYXVsdDtcblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJmcyB0byBmYWxzZVxuJGVuYWJsZS1yZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS12YWx1ZSB1bml0XG4kcmZzLWJhc2UtdmFsdWUtdW5pdDogdW5pdCgkcmZzLWJhc2UtdmFsdWUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS12YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcHgge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsICRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcHgge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBtZWRpYSBxdWVyeSB2YWx1ZVxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLXJ1bGUge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XG4gICAgJixcbiAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgLmVuYWJsZS1yZnMgJixcbiAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICAuZW5hYmxlLXJmcyAmLFxuICAgICAgJi5lbmFibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcbkBmdW5jdGlvbiByZnMtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgQGlmICR1bml0ID09IHB4IHtcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkdW5pdCA9PSByZW0ge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIHJlc3BvbnNpdmUgdmFsdWUgY2FsY3VsYXRlZCBieSBSRlNcbkBmdW5jdGlvbiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgQGlmIG5vdCAkdW5pdCBvciAkdW5pdCAhPSBweCBhbmQgJHVuaXQgIT0gcmVtIHtcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZX1weCk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1taW46ICRyZnMtYmFzZS12YWx1ZSArIGRpdmlkZShhYnMoJHZhbHVlKSAtICRyZnMtYmFzZS12YWx1ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkdmFsdWUgYW5kIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLWRpZmY6IGFicygkdmFsdWUpIC0gJHZhbHVlLW1pbjtcblxuICAgICAgICAgIC8vIEJhc2UgdmFsdWUgZm9ybWF0dGluZ1xuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZS1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlLW1pbn1weCk7XG5cbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHZhbHVlIDwgMCwgLSRtaW4td2lkdGgsICRtaW4td2lkdGgpO1xuXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJHZhbHVlLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgY2FsYyhcIiArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCBcIiAtIFwiLCBcIiArIFwiKSArICR2YXJpYWJsZS13aWR0aCArIFwiKVwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZC12YWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcblxuICAgIC8vIERvIG5vdCBwcmludCB0aGUgbWVkaWEgcXVlcnkgaWYgcmVzcG9uc2l2ZSAmIG5vbi1yZXNwb25zaXZlIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWQtdmFsIHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWQtdmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkLXZhbCwgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlKTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcbn1cblxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctcmlnaHQpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcbn1cblxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luKTtcbn1cblxuQG1peGluIG1hcmdpbi10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBtYXJnaW4tbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xufVxuIiwKCQkiLy8gRGVwcmVjYXRlIG1peGluXG4vL1xuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cbi8vIGAkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzYCBpcyBhIGdsb2JhbCB2YXJpYWJsZSwgYCRpZ25vcmUtd2FybmluZ2AgaXMgYSB2YXJpYWJsZSB0aGF0IGNhbiBiZSBwYXNzZWQgdG9cbi8vIHNvbWUgZGVwcmVjYXRlZCBtaXhpbnMgdG8gc3VwcHJlc3MgdGhlIHdhcm5pbmcgKGZvciBleGFtcGxlIGlmIHRoZSBtaXhpbiBpcyBzdGlsbCBiZSB1c2VkIGluIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgQm9vdHN0cmFwKVxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgQGlmICgkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzICE9IGZhbHNlIGFuZCAkaWdub3JlLXdhcm5pbmcgIT0gdHJ1ZSkge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiAjeyRkZXByZWNhdGUtdmVyc2lvbn0uIEl0IHdpbGwgYmUgcmVtb3ZlZCBlbnRpcmVseSBpbiAjeyRyZW1vdmUtdmVyc2lvbn0uXCI7XG4gIH1cbn1cbiIsCgkJIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwKCQkiLy8gc2Nzcy1kb2NzLXN0YXJ0IG1peGluLWNvbG9yLXNjaGVtZVxuQG1peGluIGNvbG9yLXNjaGVtZSgkbmFtZSkge1xuICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAjeyRuYW1lfSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1peGluLWNvbG9yLXNjaGVtZVxuIiwKCQkiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwKCQkiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsCgkJIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwKCQkiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLAoJCSIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsCgkJIi8vIFV0aWxpdHkgZ2VuZXJhdG9yXG4vLyBVc2VkIHRvIGdlbmVyYXRlIHV0aWxpdGllcyAmIHByaW50IHV0aWxpdGllc1xuQG1peGluIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeDogXCJcIiwgJGlzLXJmcy1tZWRpYS1xdWVyeTogZmFsc2UpIHtcbiAgJHZhbHVlczogbWFwLWdldCgkdXRpbGl0eSwgdmFsdWVzKTtcblxuICAvLyBJZiB0aGUgdmFsdWVzIGFyZSBhIGxpc3Qgb3Igc3RyaW5nLCBjb252ZXJ0IGl0IGludG8gYSBtYXBcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gXCJzdHJpbmdcIiBvciB0eXBlLW9mKG50aCgkdmFsdWVzLCAxKSkgIT0gXCJsaXN0XCIge1xuICAgICR2YWx1ZXM6IHppcCgkdmFsdWVzLCAkdmFsdWVzKTtcbiAgfVxuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAkcHJvcGVydGllczogbWFwLWdldCgkdXRpbGl0eSwgcHJvcGVydHkpO1xuXG4gICAgLy8gTXVsdGlwbGUgcHJvcGVydGllcyBhcmUgcG9zc2libGUsIGZvciBleGFtcGxlIHdpdGggdmVydGljYWwgb3IgaG9yaXpvbnRhbCBtYXJnaW5zIG9yIHBhZGRpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHByb3BlcnRpZXMpID09IFwic3RyaW5nXCIge1xuICAgICAgJHByb3BlcnRpZXM6IGFwcGVuZCgoKSwgJHByb3BlcnRpZXMpO1xuICAgIH1cblxuICAgIC8vIFVzZSBjdXN0b20gY2xhc3MgaWYgcHJlc2VudFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNsYXNzKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpLCBudGgoJHByb3BlcnRpZXMsIDEpKTtcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBudWxsLCBcIlwiLCAkcHJvcGVydHktY2xhc3MpO1xuXG4gICAgLy8gVXNlIGN1c3RvbSBDU1MgdmFyaWFibGUgbmFtZSBpZiBwcmVzZW50LCBvdGhlcndpc2UgZGVmYXVsdCB0byBgY2xhc3NgXG4gICAgJGNzcy12YXJpYWJsZS1uYW1lOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlLmcuIHdpdGggc2hhZG93IGNsYXNzKVxuICAgICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcjogaWYoJGtleSwgaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kICRpbmZpeCA9PSBcIlwiLCBcIlwiLCBcIi1cIikgKyAka2V5LCBcIlwiKTtcblxuICAgIEBpZiBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIHtcbiAgICAgIC8vIEluc2lkZSB0aGUgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiAkaXMtcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZSk7XG5cbiAgICAgICAgLy8gRG8gbm90IHJlbmRlciBhbnl0aGluZyBpZiBmbHVpZCBhbmQgbm9uIGZsdWlkIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICAgICAgJHZhbHVlOiBpZigkdmFsID09IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpLCBudWxsLCAkdmFsKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHZhbHVlOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkaXMtY3NzLXZhcjogbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcik7XG4gICAgJGlzLWxvY2FsLXZhcnM6IG1hcC1nZXQoJHV0aWxpdHksIGxvY2FsLXZhcnMpO1xuICAgICRpcy1ydGw6IG1hcC1nZXQoJHV0aWxpdHksIHJ0bCk7XG5cbiAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6YmVnaW46cmVtb3ZlICovXG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtY3NzLXZhciB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLAoJCSIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsCgkJIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLAoJCSIvLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLW1peGluXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1taXhpblxuIiwKCQkiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsCgkJIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSxcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb246ICN7ZXNjYXBlLXN2ZygkaWNvbil9O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbiwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLAoJCSIvLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFudFxuQG1peGluIHRhYmxlLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KG9wYXF1ZSgkYm9keS1iZywgJGJhY2tncm91bmQpKTtcbiAgICAkaG92ZXItYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpKTtcbiAgICAkc3RyaXBlZC1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSk7XG4gICAgJGFjdGl2ZS1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpKTtcbiAgICAkdGFibGUtYm9yZGVyLWNvbG9yOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYm9yZGVyLWZhY3RvcikpO1xuXG4gICAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JGNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZzogI3skYmFja2dyb3VuZH07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJHN0cmlwZWQtYmcpfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skaG92ZXItYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xuXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYW50XG4iLAoJCSIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLAoJCSJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRzaGFkb3cge1xuICAgICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSwgXCJjb21tYVwiKTtcbiAgICAgIH1cbiAgICAgIEBpZiAkdmFsdWUgPT0gbm9uZSBhbmQgbGVuZ3RoKCRzaGFkb3cpID4gMSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsCgkJIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLAoJCSIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwKCQkiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIC13ZWJraXQtZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gIH1cbn1cblxuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXg6IDEgMCAwJTsgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICAgIC13ZWJraXQtZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQlM1KyBkYXJrIGNvbG9yIG1vZGUgZm9yZWdyb3VuZCBjb2xvclxuJGVtcGhhc2lzLWNvbG9yLXJnYjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiwgMCwwLDApICFkZWZhdWx0O1xuXG4vLyBDYXJkcyBhcmUgd2hpdGUgYnkgZGVmYXVsdCwgYnV0IHdlIHdhbnQgYSBzbWFydGVyIGRlZmF1bHQgZm9yIC53ZWxsXG4vLyB0aGF0IGl0IGFwcGVhcnMgZ3JheSBieSBkZWZhdWx0XG4kd2VsbC1iZzogaWYoJGJvb3RzdHJhcC12ZXJzaW9uPj01LCBSR0JBKCRlbXBoYXNpcy1jb2xvci1yZ2IsIC4wMyksIHJnYmEoJGJsYWNrLCAuMDMpKSAhZGVmYXVsdDtcbiR3ZWxsLWNvbG9yOiBpZigkYm9vdHN0cmFwLXZlcnNpb24+PTUsIFJHQigkZW1waGFzaXMtY29sb3ItcmdiKSwgJGJvZHktY29sb3IpICFkZWZhdWx0O1xuXG4vLyBCb290c3RyYXAgNS4zLjEgKyBzZWxlY3RpemUuanMgdjAuMTIuNCAoaS5lLiwgc2hpbnkgdjEuNy41KSBzaGltXG4vL1xuLy8gU3RhcnRpbmcgd2l0aCA1LjMueCwgQm9vdHN0cmFwIHN0YXJ0ZWQgaGF2aW5nIFNhc3MgdmFyaWFibGVzIGRlZmF1bHQgdG8gQ1NTXG4vLyB2YXJpYWJsZXMgKGUuZy4sICRpbnB1dC1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcikpLCB3aGljaCBpcyBwcm9ibGVtYXRpYyBmb3Jcbi8vIGNvbXB1YXRpb24gdGhhdCBoYXBwZW5zIGluIFNhc3MgKGUuZy4sIGBtaXgoJGNvbG9yMSwgJGNvbG9yMilgKS4gVGhpcyBidW5kbGVcbi8vIGZpeGVzIHRoaXMgcHJvYmxlbSBmb3Igc2hpbnk6OnNlbGVjdGl6ZUlucHV0KCkncyBTYXNzIGNvZGUgKGZ1dHVyZSB2ZXJzaW9ucyBvZlxuLy8gc2VsZWN0aXplSW5wdXQoKSBzaG91bGQgaG9wZWZ1bGx5IGFkZHJlc3MgdGhpcyBwcm9ibGVtLCBtYWtpbmcgdGhpcyB0ZW1wb3Jhcnlcbi8vIHN0b3BnYXAgc29sdXRpb24gbm8gbG9uZ2VyIHJlcXVpcmVkKS5cbiRzZWxlY3RpemUtY29sb3ItdGV4dDogaWYoaXMtY3NzLXZhcmlhYmxlKCRpbnB1dC1jb2xvciksICRib2R5LWNvbG9yLCAkaW5wdXQtY29sb3IpICFkZWZhdWx0O1xuJHNlbGVjdGl6ZS1jb2xvci1pdGVtOiByZ2JhKCRzZWxlY3RpemUtY29sb3ItdGV4dCwgMC4xKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItaXRlbS1ib3JkZXI6IGlmKGlzLWNzcy12YXJpYWJsZSgkaW5wdXQtYm9yZGVyLWNvbG9yKSwgJGJvcmRlci1jb2xvciwgJGlucHV0LWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kc2VsZWN0aXplLWNvbG9yLWRyb3Bkb3duOiBpZihpcy1jc3MtdmFyaWFibGUoJGRyb3Bkb3duLWJnKSwgJGJvZHktYmcsICRkcm9wZG93bi1iZykgIWRlZmF1bHQ7XG4kc2VsZWN0aXplLWNvbG9yLWRyb3Bkb3duLWJvcmRlci10b3A6IHJnYmEoJGlucHV0LWJvcmRlci1jb2xvciwgMC4yKSAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24taXRlbS1jcmVhdGUtdGV4dDogcmdiYSgkc2VsZWN0aXplLWNvbG9yLXRleHQsIDAuNSkgIWRlZmF1bHQ7XG5AaWYgdmFyaWFibGUtZXhpc3RzKFwiaW5wdXQtYnRuLWZvbnQtc2l6ZVwiKSB7XG4gICRzZWxlY3RpemUtZm9udC1zaXplOiAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbn0gQGVsc2UgaWYgdmFyaWFibGUtZXhpc3RzKFwiZm9udC1zaXplLWJhc2VcIikge1xuICAkc2VsZWN0aXplLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xufVxuJHNlbGVjdGl6ZS1mb250LWZhbWlseTogaWYoJGlucHV0LWJ0bi1mb250LWZhbWlseSwgJGlucHV0LWJ0bi1mb250LWZhbWlseSwgaW5oZXJpdCkgIWRlZmF1bHQ7XG4iLAoJCSIvLyBBY2NvcmRpb25zXG4vLyBUaGVzZSBkZWZpbml0aW9ucyBjYW4ndCBnbyBpbiBfZGVmYXVsdHMuc2NzcyB3aXRoIGEgIWRlZmF1bHQgZmxhZyAoYmVjYXVzZSAhZGVmYXVsdCBkb2Vzbid0IHJlc3BlY3QgbnVsbClcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogbnVsbDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogbnVsbDtcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6IG51bGw7XG5cbi8vIFNoaW55OiBzZWxlY3RJbnB1dCgpIGFuZCBzZWxlY3RpemVJbnB1dCgpXG4kc2VsZWN0aXplLWNvbG9yLWRyb3Bkb3duLWl0ZW0tYWN0aXZlOiAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRzZWxlY3RpemUtY29sb3ItZHJvcGRvd24taXRlbS1hY3RpdmUtdGV4dDogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIENvbXBvbmVudCBWYXJpYWJsZXNcbkBpbXBvcnQgXCJpb25yYW5nZXNsaWRlci9fdmFyaWFibGVzLnNjc3NcIjtcbiIsCgkJIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9yc3R1ZGlvL3NoaW55L2Jsb2IvbWFpbi9pbnN0L3d3dy9zaGFyZWQvaW9ucmFuZ2VzbGlkZXIvc2Nzcy9zaGlueS5zY3NzXG5cbiRlbXBoYXNpcy1jb2xvci1yZ2I6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYiwgMCwgMCwgMCkgIWRlZmF1bHQ7XG5cbiRtaW5tYXhfYmdfY29sb3I6IFJHQkEoJGVtcGhhc2lzLWNvbG9yLXJnYiwgMC4xKSAhZGVmYXVsdDtcblxuJHRvcDogMzJweCAhZGVmYXVsdDtcblxuJGxpbmVfaGVpZ2h0OiAxcHggIWRlZmF1bHQ7XG4kbGluZV9iZzogbm9uZSAhZGVmYXVsdDtcbiRsaW5lX2JnX2NvbG9yOiBSR0JBKCRlbXBoYXNpcy1jb2xvci1yZ2IsIDAuNjUpICFkZWZhdWx0O1xuJGxpbmVfYm9yZGVyOiBub25lICFkZWZhdWx0O1xuXG4kaGFuZGxlX2NvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRoYW5kbGVfY29sb3JfaG92ZXI6IHRpbnQtY29sb3IoJGhhbmRsZV9jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRoYW5kbGVfYm9yZGVyOiBub25lICFkZWZhdWx0O1xuJGhhbmRsZV9ib3hfc2hhZG93OiBub25lICFkZWZhdWx0O1xuJGhhbmRsZV9yYWRpdXM6ICR0b3AgLSAxMHB4ICFkZWZhdWx0O1xuJGhhbmRsZV9oZWlnaHQ6IDE5cHggIWRlZmF1bHQ7XG4kaGFuZGxlX3dpZHRoOiAkaGFuZGxlX2hlaWdodCAhZGVmYXVsdDtcblxuJGJhcl9jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRncmlkX21ham9yX2NvbG9yOiBSR0JBKCRlbXBoYXNpcy1jb2xvci1yZ2IsIDAuNjUpICFkZWZhdWx0O1xuJGdyaWRfbWlub3JfY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGdyaWRfdGV4dF9jb2xvcjogUkdCQSgkZW1waGFzaXMtY29sb3ItcmdiLCAwLjg1KSAhZGVmYXVsdDtcbiIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBQW9CQSxBQUFBLElBQUksQUFBQSxXQUFXLENBQUM7RUFHZCxVQUFVLEVBRlEsR0FBRztDQWtFdEI7O0FBbkVELEFBS0UsSUFMRSxBQUFBLFdBQVcsQ0FLYixRQUFRO0FBTFYsSUFBSSxBQUFBLFdBQVcsQ0FNYixRQUFRO0FBTlYsSUFBSSxBQUFBLFdBQVcsQ0FPYixTQUFTO0FBUFgsSUFBSSxBQUFBLFdBQVcsQ0FRYixPQUFPO0FBUlQsSUFBSSxBQUFBLFdBQVcsQ0FTYixXQUFXLENBQUM7RUFDVixPQUFPLEVBVFMsR0FBRyxDQVNPLEdBQW9CO0VBQzlDLEdBQUcsRUFWYSxJQUFHO0NBV3BCOztBQVpILEFBY0UsSUFkRSxBQUFBLFdBQVcsQ0FjYixXQUFXLENBQUM7RUFDVixHQUFHLEVBQUUsSUFBZ0Q7Q0FDdEQ7O0FBaEJILEFBa0JFLElBbEJFLEFBQUEsV0FBVyxDQWtCYixRQUFRLENBQUM7RUFDUCxHQUFHLEVBQUUsSUFBSTtFQUNULE1BQU0sRUFuQlUsR0FBRztFQW9CbkIsTUFBTSxFQUFFLElBQUk7Q0FDYjs7QUF0QkgsQUF3QkUsSUF4QkUsQUFBQSxXQUFXLENBd0JiLFNBQVMsQ0FBQztFQUVSLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBQTNCSCxBQTZCRSxJQTdCRSxBQUFBLFdBQVcsQ0E2QmIsYUFBYSxDQUFDO0VBQ1osTUFBTSxFQUFFLEdBQUc7Q0FDWjs7QUEvQkgsQUFpQ0UsSUFqQ0UsQUFBQSxXQUFXLENBaUNiLGNBQWMsQ0FBQztFQUNiLE1BQU0sRUFBRSxHQUFHO0NBQ1o7O0FBbkNILEFBMkNFLElBM0NFLEFBQUEsV0FBVyxDQTJDYixXQUFXLENBQUMsYUFBYTtBQTNDM0IsSUFBSSxBQUFBLFdBQVcsQ0E0Q2IsV0FBVyxDQUFDLE1BQU0sQ0FBQztFQUVqQixLQUFLLEVDaUpDLE9BQTJCO0VEaEpqQyxnQkFBZ0IsRUNnSlYsT0FBMkI7RUQvSWpDLFlBQVksRUMrSU4sT0FBMkI7RUQ5SWpDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFTThmVSxDQUFDLENBQUMsQ0FBQyxDQURILENBQUMsQ0FIRCxPQUFNLENGaGtCdkIsdUJBQU87Q0p1RVg7O0FBbkRILEFBcURFLElBckRFLEFBQUEsV0FBVyxHQXFEVCx5QkFBeUIsQ0FBQztFQUM1QixVQUFVLEVBQUUsSUFBSTtDQUtqQjs7QUEzREgsQUF3REksSUF4REEsQUFBQSxXQUFXLEdBcURULHlCQUF5QixDQUczQixzQkFBc0IsQ0FBQztFQUNyQixPQUFPLEVBQUUsQ0FBQztDQUNYOztBQTFETCxBQTZERSxJQTdERSxBQUFBLFdBQVcsQUE2RFosY0FBYyxHQUFHLHlCQUF5QixDQUFDO0VBQzFDLFVBQVUsRUFBRSxJQUFJO0NBQ2pCOztBQS9ESCxBQWdFRSxJQWhFRSxBQUFBLFdBQVcsQ0FnRVosR0FBSyxDQUFBLGNBQWMsSUFBSSx5QkFBeUIsQ0FBQztFQUNoRCxVQUFVLEVBQUUsR0FBRztDQUNoQiIKfQ== */ diff --git a/shiny/www/shared/shiny.js b/shiny/www/shared/shiny.js index e6d20b248..13c08be27 100644 --- a/shiny/www/shared/shiny.js +++ b/shiny/www/shared/shiny.js @@ -23217,10 +23217,10 @@ }, { key: "$sendMsg", value: function $sendMsg(msg) { - if (!this.$socket.readyState) { - this.$pendingMessages.push(msg); - } else { + if (this.$socket && this.$socket.readyState) { this.$socket.send(msg); + } else { + this.$pendingMessages.push(msg); } } }, { diff --git a/shiny/www/shared/shiny.js.map b/shiny/www/shared/shiny.js.map index b64975a3e..def0c61c5 100644 --- a/shiny/www/shared/shiny.js.map +++ b/shiny/www/shared/shiny.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["globals:jquery", "../../../node_modules/core-js/internals/global.js", "../../../node_modules/core-js/internals/fails.js", "../../../node_modules/core-js/internals/descriptors.js", "../../../node_modules/core-js/internals/function-bind-native.js", "../../../node_modules/core-js/internals/function-call.js", "../../../node_modules/core-js/internals/object-property-is-enumerable.js", "../../../node_modules/core-js/internals/create-property-descriptor.js", "../../../node_modules/core-js/internals/function-uncurry-this.js", "../../../node_modules/core-js/internals/classof-raw.js", "../../../node_modules/core-js/internals/indexed-object.js", "../../../node_modules/core-js/internals/is-null-or-undefined.js", "../../../node_modules/core-js/internals/require-object-coercible.js", "../../../node_modules/core-js/internals/to-indexed-object.js", "../../../node_modules/core-js/internals/document-all.js", "../../../node_modules/core-js/internals/is-callable.js", "../../../node_modules/core-js/internals/is-object.js", "../../../node_modules/core-js/internals/get-built-in.js", "../../../node_modules/core-js/internals/object-is-prototype-of.js", "../../../node_modules/core-js/internals/engine-user-agent.js", "../../../node_modules/core-js/internals/engine-v8-version.js", "../../../node_modules/core-js/internals/symbol-constructor-detection.js", "../../../node_modules/core-js/internals/use-symbol-as-uid.js", "../../../node_modules/core-js/internals/is-symbol.js", "../../../node_modules/core-js/internals/try-to-string.js", "../../../node_modules/core-js/internals/a-callable.js", "../../../node_modules/core-js/internals/get-method.js", "../../../node_modules/core-js/internals/ordinary-to-primitive.js", "../../../node_modules/core-js/internals/is-pure.js", "../../../node_modules/core-js/internals/define-global-property.js", "../../../node_modules/core-js/internals/shared-store.js", "../../../node_modules/core-js/internals/shared.js", "../../../node_modules/core-js/internals/to-object.js", "../../../node_modules/core-js/internals/has-own-property.js", "../../../node_modules/core-js/internals/uid.js", "../../../node_modules/core-js/internals/well-known-symbol.js", "../../../node_modules/core-js/internals/to-primitive.js", "../../../node_modules/core-js/internals/to-property-key.js", "../../../node_modules/core-js/internals/document-create-element.js", "../../../node_modules/core-js/internals/ie8-dom-define.js", "../../../node_modules/core-js/internals/object-get-own-property-descriptor.js", "../../../node_modules/core-js/internals/v8-prototype-define-bug.js", "../../../node_modules/core-js/internals/an-object.js", "../../../node_modules/core-js/internals/object-define-property.js", "../../../node_modules/core-js/internals/create-non-enumerable-property.js", "../../../node_modules/core-js/internals/function-name.js", "../../../node_modules/core-js/internals/inspect-source.js", "../../../node_modules/core-js/internals/weak-map-basic-detection.js", "../../../node_modules/core-js/internals/shared-key.js", "../../../node_modules/core-js/internals/hidden-keys.js", "../../../node_modules/core-js/internals/internal-state.js", "../../../node_modules/core-js/internals/make-built-in.js", "../../../node_modules/core-js/internals/define-built-in.js", "../../../node_modules/core-js/internals/math-trunc.js", "../../../node_modules/core-js/internals/to-integer-or-infinity.js", "../../../node_modules/core-js/internals/to-absolute-index.js", "../../../node_modules/core-js/internals/to-length.js", "../../../node_modules/core-js/internals/length-of-array-like.js", "../../../node_modules/core-js/internals/array-includes.js", "../../../node_modules/core-js/internals/object-keys-internal.js", "../../../node_modules/core-js/internals/enum-bug-keys.js", "../../../node_modules/core-js/internals/object-get-own-property-names.js", "../../../node_modules/core-js/internals/object-get-own-property-symbols.js", "../../../node_modules/core-js/internals/own-keys.js", "../../../node_modules/core-js/internals/copy-constructor-properties.js", "../../../node_modules/core-js/internals/is-forced.js", "../../../node_modules/core-js/internals/export.js", "../../../node_modules/core-js/internals/function-uncurry-this-clause.js", "../../../node_modules/core-js/internals/array-method-is-strict.js", "../../../node_modules/core-js/internals/to-string-tag-support.js", "../../../node_modules/core-js/internals/classof.js", "../../../node_modules/core-js/internals/to-string.js", "../../../node_modules/core-js/internals/whitespaces.js", "../../../node_modules/core-js/internals/string-trim.js", "../../../node_modules/core-js/internals/number-parse-int.js", "../../../node_modules/core-js/internals/regexp-flags.js", "../../../node_modules/core-js/internals/regexp-sticky-helpers.js", "../../../node_modules/core-js/internals/object-keys.js", "../../../node_modules/core-js/internals/object-define-properties.js", "../../../node_modules/core-js/internals/html.js", "../../../node_modules/core-js/internals/object-create.js", "../../../node_modules/core-js/internals/regexp-unsupported-dot-all.js", "../../../node_modules/core-js/internals/regexp-unsupported-ncg.js", "../../../node_modules/core-js/internals/regexp-exec.js", "../../../node_modules/core-js/modules/es.regexp.exec.js", "../../../node_modules/core-js/internals/object-to-string.js", "../../../node_modules/core-js/internals/engine-is-node.js", "../../../node_modules/core-js/internals/function-uncurry-this-accessor.js", "../../../node_modules/core-js/internals/a-possible-prototype.js", "../../../node_modules/core-js/internals/object-set-prototype-of.js", "../../../node_modules/core-js/internals/set-to-string-tag.js", "../../../node_modules/core-js/internals/define-built-in-accessor.js", "../../../node_modules/core-js/internals/set-species.js", "../../../node_modules/core-js/internals/an-instance.js", "../../../node_modules/core-js/internals/is-constructor.js", "../../../node_modules/core-js/internals/a-constructor.js", "../../../node_modules/core-js/internals/species-constructor.js", "../../../node_modules/core-js/internals/function-apply.js", "../../../node_modules/core-js/internals/function-bind-context.js", "../../../node_modules/core-js/internals/array-slice.js", "../../../node_modules/core-js/internals/validate-arguments-length.js", "../../../node_modules/core-js/internals/engine-is-ios.js", "../../../node_modules/core-js/internals/task.js", "../../../node_modules/core-js/internals/queue.js", "../../../node_modules/core-js/internals/engine-is-ios-pebble.js", "../../../node_modules/core-js/internals/engine-is-webos-webkit.js", "../../../node_modules/core-js/internals/microtask.js", "../../../node_modules/core-js/internals/host-report-errors.js", "../../../node_modules/core-js/internals/perform.js", "../../../node_modules/core-js/internals/promise-native-constructor.js", "../../../node_modules/core-js/internals/engine-is-deno.js", "../../../node_modules/core-js/internals/engine-is-browser.js", "../../../node_modules/core-js/internals/promise-constructor-detection.js", "../../../node_modules/core-js/internals/new-promise-capability.js", "../../../node_modules/core-js/modules/es.promise.constructor.js", "../../../node_modules/core-js/internals/iterators.js", "../../../node_modules/core-js/internals/is-array-iterator-method.js", "../../../node_modules/core-js/internals/get-iterator-method.js", "../../../node_modules/core-js/internals/get-iterator.js", "../../../node_modules/core-js/internals/iterator-close.js", "../../../node_modules/core-js/internals/iterate.js", "../../../node_modules/core-js/internals/check-correctness-of-iteration.js", "../../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js", "../../../node_modules/core-js/modules/es.promise.all.js", "../../../node_modules/core-js/modules/es.promise.catch.js", "../../../node_modules/core-js/modules/es.promise.race.js", "../../../node_modules/core-js/modules/es.promise.reject.js", "../../../node_modules/core-js/internals/promise-resolve.js", "../../../node_modules/core-js/modules/es.promise.resolve.js", "../../../node_modules/core-js/internals/create-property.js", "../../../node_modules/core-js/internals/array-slice-simple.js", "../../../node_modules/core-js/internals/object-get-own-property-names-external.js", "../../../node_modules/core-js/internals/well-known-symbol-wrapped.js", "../../../node_modules/core-js/internals/path.js", "../../../node_modules/core-js/internals/well-known-symbol-define.js", "../../../node_modules/core-js/internals/symbol-define-to-primitive.js", "../../../node_modules/core-js/internals/is-array.js", "../../../node_modules/core-js/internals/array-species-constructor.js", "../../../node_modules/core-js/internals/array-species-create.js", "../../../node_modules/core-js/internals/array-iteration.js", "../../../node_modules/core-js/modules/es.symbol.constructor.js", "../../../node_modules/core-js/internals/symbol-registry-detection.js", "../../../node_modules/core-js/modules/es.symbol.for.js", "../../../node_modules/core-js/modules/es.symbol.key-for.js", "../../../node_modules/core-js/internals/get-json-replacer-function.js", "../../../node_modules/core-js/modules/es.json.stringify.js", "../../../node_modules/core-js/modules/es.object.get-own-property-symbols.js", "../../../node_modules/core-js/internals/add-to-unscopables.js", "../../../node_modules/core-js/internals/correct-prototype-getter.js", "../../../node_modules/core-js/internals/object-get-prototype-of.js", "../../../node_modules/core-js/internals/iterators-core.js", "../../../node_modules/core-js/internals/iterator-create-constructor.js", "../../../node_modules/core-js/internals/iterator-define.js", "../../../node_modules/core-js/internals/create-iter-result-object.js", "../../../node_modules/core-js/modules/es.array.iterator.js", "../../../node_modules/core-js/internals/string-multibyte.js", "../../../node_modules/core-js/internals/dom-iterables.js", "../../../node_modules/core-js/internals/dom-token-list-prototype.js", "../../../node_modules/core-js/internals/array-for-each.js", "../../../node_modules/core-js/internals/array-method-has-species-support.js", "../../../node_modules/core-js/internals/date-to-primitive.js", "../../../node_modules/core-js/internals/inherit-if-required.js", "../../../node_modules/core-js/internals/this-number-value.js", "../../../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js", "../../../node_modules/core-js/internals/advance-string-index.js", "../../../node_modules/core-js/internals/get-substitution.js", "../../../node_modules/core-js/internals/regexp-exec-abstract.js", "../../../node_modules/core-js/internals/regexp-get-flags.js", "../../../node_modules/core-js/internals/number-parse-float.js", "../../../node_modules/core-js/internals/does-not-exceed-safe-integer.js", "../../../node_modules/core-js/internals/array-set-length.js", "../../../node_modules/core-js/internals/delete-property-or-throw.js", "../../../node_modules/core-js/internals/function-bind.js", "../../../node_modules/core-js/internals/string-trim-forced.js", "../../../node_modules/core-js/internals/is-data-descriptor.js", "../../../node_modules/core-js/internals/call-with-safe-iteration-closing.js", "../../../node_modules/core-js/internals/array-from.js", "../../../node_modules/core-js/internals/same-value.js", "../../../node_modules/core-js/internals/object-to-array.js", "../../../node_modules/core-js/internals/is-regexp.js", "../../../node_modules/core-js/internals/array-buffer-non-extensible.js", "../../../node_modules/core-js/internals/object-is-extensible.js", "../../../node_modules/core-js/internals/freezing.js", "../../../node_modules/core-js/internals/internal-metadata.js", "../../../node_modules/core-js/internals/collection.js", "../../../node_modules/core-js/internals/define-built-ins.js", "../../../node_modules/core-js/internals/collection-strong.js", "../../../node_modules/core-js/modules/es.map.constructor.js", "../../../node_modules/core-js/modules/es.set.constructor.js", "../../../node_modules/core-js/internals/array-buffer-basic-detection.js", "../../../node_modules/core-js/internals/to-index.js", "../../../node_modules/core-js/internals/ieee754.js", "../../../node_modules/core-js/internals/array-fill.js", "../../../node_modules/core-js/internals/array-buffer.js", "../../../node_modules/core-js/modules/es.data-view.constructor.js", "../../../node_modules/core-js/internals/array-reduce.js", "../../../node_modules/core-js/internals/collection-weak.js", "../../../node_modules/core-js/modules/es.weak-map.constructor.js", "../../../node_modules/core-js/internals/flatten-into-array.js", "../../../node_modules/core-js/internals/proxy-accessor.js", "../../../node_modules/core-js/internals/not-a-regexp.js", "../../../node_modules/core-js/internals/correct-is-regexp-logic.js", "../../../srcts/src/initialize/disableForm.ts", "../../../srcts/src/initialize/history.ts", "../../../node_modules/core-js/modules/es.array.index-of.js", "../../../node_modules/core-js/modules/es.parse-int.js", "../../../srcts/src/initialize/browser.ts", "../../../node_modules/core-js/modules/es.regexp.test.js", "../../../srcts/src/utils/browser.ts", "../../../srcts/src/utils/userAgent.ts", "../../../srcts/src/window/libraries.ts", "../../../node_modules/core-js/modules/es.object.to-string.js", "../../../node_modules/core-js/modules/es.promise.js", "../../../node_modules/core-js/modules/es.object.define-property.js", "../../../node_modules/core-js/modules/es.symbol.js", "../../../node_modules/core-js/modules/es.symbol.description.js", "../../../node_modules/core-js/modules/es.symbol.iterator.js", "../../../srcts/src/shiny/index.ts", "../../../node_modules/core-js/modules/es.string.iterator.js", "../../../node_modules/core-js/modules/web.dom-collections.iterator.js", "../../../node_modules/core-js/modules/es.symbol.async-iterator.js", "../../../node_modules/core-js/modules/es.symbol.to-string-tag.js", "../../../node_modules/core-js/modules/es.json.to-string-tag.js", "../../../node_modules/core-js/modules/es.math.to-string-tag.js", "../../../node_modules/core-js/modules/es.object.get-prototype-of.js", "../../../node_modules/core-js/modules/es.array.for-each.js", "../../../node_modules/core-js/modules/web.dom-collections.for-each.js", "../../../node_modules/core-js/modules/es.function.name.js", "../../../node_modules/core-js/modules/es.object.set-prototype-of.js", "../../../node_modules/core-js/modules/es.array.reverse.js", "../../../node_modules/core-js/modules/es.array.slice.js", "../../../node_modules/core-js/modules/es.symbol.to-primitive.js", "../../../node_modules/core-js/modules/es.date.to-primitive.js", "../../../node_modules/core-js/modules/es.number.constructor.js", "../../../srcts/src/bindings/registry.ts", "../../../srcts/src/utils/index.ts", "../../../node_modules/core-js/modules/es.string.replace.js", "../../../node_modules/core-js/modules/es.regexp.to-string.js", "../../../node_modules/core-js/modules/es.parse-float.js", "../../../node_modules/core-js/modules/es.number.to-precision.js", "../../../node_modules/core-js/modules/es.array.concat.js", "../../../node_modules/core-js/modules/es.array.splice.js", "../../../node_modules/core-js/modules/es.object.keys.js", "../../../srcts/src/window/pixelRatio.ts", "../../../srcts/src/utils/object.ts", "../../../srcts/src/bindings/input/inputBinding.ts", "../../../node_modules/core-js/modules/es.array.find.js", "../../../node_modules/core-js/modules/es.reflect.to-string-tag.js", "../../../node_modules/core-js/modules/es.reflect.construct.js", "../../../srcts/src/bindings/input/checkbox.ts", "../../../node_modules/core-js/modules/es.string.trim.js", "../../../srcts/src/bindings/input/checkboxgroup.ts", "../../../srcts/src/bindings/input/number.ts", "../../../node_modules/core-js/modules/es.reflect.get.js", "../../../node_modules/core-js/modules/es.object.get-own-property-descriptor.js", "../../../srcts/src/bindings/input/text.ts", "../../../srcts/src/bindings/input/password.ts", "../../../srcts/src/bindings/input/textarea.ts", "../../../srcts/src/bindings/input/radio.ts", "../../../srcts/src/bindings/input/date.ts", "../../../srcts/src/bindings/input/slider.ts", "../../../srcts/src/bindings/input/daterange.ts", "../../../srcts/src/bindings/input/selectInput.ts", "../../../srcts/src/utils/eval.ts", "../../../srcts/src/bindings/input/actionbutton.ts", "../../../srcts/src/bindings/input/tabinput.ts", "../../../srcts/src/bindings/input/fileinput.ts", "../../../node_modules/core-js/modules/es.array.from.js", "../../../node_modules/core-js/modules/es.array.map.js", "../../../srcts/src/file/fileProcessor.ts", "../../../srcts/src/events/inputChanged.ts", "../../../srcts/src/shiny/initedMethods.ts", "../../../srcts/src/bindings/input/index.ts", "../../../srcts/src/bindings/output/text.ts", "../../../node_modules/core-js/modules/es.array.join.js", "../../../srcts/src/bindings/output/outputBinding.ts", "../../../srcts/src/bindings/output/downloadlink.ts", "../../../srcts/src/bindings/output/datatable.ts", "../../../node_modules/core-js/modules/es.string.search.js", "../../../srcts/src/time/debounce.ts", "../../../srcts/src/time/invoke.ts", "../../../srcts/src/time/throttle.ts", "../../../srcts/src/bindings/output/html.ts", "../../../srcts/src/shiny/render.ts", "../../../node_modules/core-js/modules/es.object.entries.js", "../../../node_modules/core-js/modules/es.promise.all-settled.js", "../../../srcts/src/shiny/sendImageSize.ts", "../../../srcts/src/shiny/singletons.ts", "../../../node_modules/core-js/modules/es.array.filter.js", "../../../srcts/src/bindings/output/image.ts", "../../../node_modules/core-js/modules/es.array.some.js", "../../../node_modules/core-js/modules/es.object.values.js", "../../../node_modules/core-js/modules/es.object.get-own-property-descriptors.js", "../../../node_modules/core-js/modules/es.object.define-properties.js", "../../../srcts/src/imageutils/createBrush.ts", "../../../srcts/src/imageutils/initCoordmap.ts", "../../../srcts/src/imageutils/initPanelScales.ts", "../../../srcts/src/imageutils/findbox.ts", "../../../srcts/src/imageutils/shiftToRange.ts", "../../../srcts/src/imageutils/createClickInfo.ts", "../../../srcts/src/imageutils/createHandlers.ts", "../../../srcts/src/imageutils/disableDrag.ts", "../../../srcts/src/bindings/output/index.ts", "../../../srcts/src/imageutils/resetBrush.ts", "../../../srcts/src/shiny/notifications.ts", "../../../node_modules/core-js/modules/es.string.split.js", "../../../node_modules/core-js/modules/es.string.match.js", "../../../srcts/src/shiny/modal.ts", "../../../srcts/src/shiny/reconnectDialog.ts", "../../../srcts/src/shiny/init.ts", "../../../srcts/src/inputPolicies/inputBatchSender.ts", "../../../srcts/src/inputPolicies/inputNoResendDecorator.ts", "../../../srcts/src/inputPolicies/splitInputNameType.ts", "../../../srcts/src/inputPolicies/inputEventDecorator.ts", "../../../srcts/src/inputPolicies/inputRateDecorator.ts", "../../../srcts/src/inputPolicies/inputDeferDecorator.ts", "../../../srcts/src/inputPolicies/inputValidateDecorator.ts", "../../../srcts/src/shiny/bind.ts", "../../../node_modules/core-js/modules/es.map.js", "../../../srcts/src/bindings/outputAdapter.ts", "../../../srcts/src/shiny/error.ts", "../../../srcts/src/shiny/shinyapp.ts", "../../../node_modules/core-js/modules/es.set.js", "../../../node_modules/core-js/modules/es.array-buffer.constructor.js", "../../../node_modules/core-js/modules/es.array-buffer.slice.js", "../../../node_modules/core-js/modules/es.data-view.js", "../../../node_modules/core-js/modules/es.array.reduce.js", "../../../srcts/src/utils/asyncQueue.ts", "../../../node_modules/core-js/modules/es.object.freeze.js", "../../../srcts/src/components/errorConsole.ts", "../../../node_modules/@lit/reactive-element/reactive-element.js", "../../../node_modules/core-js/modules/es.object.is.js", "../../../node_modules/core-js/modules/es.object.get-own-property-names.js", "../../../node_modules/core-js/modules/es.global-this.js", "../../../node_modules/core-js/modules/es.weak-map.js", "../../../node_modules/core-js/modules/es.array.flat.js", "../../../node_modules/core-js/modules/es.array.unscopables.flat.js", "../../../node_modules/@lit/reactive-element/css-tag.js", "../../../node_modules/lit-html/lit-html.js", "../../../node_modules/core-js/modules/es.regexp.constructor.js", "../../../node_modules/core-js/modules/es.regexp.sticky.js", "../../../node_modules/core-js/modules/es.string.starts-with.js", "../../../node_modules/core-js/modules/es.string.ends-with.js", "../../../node_modules/core-js/modules/es.array.fill.js", "../../../node_modules/lit-element/lit-element.js", "../../../srcts/src/window/userAgent.ts", "../../../srcts/src/shiny/reactlog.ts", "../../../srcts/src/initialize/index.ts", "../../../srcts/src/index.ts"], - "sourcesContent": ["module.exports = window.jQuery", "var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n", "module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n", "var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n", "var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n", "var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n", "'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n", "module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n", "var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : $Object(it);\n} : $Object;\n", "// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n", "var isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n", "// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n", "var documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n", "var $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n", "var isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n", "var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n", "module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n", "var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n", "/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n", "/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n", "var getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n", "var $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n", "var isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n", "var aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n", "var call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n", "module.exports = false;\n", "var global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n", "var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n", "var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.29.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '\u00A9 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.29.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n", "var requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n", "var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n", "var call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n", "var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n", "var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n", "var isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n", "var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n", "var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n", "module.exports = {};\n", "var NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n", "var isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n", "var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n", "var trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n", "var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n", "var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n", "var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n", "var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n", "// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n", "var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n", "// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n", "var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n", "var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n", "var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n", "var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n", "var classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n", "'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n", "var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n", "var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n", "// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n", "var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar trim = require('../internals/string-trim').trim;\nvar whitespaces = require('../internals/whitespaces');\n\nvar $parseInt = global.parseInt;\nvar Symbol = global.Symbol;\nvar ITERATOR = Symbol && Symbol.iterator;\nvar hex = /^[+-]?0x/i;\nvar exec = uncurryThis(hex.exec);\nvar FORCED = $parseInt(whitespaces + '08') !== 8 || $parseInt(whitespaces + '0x16') !== 22\n // MS Edge 18- broken with boxed symbols\n || (ITERATOR && !fails(function () { $parseInt(Object(ITERATOR)); }));\n\n// `parseInt` method\n// https://tc39.es/ecma262/#sec-parseint-string-radix\nmodule.exports = FORCED ? function parseInt(string, radix) {\n var S = trim(toString(string));\n return $parseInt(S, (radix >>> 0) || (exec(hex, S) ? 16 : 10));\n} : $parseInt;\n", "'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n", "var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n", "var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n", "var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n", "/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n", "var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n", "var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n", "'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n", "'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n", "'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n", "var classof = require('../internals/classof-raw');\n\nmodule.exports = typeof process != 'undefined' && classof(process) == 'process';\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n", "var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n", "/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n", "var defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n", "var makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n", "'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n", "var isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw $TypeError('Incorrect invocation');\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n", "var isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a constructor');\n};\n", "var anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n", "var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n", "var uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n", "var $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw $TypeError('Not enough arguments');\n return passed;\n};\n", "var userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n", "var global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n", "var Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n", "var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n", "var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n", "var global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n", "module.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length == 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n", "module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n", "var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n", "/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n", "var IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n", "var global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n", "'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n", "'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state == PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n", "module.exports = {};\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n", "var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n", "var call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw $TypeError(tryToString(argument) + ' is not iterable');\n};\n", "var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n", "var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n", "var NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n", "'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n", "var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n", "'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n", "'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n", "var toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n", "/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) == 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n", "var global = require('../internals/global');\n\nmodule.exports = global;\n", "var path = require('../internals/path');\nvar hasOwn = require('../internals/has-own-property');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n", "var call = require('../internals/function-call');\nvar getBuiltIn = require('../internals/get-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function () {\n var Symbol = getBuiltIn('Symbol');\n var SymbolPrototype = Symbol && Symbol.prototype;\n var valueOf = SymbolPrototype && SymbolPrototype.valueOf;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) {\n // `Symbol.prototype[@@toPrimitive]` method\n // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\n // eslint-disable-next-line no-unused-vars -- required for .length\n defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {\n return call(valueOf, this);\n }, { arity: 1 });\n }\n};\n", "var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) == 'Array';\n};\n", "var isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n", "var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n", "var bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_REJECT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that);\n var length = lengthOfArrayLike(self);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n", "'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar $toString = require('../internals/to-string');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/well-known-symbol-define');\nvar defineSymbolToPrimitive = require('../internals/symbol-define-to-primitive');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\n\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar SymbolPrototype = $Symbol && $Symbol[PROTOTYPE];\nvar TypeError = global.TypeError;\nvar QObject = global.QObject;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar push = uncurryThis([].push);\n\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar WellKnownSymbolsStore = shared('wks');\n\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPropertyKey(P);\n anObject(Attributes);\n if (hasOwn(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPropertyKey(V);\n var enumerable = call(nativePropertyIsEnumerable, this, P);\n if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P]\n ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPropertyKey(P);\n if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function (O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) {\n push(result, AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (isPrototypeOf(SymbolPrototype, this)) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value);\n if (hasOwn(this, HIDDEN) && hasOwn(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n SymbolPrototype = $Symbol[PROTOTYPE];\n\n defineBuiltIn(SymbolPrototype, 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n defineBuiltIn($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n definePropertiesModule.f = $defineProperties;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n defineBuiltInAccessor(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames\n});\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\ndefineSymbolToPrimitive();\n\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n", "var NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\n/* eslint-disable es/no-symbol -- safe */\nmodule.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor;\n", "var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar toString = require('../internals/to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/symbol-registry-detection');\n\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.for` method\n// https://tc39.es/ecma262/#sec-symbol.for\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n 'for': function (key) {\n var string = toString(key);\n if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = getBuiltIn('Symbol')(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n }\n});\n", "var $ = require('../internals/export');\nvar hasOwn = require('../internals/has-own-property');\nvar isSymbol = require('../internals/is-symbol');\nvar tryToString = require('../internals/try-to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/symbol-registry-detection');\n\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.keyFor` method\n// https://tc39.es/ecma262/#sec-symbol.keyfor\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(tryToString(sym) + ' is not a symbol');\n if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n }\n});\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar isArray = require('../internals/is-array');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar toString = require('../internals/to-string');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (replacer) {\n if (isCallable(replacer)) return replacer;\n if (!isArray(replacer)) return;\n var rawLength = replacer.length;\n var keys = [];\n for (var i = 0; i < rawLength; i++) {\n var element = replacer[i];\n if (typeof element == 'string') push(keys, element);\n else if (typeof element == 'number' || classof(element) == 'Number' || classof(element) == 'String') push(keys, toString(element));\n }\n var keysLength = keys.length;\n var root = true;\n return function (key, value) {\n if (root) {\n root = false;\n return value;\n }\n if (isArray(this)) return value;\n for (var j = 0; j < keysLength; j++) if (keys[j] === key) return value;\n };\n};\n", "var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isSymbol = require('../internals/is-symbol');\nvar arraySlice = require('../internals/array-slice');\nvar getReplacerFunction = require('../internals/get-json-replacer-function');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nvar $String = String;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar exec = uncurryThis(/./.exec);\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar replace = uncurryThis(''.replace);\nvar numberToString = uncurryThis(1.0.toString);\n\nvar tester = /[\\uD800-\\uDFFF]/g;\nvar low = /^[\\uD800-\\uDBFF]$/;\nvar hi = /^[\\uDC00-\\uDFFF]$/;\n\nvar WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {\n var symbol = getBuiltIn('Symbol')();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n});\n\n// https://github.com/tc39/proposal-well-formed-stringify\nvar ILL_FORMED_UNICODE = fails(function () {\n return $stringify('\\uDF06\\uD834') !== '\"\\\\udf06\\\\ud834\"'\n || $stringify('\\uDEAD') !== '\"\\\\udead\"';\n});\n\nvar stringifyWithSymbolsFix = function (it, replacer) {\n var args = arraySlice(arguments);\n var $replacer = getReplacerFunction(replacer);\n if (!isCallable($replacer) && (it === undefined || isSymbol(it))) return; // IE8 returns string on undefined\n args[1] = function (key, value) {\n // some old implementations (like WebKit) could pass numbers as keys\n if (isCallable($replacer)) value = call($replacer, this, $String(key), value);\n if (!isSymbol(value)) return value;\n };\n return apply($stringify, null, args);\n};\n\nvar fixIllFormed = function (match, offset, string) {\n var prev = charAt(string, offset - 1);\n var next = charAt(string, offset + 1);\n if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {\n return '\\\\u' + numberToString(charCodeAt(match, 0), 16);\n } return match;\n};\n\nif ($stringify) {\n // `JSON.stringify` method\n // https://tc39.es/ecma262/#sec-json.stringify\n $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = arraySlice(arguments);\n var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args);\n return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result;\n }\n });\n}\n", "var $ = require('../internals/export');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar fails = require('../internals/fails');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar toObject = require('../internals/to-object');\n\n// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); });\n\n// `Object.getOwnPropertySymbols` method\n// https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n$({ target: 'Object', stat: true, forced: FORCED }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : [];\n }\n});\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n", "var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n", "var hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n", "'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n", "'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n", "'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n", "// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n", "'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n if (kind == 'keys') return createIterResultObject(index, false);\n if (kind == 'values') return createIterResultObject(target[index], false);\n return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n", "// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n", "// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n", "'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n", "var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n", "'use strict';\nvar anObject = require('../internals/an-object');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\n\nvar $TypeError = TypeError;\n\n// `Date.prototype[@@toPrimitive](hint)` method implementation\n// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive\nmodule.exports = function (hint) {\n anObject(this);\n if (hint === 'string' || hint === 'default') hint = 'string';\n else if (hint !== 'number') throw $TypeError('Incorrect hint');\n return ordinaryToPrimitive(this, hint);\n};\n", "var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\n\n// `thisNumberValue` abstract operation\n// https://tc39.es/ecma262/#sec-thisnumbervalue\nmodule.exports = uncurryThis(1.0.valueOf);\n", "'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n", "'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n", "var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n", "var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw $TypeError('RegExp#exec called on incompatible receiver');\n};\n", "var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n", "var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar trim = require('../internals/string-trim').trim;\nvar whitespaces = require('../internals/whitespaces');\n\nvar charAt = uncurryThis(''.charAt);\nvar $parseFloat = global.parseFloat;\nvar Symbol = global.Symbol;\nvar ITERATOR = Symbol && Symbol.iterator;\nvar FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity\n // MS Edge 18- broken with boxed symbols\n || (ITERATOR && !fails(function () { $parseFloat(Object(ITERATOR)); }));\n\n// `parseFloat` method\n// https://tc39.es/ecma262/#sec-parsefloat-string\nmodule.exports = FORCED ? function parseFloat(string) {\n var trimmedString = trim(toString(string));\n var result = $parseFloat(trimmedString);\n return result === 0 && charAt(trimmedString, 0) == '-' ? -0 : result;\n} : $parseFloat;\n", "var $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n", "'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar isArray = require('../internals/is-array');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Safari < 13 does not throw an error in this case\nvar SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {\n // makes no sense without proper strict mode support\n if (this !== undefined) return true;\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).length = 1;\n } catch (error) {\n return error instanceof TypeError;\n }\n}();\n\nmodule.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {\n if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {\n throw $TypeError('Cannot set read only .length');\n } return O.length = length;\n} : function (O, length) {\n return O.length = length;\n};\n", "'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n", "'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar $Function = Function;\nvar concat = uncurryThis([].concat);\nvar join = uncurryThis([].join);\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!hasOwn(factories, argsLength)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n factories[argsLength] = $Function('C,a', 'return new C(' + join(list, ',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.es/ecma262/#sec-function.prototype.bind\n// eslint-disable-next-line es/no-function-prototype-bind -- detection\nmodule.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {\n var F = aCallable(this);\n var Prototype = F.prototype;\n var partArgs = arraySlice(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = concat(partArgs, arraySlice(arguments));\n return this instanceof boundFunction ? construct(F, args.length, args) : F.apply(that, args);\n };\n if (isObject(Prototype)) boundFunction.prototype = Prototype;\n return boundFunction;\n};\n", "var PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n", "var hasOwn = require('../internals/has-own-property');\n\nmodule.exports = function (descriptor) {\n return descriptor !== undefined && (hasOwn(descriptor, 'value') || hasOwn(descriptor, 'writable'));\n};\n", "var anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n", "'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n", "// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || propertyIsEnumerable(O, key)) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n", "var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n", "// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n", "var fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) == 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n", "var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n", "var $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n", "'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY == 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY == 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY == 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY == 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n", "var defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n", "'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind == 'keys') return createIterResultObject(entry.key, false);\n if (kind == 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n", "'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n", "'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n", "// eslint-disable-next-line es/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n", "var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\n\nvar $RangeError = RangeError;\n\n// `ToIndex` abstract operation\n// https://tc39.es/ecma262/#sec-toindex\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toIntegerOrInfinity(it);\n var length = toLength(number);\n if (number !== length) throw $RangeError('Wrong length or index');\n return length;\n};\n", "// IEEE754 conversions based on https://github.com/feross/ieee754\nvar $Array = Array;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nvar pack = function (number, mantissaLength, bytes) {\n var buffer = $Array(bytes);\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;\n var index = 0;\n var exponent, mantissa, c;\n number = abs(number);\n // eslint-disable-next-line no-self-compare -- NaN check\n if (number != number || number === Infinity) {\n // eslint-disable-next-line no-self-compare -- NaN check\n mantissa = number != number ? 1 : 0;\n exponent = eMax;\n } else {\n exponent = floor(log(number) / LN2);\n c = pow(2, -exponent);\n if (number * c < 1) {\n exponent--;\n c *= 2;\n }\n if (exponent + eBias >= 1) {\n number += rt / c;\n } else {\n number += rt * pow(2, 1 - eBias);\n }\n if (number * c >= 2) {\n exponent++;\n c /= 2;\n }\n if (exponent + eBias >= eMax) {\n mantissa = 0;\n exponent = eMax;\n } else if (exponent + eBias >= 1) {\n mantissa = (number * c - 1) * pow(2, mantissaLength);\n exponent = exponent + eBias;\n } else {\n mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);\n exponent = 0;\n }\n }\n while (mantissaLength >= 8) {\n buffer[index++] = mantissa & 255;\n mantissa /= 256;\n mantissaLength -= 8;\n }\n exponent = exponent << mantissaLength | mantissa;\n exponentLength += mantissaLength;\n while (exponentLength > 0) {\n buffer[index++] = exponent & 255;\n exponent /= 256;\n exponentLength -= 8;\n }\n buffer[--index] |= sign * 128;\n return buffer;\n};\n\nvar unpack = function (buffer, mantissaLength) {\n var bytes = buffer.length;\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var nBits = exponentLength - 7;\n var index = bytes - 1;\n var sign = buffer[index--];\n var exponent = sign & 127;\n var mantissa;\n sign >>= 7;\n while (nBits > 0) {\n exponent = exponent * 256 + buffer[index--];\n nBits -= 8;\n }\n mantissa = exponent & (1 << -nBits) - 1;\n exponent >>= -nBits;\n nBits += mantissaLength;\n while (nBits > 0) {\n mantissa = mantissa * 256 + buffer[index--];\n nBits -= 8;\n }\n if (exponent === 0) {\n exponent = 1 - eBias;\n } else if (exponent === eMax) {\n return mantissa ? NaN : sign ? -Infinity : Infinity;\n } else {\n mantissa = mantissa + pow(2, mantissaLength);\n exponent = exponent - eBias;\n } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);\n};\n\nmodule.exports = {\n pack: pack,\n unpack: unpack\n};\n", "'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n", "'use strict';\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');\nvar FunctionName = require('../internals/function-name');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar fails = require('../internals/fails');\nvar anInstance = require('../internals/an-instance');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar IEEE754 = require('../internals/ieee754');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arrayFill = require('../internals/array-fill');\nvar arraySlice = require('../internals/array-slice-simple');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length';\nvar WRONG_INDEX = 'Wrong index';\nvar getInternalArrayBufferState = InternalStateModule.getterFor(ARRAY_BUFFER);\nvar getInternalDataViewState = InternalStateModule.getterFor(DATA_VIEW);\nvar setInternalState = InternalStateModule.set;\nvar NativeArrayBuffer = global[ARRAY_BUFFER];\nvar $ArrayBuffer = NativeArrayBuffer;\nvar ArrayBufferPrototype = $ArrayBuffer && $ArrayBuffer[PROTOTYPE];\nvar $DataView = global[DATA_VIEW];\nvar DataViewPrototype = $DataView && $DataView[PROTOTYPE];\nvar ObjectPrototype = Object.prototype;\nvar Array = global.Array;\nvar RangeError = global.RangeError;\nvar fill = uncurryThis(arrayFill);\nvar reverse = uncurryThis([].reverse);\n\nvar packIEEE754 = IEEE754.pack;\nvar unpackIEEE754 = IEEE754.unpack;\n\nvar packInt8 = function (number) {\n return [number & 0xFF];\n};\n\nvar packInt16 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF];\n};\n\nvar packInt32 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];\n};\n\nvar unpackInt32 = function (buffer) {\n return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];\n};\n\nvar packFloat32 = function (number) {\n return packIEEE754(number, 23, 4);\n};\n\nvar packFloat64 = function (number) {\n return packIEEE754(number, 52, 8);\n};\n\nvar addGetter = function (Constructor, key, getInternalState) {\n defineBuiltInAccessor(Constructor[PROTOTYPE], key, {\n configurable: true,\n get: function () {\n return getInternalState(this)[key];\n }\n });\n};\n\nvar get = function (view, count, index, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalDataViewState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = store.bytes;\n var start = intIndex + store.byteOffset;\n var pack = arraySlice(bytes, start, start + count);\n return isLittleEndian ? pack : reverse(pack);\n};\n\nvar set = function (view, count, index, conversion, value, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalDataViewState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = store.bytes;\n var start = intIndex + store.byteOffset;\n var pack = conversion(+value);\n for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];\n};\n\nif (!NATIVE_ARRAY_BUFFER) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n var byteLength = toIndex(length);\n setInternalState(this, {\n type: ARRAY_BUFFER,\n bytes: fill(Array(byteLength), 0),\n byteLength: byteLength\n });\n if (!DESCRIPTORS) {\n this.byteLength = byteLength;\n this.detached = false;\n }\n };\n\n ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE];\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, DataViewPrototype);\n anInstance(buffer, ArrayBufferPrototype);\n var bufferState = getInternalArrayBufferState(buffer);\n var bufferLength = bufferState.byteLength;\n var offset = toIntegerOrInfinity(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n setInternalState(this, {\n type: DATA_VIEW,\n buffer: buffer,\n byteLength: byteLength,\n byteOffset: offset,\n bytes: bufferState.bytes\n });\n if (!DESCRIPTORS) {\n this.buffer = buffer;\n this.byteLength = byteLength;\n this.byteOffset = offset;\n }\n };\n\n DataViewPrototype = $DataView[PROTOTYPE];\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, 'byteLength', getInternalArrayBufferState);\n addGetter($DataView, 'buffer', getInternalDataViewState);\n addGetter($DataView, 'byteLength', getInternalDataViewState);\n addGetter($DataView, 'byteOffset', getInternalDataViewState);\n }\n\n defineBuiltIns(DataViewPrototype, {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);\n }\n });\n} else {\n var INCORRECT_ARRAY_BUFFER_NAME = PROPER_FUNCTION_NAME && NativeArrayBuffer.name !== ARRAY_BUFFER;\n /* eslint-disable no-new -- required for testing */\n if (!fails(function () {\n NativeArrayBuffer(1);\n }) || !fails(function () {\n new NativeArrayBuffer(-1);\n }) || fails(function () {\n new NativeArrayBuffer();\n new NativeArrayBuffer(1.5);\n new NativeArrayBuffer(NaN);\n return NativeArrayBuffer.length != 1 || INCORRECT_ARRAY_BUFFER_NAME && !CONFIGURABLE_FUNCTION_NAME;\n })) {\n /* eslint-enable no-new -- required for testing */\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n return new NativeArrayBuffer(toIndex(length));\n };\n\n $ArrayBuffer[PROTOTYPE] = ArrayBufferPrototype;\n\n for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) {\n createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]);\n }\n }\n\n ArrayBufferPrototype.constructor = $ArrayBuffer;\n } else if (INCORRECT_ARRAY_BUFFER_NAME && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(NativeArrayBuffer, 'name', ARRAY_BUFFER);\n }\n\n // WebKit bug - the same parent prototype for typed arrays and data view\n if (setPrototypeOf && getPrototypeOf(DataViewPrototype) !== ObjectPrototype) {\n setPrototypeOf(DataViewPrototype, ObjectPrototype);\n }\n\n // iOS Safari 7.x bug\n var testView = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = uncurryThis(DataViewPrototype.setInt8);\n testView.setInt8(0, 2147483648);\n testView.setInt8(1, 2147483649);\n if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns(DataViewPrototype, {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n }\n }, { unsafe: true });\n}\n\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\n\nmodule.exports = {\n ArrayBuffer: $ArrayBuffer,\n DataView: $DataView\n};\n", "var $ = require('../internals/export');\nvar ArrayBufferModule = require('../internals/array-buffer');\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');\n\n// `DataView` constructor\n// https://tc39.es/ecma262/#sec-dataview-constructor\n$({ global: true, constructor: true, forced: !NATIVE_ARRAY_BUFFER }, {\n DataView: ArrayBufferModule.DataView\n});\n", "var aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\nvar $TypeError = TypeError;\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aCallable(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(O);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw $TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n", "'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n", "'use strict';\nvar FREEZING = require('../internals/freezing');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\nvar isObject = require('../internals/is-object');\nvar enforceInternalState = require('../internals/internal-state').enforce;\nvar fails = require('../internals/fails');\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\n\nvar $Object = Object;\n// eslint-disable-next-line es/no-array-isarray -- safe\nvar isArray = Array.isArray;\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar isExtensible = $Object.isExtensible;\n// eslint-disable-next-line es/no-object-isfrozen -- safe\nvar isFrozen = $Object.isFrozen;\n// eslint-disable-next-line es/no-object-issealed -- safe\nvar isSealed = $Object.isSealed;\n// eslint-disable-next-line es/no-object-freeze -- safe\nvar freeze = $Object.freeze;\n// eslint-disable-next-line es/no-object-seal -- safe\nvar seal = $Object.seal;\n\nvar FROZEN = {};\nvar SEALED = {};\nvar IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;\nvar InternalWeakMap;\n\nvar wrapper = function (init) {\n return function WeakMap() {\n return init(this, arguments.length ? arguments[0] : undefined);\n };\n};\n\n// `WeakMap` constructor\n// https://tc39.es/ecma262/#sec-weakmap-constructor\nvar $WeakMap = collection('WeakMap', wrapper, collectionWeak);\nvar WeakMapPrototype = $WeakMap.prototype;\nvar nativeSet = uncurryThis(WeakMapPrototype.set);\n\n// Chakra Edge bug: adding frozen arrays to WeakMap unfreeze them\nvar hasMSEdgeFreezingBug = function () {\n return FREEZING && fails(function () {\n var frozenArray = freeze([]);\n nativeSet(new $WeakMap(), frozenArray, 1);\n return !isFrozen(frozenArray);\n });\n};\n\n// IE11 WeakMap frozen keys fix\n// We can't use feature detection because it crash some old IE builds\n// https://github.com/zloirock/core-js/issues/485\nif (NATIVE_WEAK_MAP) if (IS_IE11) {\n InternalWeakMap = collectionWeak.getConstructor(wrapper, 'WeakMap', true);\n InternalMetadataModule.enable();\n var nativeDelete = uncurryThis(WeakMapPrototype['delete']);\n var nativeHas = uncurryThis(WeakMapPrototype.has);\n var nativeGet = uncurryThis(WeakMapPrototype.get);\n defineBuiltIns(WeakMapPrototype, {\n 'delete': function (key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceInternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeDelete(this, key) || state.frozen['delete'](key);\n } return nativeDelete(this, key);\n },\n has: function has(key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceInternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeHas(this, key) || state.frozen.has(key);\n } return nativeHas(this, key);\n },\n get: function get(key) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceInternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n return nativeHas(this, key) ? nativeGet(this, key) : state.frozen.get(key);\n } return nativeGet(this, key);\n },\n set: function set(key, value) {\n if (isObject(key) && !isExtensible(key)) {\n var state = enforceInternalState(this);\n if (!state.frozen) state.frozen = new InternalWeakMap();\n nativeHas(this, key) ? nativeSet(this, key, value) : state.frozen.set(key, value);\n } else nativeSet(this, key, value);\n return this;\n }\n });\n// Chakra Edge frozen keys fix\n} else if (hasMSEdgeFreezingBug()) {\n defineBuiltIns(WeakMapPrototype, {\n set: function set(key, value) {\n var arrayIntegrityLevel;\n if (isArray(key)) {\n if (isFrozen(key)) arrayIntegrityLevel = FROZEN;\n else if (isSealed(key)) arrayIntegrityLevel = SEALED;\n }\n nativeSet(this, key, value);\n if (arrayIntegrityLevel == FROZEN) freeze(key);\n if (arrayIntegrityLevel == SEALED) seal(key);\n return this;\n }\n });\n}\n", "'use strict';\nvar isArray = require('../internals/is-array');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg) : false;\n var element, elementLen;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n elementLen = lengthOfArrayLike(element);\n targetIndex = flattenIntoArray(target, original, element, elementLen, targetIndex, depth - 1) - 1;\n } else {\n doesNotExceedSafeInteger(targetIndex + 1);\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n", "var defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (Target, Source, key) {\n key in Target || defineProperty(Target, key, {\n configurable: true,\n get: function () { return Source[key]; },\n set: function (it) { Source[key] = it; }\n });\n};\n", "var isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n", "var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n", "import $ from \"jquery\";\nfunction disableFormSubmission() {\n // disable form submissions\n $(document).on(\"submit\", \"form:not([action])\", function (e) {\n e.preventDefault();\n });\n}\nexport { disableFormSubmission };", "import $ from \"jquery\";\nfunction trackHistory() {\n var origPushState = window.history.pushState;\n window.history.pushState = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var result = origPushState.apply(this, args);\n $(document).trigger(\"pushstate\");\n return result;\n };\n}\nexport { trackHistory };", "'use strict';\n/* eslint-disable es/no-array-prototype-indexof -- required for testing */\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar $indexOf = require('../internals/array-includes').indexOf;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeIndexOf = uncurryThis([].indexOf);\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / nativeIndexOf([1], 1, -0) < 0;\nvar FORCED = NEGATIVE_ZERO || !arrayMethodIsStrict('indexOf');\n\n// `Array.prototype.indexOf` method\n// https://tc39.es/ecma262/#sec-array.prototype.indexof\n$({ target: 'Array', proto: true, forced: FORCED }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n var fromIndex = arguments.length > 1 ? arguments[1] : undefined;\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf(this, searchElement, fromIndex) || 0\n : $indexOf(this, searchElement, fromIndex);\n }\n});\n", "var $ = require('../internals/export');\nvar $parseInt = require('../internals/number-parse-int');\n\n// `parseInt` method\n// https://tc39.es/ecma262/#sec-parseint-string-radix\n$({ global: true, forced: parseInt != $parseInt }, {\n parseInt: $parseInt\n});\n", "import \"core-js/modules/es.array.index-of.js\";\nimport \"core-js/modules/es.parse-int.js\";\nimport \"core-js/modules/es.regexp.exec.js\";\nimport \"core-js/modules/es.regexp.test.js\";\nimport $ from \"jquery\";\nimport { isIE, setIsQt, setIsIE, setIEVersion } from \"../utils/browser\";\nimport { userAgent } from \"../utils/userAgent\";\nfunction getIEVersion() {\n var msie = userAgent.indexOf(\"MSIE \");\n if (isIE() && msie > 0) {\n // IE 10 or older => return version number\n return parseInt(userAgent.substring(msie + 5, userAgent.indexOf(\".\", msie)), 10);\n }\n var trident = userAgent.indexOf(\"Trident/\");\n if (trident > 0) {\n // IE 11 => return version number\n var rv = userAgent.indexOf(\"rv:\");\n return parseInt(userAgent.substring(rv + 3, userAgent.indexOf(\".\", rv)), 10);\n }\n return -1;\n}\nfunction determineBrowserInfo() {\n // For easy handling of Qt quirks using CSS\n\n if (/\\bQt\\//.test(userAgent)) {\n $(document.documentElement).addClass(\"qt\");\n setIsQt(true);\n } else {\n setIsQt(false);\n }\n\n // For Qt on Mac. Note that the target string as of RStudio 1.4.173\n // is \"QtWebEngine\" and does not have a trailing slash.\n if (/\\bQt/.test(userAgent) && /\\bMacintosh/.test(userAgent)) {\n $(document.documentElement).addClass(\"qtmac\");\n }\n\n // Enable special treatment for Qt 5 quirks on Linux\n if (/\\bQt\\/5/.test(userAgent) && /Linux/.test(userAgent)) {\n $(document.documentElement).addClass(\"qt5\");\n }\n\n // Detect IE and older (pre-Chromium) Edge\n setIsIE(/MSIE|Trident|Edge/.test(userAgent));\n setIEVersion(getIEVersion());\n}\nexport { determineBrowserInfo };", "'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar anObject = require('../internals/an-object');\nvar toString = require('../internals/to-string');\n\nvar DELEGATES_TO_EXEC = function () {\n var execCalled = false;\n var re = /[ac]/;\n re.exec = function () {\n execCalled = true;\n return /./.exec.apply(this, arguments);\n };\n return re.test('abc') === true && execCalled;\n}();\n\nvar nativeTest = /./.test;\n\n// `RegExp.prototype.test` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.test\n$({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {\n test: function (S) {\n var R = anObject(this);\n var string = toString(S);\n var exec = R.exec;\n if (!isCallable(exec)) return call(nativeTest, R, string);\n var result = call(exec, R, string);\n if (result === null) return false;\n anObject(result);\n return true;\n }\n});\n", "var isQtVal = false;\nvar isIEVal = false;\nvar versionIE = -1;\nfunction setIsQt(isQt) {\n isQtVal = isQt;\n}\nfunction setIsIE(isIE) {\n isIEVal = isIE;\n}\nfunction setIEVersion(versionIE_) {\n versionIE = versionIE_;\n}\nfunction isQt() {\n return isQtVal;\n}\nfunction isIE() {\n return isIEVal;\n}\n\n// (Name existed before TS conversion)\n// eslint-disable-next-line @typescript-eslint/naming-convention\nfunction IEVersion() {\n return versionIE;\n}\nexport { isQt, isIE, IEVersion, setIsQt, setIsIE, setIEVersion };", "var userAgent;\nfunction setUserAgent(userAgent_) {\n userAgent = userAgent_;\n}\nexport { userAgent, setUserAgent };", "function windowShiny() {\n // Use `any` type as we know what we are doing is _dangerous_\n // Immediately init shiny on the window\n if (!window[\"Shiny\"]) {\n window[\"Shiny\"] = {};\n }\n return window[\"Shiny\"];\n}\nexport { windowShiny };", "var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n", "// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.promise.constructor');\nrequire('../modules/es.promise.all');\nrequire('../modules/es.promise.catch');\nrequire('../modules/es.promise.race');\nrequire('../modules/es.promise.reject');\nrequire('../modules/es.promise.resolve');\n", "var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\n// eslint-disable-next-line es/no-object-defineproperty -- safe\n$({ target: 'Object', stat: true, forced: Object.defineProperty !== defineProperty, sham: !DESCRIPTORS }, {\n defineProperty: defineProperty\n});\n", "// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.symbol.constructor');\nrequire('../modules/es.symbol.for');\nrequire('../modules/es.symbol.key-for');\nrequire('../modules/es.json.stringify');\nrequire('../modules/es.object.get-own-property-symbols');\n", "// `Symbol.prototype.description` getter\n// https://tc39.es/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar toString = require('../internals/to-string');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\nvar SymbolPrototype = NativeSymbol && NativeSymbol.prototype;\n\nif (DESCRIPTORS && isCallable(NativeSymbol) && (!('description' in SymbolPrototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString(arguments[0]);\n var result = isPrototypeOf(SymbolPrototype, this)\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n SymbolWrapper.prototype = SymbolPrototype;\n SymbolPrototype.constructor = SymbolWrapper;\n\n var NATIVE_SYMBOL = String(NativeSymbol('test')) == 'Symbol(test)';\n var thisSymbolValue = uncurryThis(SymbolPrototype.valueOf);\n var symbolDescriptiveString = uncurryThis(SymbolPrototype.toString);\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n var replace = uncurryThis(''.replace);\n var stringSlice = uncurryThis(''.slice);\n\n defineBuiltInAccessor(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = thisSymbolValue(this);\n if (hasOwn(EmptyStringDescriptionStore, symbol)) return '';\n var string = symbolDescriptiveString(symbol);\n var desc = NATIVE_SYMBOL ? stringSlice(string, 7, -1) : replace(string, regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, constructor: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n", "var defineWellKnownSymbol = require('../internals/well-known-symbol-define');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.promise.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport \"core-js/modules/es.symbol.async-iterator.js\";\nimport \"core-js/modules/es.symbol.to-string-tag.js\";\nimport \"core-js/modules/es.json.to-string-tag.js\";\nimport \"core-js/modules/es.math.to-string-tag.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.array.for-each.js\";\nimport \"core-js/modules/web.dom-collections.for-each.js\";\nimport \"core-js/modules/es.function.name.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.array.reverse.js\";\nimport \"core-js/modules/es.array.slice.js\";\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context); if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator.return && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nimport $ from \"jquery\";\nimport { InputBinding, OutputBinding } from \"../bindings\";\nimport { resetBrush } from \"../imageutils/resetBrush\";\nimport { $escape, compareVersion } from \"../utils\";\nimport { showNotification, removeNotification } from \"./notifications\";\nimport { showModal, removeModal } from \"./modal\";\nimport { showReconnectDialog, hideReconnectDialog } from \"./reconnectDialog\";\nimport { renderContentAsync, renderContent, renderDependenciesAsync, renderDependencies, renderHtmlAsync, renderHtml } from \"./render\";\nimport { initShiny } from \"./init\";\nimport { setFileInputBinding } from \"./initedMethods\";\nimport { addCustomMessageHandler } from \"./shinyapp\";\nimport { initInputBindings } from \"../bindings/input\";\nimport { initOutputBindings } from \"../bindings/output\";\nimport { showErrorInClientConsole } from \"../components/errorConsole\";\nvar windowShiny;\nfunction setShiny(windowShiny_) {\n windowShiny = windowShiny_;\n\n // `process.env.SHINY_VERSION` is overwritten to the Shiny version at build time.\n // During testing, the `Shiny.version` will be `\"development\"`\n windowShiny.version = process.env.SHINY_VERSION || \"development\";\n var _initInputBindings = initInputBindings(),\n inputBindings = _initInputBindings.inputBindings,\n fileInputBinding = _initInputBindings.fileInputBinding;\n var _initOutputBindings = initOutputBindings(),\n outputBindings = _initOutputBindings.outputBindings;\n\n // set variable to be retrieved later\n setFileInputBinding(fileInputBinding);\n windowShiny.$escape = $escape;\n windowShiny.compareVersion = compareVersion;\n windowShiny.inputBindings = inputBindings;\n windowShiny.InputBinding = InputBinding;\n windowShiny.outputBindings = outputBindings;\n windowShiny.OutputBinding = OutputBinding;\n windowShiny.resetBrush = resetBrush;\n windowShiny.notifications = {\n show: showNotification,\n remove: removeNotification\n };\n windowShiny.modal = {\n show: showModal,\n remove: removeModal\n };\n windowShiny.addCustomMessageHandler = addCustomMessageHandler;\n windowShiny.showReconnectDialog = showReconnectDialog;\n windowShiny.hideReconnectDialog = hideReconnectDialog;\n windowShiny.renderDependenciesAsync = renderDependenciesAsync;\n windowShiny.renderDependencies = renderDependencies;\n windowShiny.renderContentAsync = renderContentAsync;\n windowShiny.renderContent = renderContent;\n windowShiny.renderHtmlAsync = renderHtmlAsync;\n windowShiny.renderHtml = renderHtml;\n windowShiny.inDevMode = function () {\n if (\"__SHINY_DEV_MODE__\" in window) return Boolean(window.__SHINY_DEV_MODE__);\n return false;\n };\n $(function () {\n // Init Shiny a little later than document ready, so user code can\n // run first (i.e. to register bindings)\n setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n _context.next = 3;\n return initShiny(windowShiny);\n case 3:\n _context.next = 9;\n break;\n case 5:\n _context.prev = 5;\n _context.t0 = _context[\"catch\"](0);\n showErrorInClientConsole(_context.t0);\n throw _context.t0;\n case 9:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[0, 5]]);\n })), 1);\n });\n}\nexport { windowShiny, setShiny };", "'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n", "var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n", "var defineWellKnownSymbol = require('../internals/well-known-symbol-define');\n\n// `Symbol.asyncIterator` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.asynciterator\ndefineWellKnownSymbol('asyncIterator');\n", "var getBuiltIn = require('../internals/get-built-in');\nvar defineWellKnownSymbol = require('../internals/well-known-symbol-define');\nvar setToStringTag = require('../internals/set-to-string-tag');\n\n// `Symbol.toStringTag` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.tostringtag\ndefineWellKnownSymbol('toStringTag');\n\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag(getBuiltIn('Symbol'), 'Symbol');\n", "var global = require('../internals/global');\nvar setToStringTag = require('../internals/set-to-string-tag');\n\n// JSON[@@toStringTag] property\n// https://tc39.es/ecma262/#sec-json-@@tostringtag\nsetToStringTag(global.JSON, 'JSON', true);\n", "var setToStringTag = require('../internals/set-to-string-tag');\n\n// Math[@@toStringTag] property\n// https://tc39.es/ecma262/#sec-math-@@tostringtag\nsetToStringTag(Math, 'Math', true);\n", "var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toObject = require('../internals/to-object');\nvar nativeGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(it) {\n return nativeGetPrototypeOf(toObject(it));\n }\n});\n\n", "'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n", "var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n", "var DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n", "var $ = require('../internals/export');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n$({ target: 'Object', stat: true }, {\n setPrototypeOf: setPrototypeOf\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isArray = require('../internals/is-array');\n\nvar nativeReverse = uncurryThis([].reverse);\nvar test = [1, 2];\n\n// `Array.prototype.reverse` method\n// https://tc39.es/ecma262/#sec-array.prototype.reverse\n// fix for Safari 12.0 bug\n// https://bugs.webkit.org/show_bug.cgi?id=188794\n$({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()) }, {\n reverse: function reverse() {\n // eslint-disable-next-line no-self-assign -- dirty hack\n if (isArray(this)) this.length = this.length;\n return nativeReverse(this);\n }\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n", "var defineWellKnownSymbol = require('../internals/well-known-symbol-define');\nvar defineSymbolToPrimitive = require('../internals/symbol-define-to-primitive');\n\n// `Symbol.toPrimitive` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.toprimitive\ndefineWellKnownSymbol('toPrimitive');\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\ndefineSymbolToPrimitive();\n", "var hasOwn = require('../internals/has-own-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar dateToPrimitive = require('../internals/date-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar DatePrototype = Date.prototype;\n\n// `Date.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive\nif (!hasOwn(DatePrototype, TO_PRIMITIVE)) {\n defineBuiltIn(DatePrototype, TO_PRIMITIVE, dateToPrimitive);\n}\n", "'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar path = require('../internals/path');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar PureNumberNamespace = path[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar stringSlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = stringSlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nvar FORCED = isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'));\n\nvar calledWithNew = function (dummy) {\n // includes check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); });\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nvar NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n return calledWithNew(this) ? inheritIfRequired(Object(n), this, NumberWrapper) : n;\n};\n\nNumberWrapper.prototype = NumberPrototype;\nif (FORCED && !IS_PURE) NumberPrototype.constructor = NumberWrapper;\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED }, {\n Number: NumberWrapper\n});\n\n// Use `internal/copy-constructor-properties` helper in `core-js@4`\nvar copyConstructorProperties = function (target, source) {\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(source) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(source, key = keys[j]) && !hasOwn(target, key)) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n\nif (IS_PURE && PureNumberNamespace) copyConstructorProperties(path[NUMBER], PureNumberNamespace);\nif (FORCED || IS_PURE) copyConstructorProperties(path[NUMBER], NativeNumber);\n", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.function.name.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { mergeSort } from \"../utils\";\nvar BindingRegistry = /*#__PURE__*/function () {\n function BindingRegistry() {\n _classCallCheck(this, BindingRegistry);\n _defineProperty(this, \"name\", void 0);\n _defineProperty(this, \"bindings\", []);\n _defineProperty(this, \"bindingNames\", {});\n }\n _createClass(BindingRegistry, [{\n key: \"register\",\n value: function register(binding, bindingName) {\n var priority = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n var bindingObj = {\n binding: binding,\n priority: priority\n };\n this.bindings.unshift(bindingObj);\n if (bindingName) {\n this.bindingNames[bindingName] = bindingObj;\n binding.name = bindingName;\n }\n }\n }, {\n key: \"setPriority\",\n value: function setPriority(bindingName, priority) {\n var bindingObj = this.bindingNames[bindingName];\n if (!bindingObj) throw \"Tried to set priority on unknown binding \" + bindingName;\n bindingObj.priority = priority || 0;\n }\n }, {\n key: \"getPriority\",\n value: function getPriority(bindingName) {\n var bindingObj = this.bindingNames[bindingName];\n if (!bindingObj) return false;\n return bindingObj.priority;\n }\n }, {\n key: \"getBindings\",\n value: function getBindings() {\n // Sort the bindings. The ones with higher priority are consulted\n // first; ties are broken by most-recently-registered.\n return mergeSort(this.bindings, function (a, b) {\n return b.priority - a.priority;\n });\n }\n }]);\n return BindingRegistry;\n}();\nexport { BindingRegistry };", "import \"core-js/modules/es.regexp.exec.js\";\nimport \"core-js/modules/es.string.replace.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.regexp.to-string.js\";\nimport \"core-js/modules/es.parse-float.js\";\nimport \"core-js/modules/es.number.to-precision.js\";\nimport \"core-js/modules/es.array.concat.js\";\nimport \"core-js/modules/es.array.slice.js\";\nimport \"core-js/modules/es.array.splice.js\";\nimport \"core-js/modules/es.array.for-each.js\";\nimport \"core-js/modules/web.dom-collections.for-each.js\";\nimport \"core-js/modules/es.object.keys.js\";\nimport \"core-js/modules/es.parse-int.js\";\nimport $ from \"jquery\";\nimport { windowDevicePixelRatio } from \"../window/pixelRatio\";\nimport { hasOwnProperty, hasDefinedProperty } from \"./object\";\nfunction escapeHTML(str) {\n /* eslint-disable @typescript-eslint/naming-convention */\n var escaped = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n // eslint-disable-next-line prettier/prettier\n '\"': \""\",\n \"'\": \"'\",\n \"/\": \"/\"\n };\n return str.replace(/[&<>'\"/]/g, function (m) {\n return escaped[m];\n });\n}\nfunction randomId() {\n return Math.floor(0x100000000 + Math.random() * 0xf00000000).toString(16);\n}\nfunction strToBool(str) {\n if (!str || !str.toLowerCase) return undefined;\n switch (str.toLowerCase()) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n return undefined;\n }\n}\n\n// A wrapper for getComputedStyle that is compatible with older browsers.\n// This is significantly faster than jQuery's .css() function.\nfunction getStyle(el, styleProp) {\n var x = undefined;\n if (\"currentStyle\" in el) {\n // @ts-expect-error; Old, IE 5+ attribute only - https://developer.mozilla.org/en-US/docs/Web/API/Element/currentStyle\n x = el.currentStyle[styleProp];\n } else {\n var _document, _document$defaultView;\n // getComputedStyle can return null when we're inside a hidden iframe on\n // Firefox; don't attempt to retrieve style props in this case.\n // https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n var style = (_document = document) === null || _document === void 0 ? void 0 : (_document$defaultView = _document.defaultView) === null || _document$defaultView === void 0 ? void 0 : _document$defaultView.getComputedStyle(el, null);\n if (style) x = style.getPropertyValue(styleProp);\n }\n return x;\n}\n\n// Convert a number to a string with leading zeros\nfunction padZeros(n, digits) {\n var str = n.toString();\n while (str.length < digits) str = \"0\" + str;\n return str;\n}\n\n// Round to a specified number of significant digits.\nfunction roundSignif(x) {\n var digits = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n if (digits < 1) throw \"Significant digits must be at least 1.\";\n\n // This converts to a string and back to a number, which is inelegant, but\n // is less prone to FP rounding error than an alternate method which used\n // Math.round().\n return parseFloat(x.toPrecision(digits));\n}\n\n// Take a string with format \"YYYY-MM-DD\" and return a Date object.\n// IE8 and QTWebKit don't support YYYY-MM-DD, but they support YYYY/MM/DD\nfunction parseDate(dateString) {\n var date = new Date(dateString);\n if (date.toString() === \"Invalid Date\") {\n date = new Date(dateString.replace(/-/g, \"/\"));\n }\n return date;\n}\n\n// Given a Date object, return a string in yyyy-mm-dd format, using the\n// UTC date. This may be a day off from the date in the local time zone.\n\nfunction formatDateUTC(date) {\n if (date instanceof Date) {\n return date.getUTCFullYear() + \"-\" + padZeros(date.getUTCMonth() + 1, 2) + \"-\" + padZeros(date.getUTCDate(), 2);\n } else {\n return null;\n }\n}\n\n// Given an element and a function(width, height), returns a function(). When\n// the output function is called, it calls the input function with the offset\n// width and height of the input element--but only if the size of the element\n// is non-zero and the size is different than the last time the output\n// function was called.\n//\n// Basically we are trying to filter out extraneous calls to func, so that\n// when the window size changes or whatever, we don't run resize logic for\n// elements that haven't actually changed size or aren't visible anyway.\n\nfunction makeResizeFilter(el, func) {\n var lastSize = {};\n return function () {\n var rect = el.getBoundingClientRect();\n var size = {\n w: rect.width,\n h: rect.height\n };\n if (size.w === 0 && size.h === 0) return;\n if (size.w === lastSize.w && size.h === lastSize.h) return;\n lastSize = size;\n func(size.w, size.h);\n };\n}\nfunction pixelRatio() {\n if (windowDevicePixelRatio()) {\n return Math.round(windowDevicePixelRatio() * 100) / 100;\n } else {\n return 1;\n }\n}\n\n// Takes a string expression and returns a function that takes an argument.\n//\n// When the function is executed, it will evaluate that expression using\n// \"with\" on the argument value, and return the result.\nfunction scopeExprToFunc(expr) {\n /*jshint evil: true */\n var exprEscaped = expr.replace(/[\\\\\"']/g, \"\\\\$&\")\n // eslint-disable-next-line no-control-regex\n .replace(/\\u0000/g, \"\\\\0\").replace(/\\n/g, \"\\\\n\").replace(/\\r/g, \"\\\\r\")\n // \\b has a special meaning; need [\\b] to match backspace char.\n .replace(/[\\b]/g, \"\\\\b\");\n var func;\n try {\n // @ts-expect-error; Do not know how to type this _dangerous_ situation\n func = new Function(\"with (this) {\\n try {\\n return (\".concat(expr, \");\\n } catch (e) {\\n console.error('Error evaluating expression: \").concat(exprEscaped, \"');\\n throw e;\\n }\\n }\"));\n } catch (e) {\n console.error(\"Error parsing expression: \" + expr);\n throw e;\n }\n return function (scope) {\n return func.call(scope);\n };\n}\nfunction asArray(value) {\n if (value === null || value === undefined) return [];\n if (Array.isArray(value)) return value;\n return [value];\n}\n\n// We need a stable sorting algorithm for ordering\n// bindings by priority and insertion order.\nfunction mergeSort(list, sortfunc) {\n function merge(a, b) {\n var ia = 0;\n var ib = 0;\n var sorted = [];\n while (ia < a.length && ib < b.length) {\n if (sortfunc(a[ia], b[ib]) <= 0) {\n sorted.push(a[ia++]);\n } else {\n sorted.push(b[ib++]);\n }\n }\n while (ia < a.length) sorted.push(a[ia++]);\n while (ib < b.length) sorted.push(b[ib++]);\n return sorted;\n }\n\n // Don't mutate list argument\n list = list.slice(0);\n for (var chunkSize = 1; chunkSize < list.length; chunkSize *= 2) {\n for (var i = 0; i < list.length; i += chunkSize * 2) {\n var listA = list.slice(i, i + chunkSize);\n var listB = list.slice(i + chunkSize, i + chunkSize * 2);\n var merged = merge(listA, listB);\n var args = [i, merged.length];\n Array.prototype.push.apply(args, merged);\n Array.prototype.splice.apply(list, args);\n }\n }\n return list;\n}\n\n// Escape jQuery selector metacharacters: !\"#$%&'()*+,./:;<=>?@[\\]^`{|}~\n\nfunction $escape(val) {\n if (typeof val === \"undefined\") return val;\n return val.replace(/([!\"#$%&'()*+,./:;<=>?@[\\\\\\]^`{|}~])/g, \"\\\\$1\");\n}\n\n// Maps a function over an object, preserving keys. Like the mapValues\n// function from lodash.\nfunction mapValues(obj, f) {\n var newObj = {};\n Object.keys(obj).forEach(function (key) {\n newObj[key] = f(obj[key], key, obj);\n });\n return newObj;\n}\n\n// This is does the same as Number.isNaN, but that function unfortunately does\n// not exist in any version of IE.\nfunction isnan(x) {\n return typeof x === \"number\" && isNaN(x);\n}\n\n// Binary equality function used by the equal function.\n// (Name existed before TS conversion)\n// eslint-disable-next-line @typescript-eslint/naming-convention\nfunction _equal(x, y) {\n if ($.type(x) === \"object\" && $.type(y) === \"object\") {\n var xo = x;\n var yo = y;\n if (Object.keys(xo).length !== Object.keys(yo).length) return false;\n for (var prop in xo) {\n if (!hasOwnProperty(yo, prop) || !_equal(xo[prop], yo[prop])) return false;\n }\n return true;\n } else if ($.type(x) === \"array\" && $.type(y) === \"array\") {\n var xa = x;\n var ya = y;\n if (xa.length !== ya.length) return false;\n for (var i = 0; i < xa.length; i++) if (!_equal(xa[i], ya[i])) return false;\n return true;\n } else {\n return x === y;\n }\n}\n\n// Structural or \"deep\" equality predicate. Tests two or more arguments for\n// equality, traversing arrays and objects (as determined by $.type) as\n// necessary.\n//\n// Objects other than objects and arrays are tested for equality using ===.\nfunction equal() {\n if (arguments.length < 2) throw new Error(\"equal requires at least two arguments.\");\n for (var i = 0; i < arguments.length - 1; i++) {\n if (!_equal(i < 0 || arguments.length <= i ? undefined : arguments[i], i + 1 < 0 || arguments.length <= i + 1 ? undefined : arguments[i + 1])) return false;\n }\n return true;\n}\n\n// Compare version strings like \"1.0.1\", \"1.4-2\". `op` must be a string like\n// \"==\" or \"<\".\nvar compareVersion = function compareVersion(a, op, b) {\n function versionParts(ver) {\n return (ver + \"\").replace(/-/, \".\").replace(/(\\.0)+[^.]*$/, \"\").split(\".\");\n }\n function cmpVersion(a, b) {\n var aParts = versionParts(a);\n var bParts = versionParts(b);\n var len = Math.min(aParts.length, bParts.length);\n var cmp;\n for (var i = 0; i < len; i++) {\n cmp = parseInt(aParts[i], 10) - parseInt(bParts[i], 10);\n if (cmp !== 0) {\n return cmp;\n }\n }\n return aParts.length - bParts.length;\n }\n var diff = cmpVersion(a, b);\n if (op === \"==\") return diff === 0;else if (op === \">=\") return diff >= 0;else if (op === \">\") return diff > 0;else if (op === \"<=\") return diff <= 0;else if (op === \"<\") return diff < 0;else throw \"Unknown operator: \".concat(op);\n};\nfunction updateLabel(labelTxt, labelNode) {\n // Only update if label was specified in the update method\n if (typeof labelTxt === \"undefined\") return;\n if (labelNode.length !== 1) {\n throw new Error(\"labelNode must be of length 1\");\n }\n\n // Should the label be empty?\n var emptyLabel = Array.isArray(labelTxt) && labelTxt.length === 0;\n if (emptyLabel) {\n labelNode.addClass(\"shiny-label-null\");\n } else {\n labelNode.text(labelTxt);\n labelNode.removeClass(\"shiny-label-null\");\n }\n}\n\n// Compute the color property of an a tag, scoped within the element\nfunction getComputedLinkColor(el) {\n var a = document.createElement(\"a\");\n a.href = \"/\";\n var div = document.createElement(\"div\");\n div.style.setProperty(\"position\", \"absolute\", \"important\");\n div.style.setProperty(\"top\", \"-1000px\", \"important\");\n div.style.setProperty(\"left\", \"0\", \"important\");\n div.style.setProperty(\"width\", \"30px\", \"important\");\n div.style.setProperty(\"height\", \"10px\", \"important\");\n div.appendChild(a);\n el.appendChild(div);\n var linkColor = window.getComputedStyle(a).getPropertyValue(\"color\");\n el.removeChild(div);\n return linkColor;\n}\nfunction isBS3() {\n // @ts-expect-error; Check if `window.bootstrap` exists\n return !window.bootstrap;\n}\nfunction toLowerCase(str) {\n return str.toLowerCase();\n}\nexport { escapeHTML, randomId, strToBool, getStyle, padZeros, roundSignif, parseDate, formatDateUTC, makeResizeFilter, pixelRatio, scopeExprToFunc, asArray, mergeSort, $escape, mapValues, isnan, _equal, equal, compareVersion, updateLabel, getComputedLinkColor, hasOwnProperty, hasDefinedProperty, isBS3, toLowerCase };", "'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n", "'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar defineBuiltIn = require('../internals/define-built-in');\nvar anObject = require('../internals/an-object');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n defineBuiltIn(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var pattern = $toString(R.source);\n var flags = $toString(getRegExpFlags(R));\n return '/' + pattern + '/' + flags;\n }, { unsafe: true });\n}\n", "var $ = require('../internals/export');\nvar $parseFloat = require('../internals/number-parse-float');\n\n// `parseFloat` method\n// https://tc39.es/ecma262/#sec-parsefloat-string\n$({ global: true, forced: parseFloat != $parseFloat }, {\n parseFloat: $parseFloat\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar thisNumberValue = require('../internals/this-number-value');\n\nvar nativeToPrecision = uncurryThis(1.0.toPrecision);\n\nvar FORCED = fails(function () {\n // IE7-\n return nativeToPrecision(1, undefined) !== '1';\n}) || !fails(function () {\n // V8 ~ Android 4.3-\n nativeToPrecision({});\n});\n\n// `Number.prototype.toPrecision` method\n// https://tc39.es/ecma262/#sec-number.prototype.toprecision\n$({ target: 'Number', proto: true, forced: FORCED }, {\n toPrecision: function toPrecision(precision) {\n return precision === undefined\n ? nativeToPrecision(thisNumberValue(this))\n : nativeToPrecision(thisNumberValue(this), precision);\n }\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n", "'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar setArrayLength = require('../internals/array-set-length');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toIntegerOrInfinity(deleteCount), 0), len - actualStart);\n }\n doesNotExceedSafeInteger(len + insertCount - actualDeleteCount);\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) deletePropertyOrThrow(O, k - 1);\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n setArrayLength(O, len - actualDeleteCount + insertCount);\n return A;\n }\n});\n", "var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n", "function windowDevicePixelRatio() {\n return window.devicePixelRatio;\n}\nexport { windowDevicePixelRatio };", "// Inspriation from https://fettblog.eu/typescript-hasownproperty/\n// But mixing with \"NonNullable key of Obj\" instead of \"key to unknown values\"\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\n// Return true if the key exists on the object and the value is not undefined.\n//\n// This method is mainly used in input bindings' `receiveMessage` method.\n// Since we know that the values are sent by Shiny via `{jsonlite}`,\n// then we know that there are no `undefined` values. `null` is possible, but not `undefined`.\nfunction hasDefinedProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop) && obj[prop] !== undefined;\n}\n\n// Return type for non-null value\n\n// Logic\nfunction ifUndefined(value, alternate) {\n if (value === undefined) return alternate;\n return value;\n}\nexport { hasOwnProperty, hasDefinedProperty, ifUndefined };", "import \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar InputBinding = /*#__PURE__*/function () {\n function InputBinding() {\n _classCallCheck(this, InputBinding);\n _defineProperty(this, \"name\", void 0);\n }\n _createClass(InputBinding, [{\n key: \"find\",\n value:\n // Returns a jQuery object or element array that contains the\n // descendants of scope that match this binding\n function find(scope) {\n throw \"Not implemented\";\n scope; // unused var\n }\n }, {\n key: \"getId\",\n value: function getId(el) {\n return el.getAttribute(\"data-input-id\") || el.id;\n }\n\n // Gives the input a type in case the server needs to know it\n // to deserialize the JSON correctly\n }, {\n key: \"getType\",\n value: function getType(el) {\n return null;\n el; // unused var\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n throw \"Not implemented\";\n el; // unused var\n }\n\n // The callback method takes one argument, whose value is boolean. If true,\n // allow deferred (debounce or throttle) sending depending on the value of\n // getRatePolicy. If false, send value immediately. Default behavior is `false`\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n // empty\n el; // unused var\n callback; // unused var\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n // empty\n el; // unused var\n }\n\n // This is used for receiving messages that tell the input object to do\n // things, such as setting values (including min, max, and others).\n // 'data' should be an object with elements corresponding to value, min,\n // max, etc., as appropriate for the type of input object. It also should\n // trigger a change event.\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n throw \"Not implemented\";\n el; // unused var\n data; // unused var\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n throw \"Not implemented\";\n el; // unused var\n }\n }, {\n key: \"getRatePolicy\",\n value: function getRatePolicy(el) {\n return null;\n el; // unused var\n }\n\n // Some input objects need initialization before being bound. This is\n // called when the document is ready (for statically-added input objects),\n // and when new input objects are added to the document with\n // htmlOutputBinding.renderValue() (for dynamically-added input objects).\n // This is called before the input is bound.\n }, {\n key: \"initialize\",\n value: function initialize(el) {\n //empty\n el;\n }\n\n // This is called after unbinding the output.\n }, {\n key: \"dispose\",\n value: function dispose(el) {\n //empty\n el;\n }\n }]);\n return InputBinding;\n}(); //// NOTES FOR FUTURE DEV\n// Turn register systemin into something that is intialized for every instance.\n// \"Have a new instance for every item, not an instance that does work on every item\"\n//\n// * Keep register as is for historical purposes\n// make a new register function that would take a class\n// these class could be constructed at build time\n// store the constructed obj on the ele and retrieve\n// Then the classes could store their information within their local class, rather than on the element\n// VERY CLEAN!!!\n// to invoke methods, it would be something like `el.shinyClass.METHOD(x,y,z)`\n// * See https://github.com/rstudio/shinyvalidate/blob/c8becd99c01fac1bac03b50e2140f49fca39e7f4/srcjs/shinyvalidate.js#L157-L167\n// these methods would be added using a new method like `inputBindings.registerClass(ClassObj, name)`\n// things to watch out for:\n// * unbind, then rebind. Maybe we stash the local content.\n// Updates:\n// * Feel free to alter method names on classes. (And make them private)\n//// END NOTES FOR FUTURE DEV\nexport { InputBinding };", "'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n", "var $ = require('../internals/export');\nvar global = require('../internals/global');\nvar setToStringTag = require('../internals/set-to-string-tag');\n\n$({ global: true }, { Reflect: {} });\n\n// Reflect[@@toStringTag] property\n// https://tc39.es/ecma262/#sec-reflect-@@tostringtag\nsetToStringTag(global.Reflect, 'Reflect', true);\n", "var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind');\nvar aConstructor = require('../internals/a-constructor');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\nvar ObjectPrototype = Object.prototype;\nvar push = [].push;\n\n// `Reflect.construct` method\n// https://tc39.es/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\n\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\n\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aConstructor(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aConstructor(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n apply(push, $args, args);\n return new (apply(bind, Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : ObjectPrototype);\n var result = apply(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport $ from \"jquery\";\nimport { InputBinding } from \"./inputBinding\";\nimport { hasDefinedProperty } from \"../../utils\";\nvar CheckboxInputBinding = /*#__PURE__*/function (_InputBinding) {\n _inherits(CheckboxInputBinding, _InputBinding);\n var _super = _createSuper(CheckboxInputBinding);\n function CheckboxInputBinding() {\n _classCallCheck(this, CheckboxInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(CheckboxInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Inputs also have .shiny-input-checkbox class\n return $(scope).find('input[type=\"checkbox\"]');\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n return el.checked;\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n el.checked = value;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"change.checkboxInputBinding\", function () {\n callback(true);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".checkboxInputBinding\");\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n return {\n label: $(el).parent().find(\"span\").text(),\n value: el.checked\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n if (hasDefinedProperty(data, \"value\")) {\n el.checked = data.value;\n }\n\n // checkboxInput()'s label works different from other\n // input labels...the label container should always exist\n if (hasDefinedProperty(data, \"label\")) {\n $(el).parent().find(\"span\").text(data.label);\n }\n $(el).trigger(\"change\");\n }\n }]);\n return CheckboxInputBinding;\n}(InputBinding);\nexport { CheckboxInputBinding };", "'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.string.trim.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { InputBinding } from \"./inputBinding\";\nimport { $escape, updateLabel, hasDefinedProperty } from \"../../utils\";\n// Get the DOM element that contains the top-level label\nfunction getLabelNode(el) {\n return $(el).find('label[for=\"' + $escape(el.id) + '\"]');\n}\n// Given an input DOM object, get the associated label. Handles labels\n// that wrap the input as well as labels associated with 'for' attribute.\nfunction getLabel(obj) {\n var parentNode = obj.parentNode;\n\n // If \n if (parentNode.tagName === \"LABEL\") {\n return $(parentNode).find(\"span\").text().trim();\n }\n return null;\n}\n// Given an input DOM object, set the associated label. Handles labels\n// that wrap the input as well as labels associated with 'for' attribute.\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction setLabel(obj, value) {\n var parentNode = obj.parentNode;\n\n // If \n if (parentNode.tagName === \"LABEL\") {\n $(parentNode).find(\"span\").text(value);\n }\n return null;\n}\nvar CheckboxGroupInputBinding = /*#__PURE__*/function (_InputBinding) {\n _inherits(CheckboxGroupInputBinding, _InputBinding);\n var _super = _createSuper(CheckboxGroupInputBinding);\n function CheckboxGroupInputBinding() {\n _classCallCheck(this, CheckboxGroupInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(CheckboxGroupInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n return $(scope).find(\".shiny-input-checkboxgroup\");\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n // Select the checkbox objects that have name equal to the grouping div's id\n var $objs = $('input:checkbox[name=\"' + $escape(el.id) + '\"]:checked');\n var values = new Array($objs.length);\n for (var i = 0; i < $objs.length; i++) {\n values[i] = $objs[i].value;\n }\n return values;\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n var _value;\n // Null value should be treated as empty array\n value = (_value = value) !== null && _value !== void 0 ? _value : [];\n\n // Clear all checkboxes\n $('input:checkbox[name=\"' + $escape(el.id) + '\"]').prop(\"checked\", false);\n\n // Accept array\n if (value instanceof Array) {\n for (var i = 0; i < value.length; i++) {\n $('input:checkbox[name=\"' + $escape(el.id) + '\"][value=\"' + $escape(value[i]) + '\"]').prop(\"checked\", true);\n }\n // Else assume it's a single value\n } else {\n $('input:checkbox[name=\"' + $escape(el.id) + '\"][value=\"' + $escape(value) + '\"]').prop(\"checked\", true);\n }\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n var $objs = $('input:checkbox[name=\"' + $escape(el.id) + '\"]');\n\n // Store options in an array of objects, each with with value and label\n var options = new Array($objs.length);\n for (var i = 0; i < options.length; i++) {\n options[i] = {\n value: $objs[i].value,\n label: getLabel($objs[i])\n };\n }\n return {\n label: getLabelNode(el).text(),\n value: this.getValue(el),\n options: options\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $el = $(el);\n\n // This will replace all the options\n if (hasDefinedProperty(data, \"options\")) {\n // Clear existing options and add each new one\n $el.find(\"div.shiny-options-group\").remove();\n // Backward compatibility: for HTML generated by shinybootstrap2 package\n $el.find(\"label.checkbox\").remove();\n $el.append(data.options);\n }\n if (hasDefinedProperty(data, \"value\")) {\n this.setValue(el, data.value);\n }\n updateLabel(data.label, getLabelNode(el));\n $(el).trigger(\"change\");\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"change.checkboxGroupInputBinding\", function () {\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".checkboxGroupInputBinding\");\n }\n }]);\n return CheckboxGroupInputBinding;\n}(InputBinding);\nexport { CheckboxGroupInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.regexp.exec.js\";\nimport \"core-js/modules/es.regexp.test.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { $escape, hasDefinedProperty, updateLabel } from \"../../utils\";\nimport { TextInputBindingBase } from \"./text\";\nfunction getLabelNode(el) {\n return $(el).parent().find('label[for=\"' + $escape(el.id) + '\"]');\n}\nvar NumberInputBinding = /*#__PURE__*/function (_TextInputBindingBase) {\n _inherits(NumberInputBinding, _TextInputBindingBase);\n var _super = _createSuper(NumberInputBinding);\n function NumberInputBinding() {\n _classCallCheck(this, NumberInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(NumberInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Inputs also have .shiny-input-number class\n return $(scope).find('input[type=\"number\"]');\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n var numberVal = $(el).val();\n if (typeof numberVal == \"string\") {\n if (/^\\s*$/.test(numberVal))\n // Return null if all whitespace\n return null;\n }\n\n // If valid Javascript number string, coerce to number\n var numberValue = Number(numberVal);\n if (!isNaN(numberValue)) {\n return numberValue;\n }\n return numberVal; // If other string like \"1e6\", send it unchanged\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n el.value = \"\" + value;\n }\n }, {\n key: \"getType\",\n value: function getType(el) {\n return \"shiny.number\";\n el;\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var _data$value, _data$min, _data$max, _data$step;\n // Setting values to `\"\"` will remove the attribute value from the DOM element.\n // The attr key will still remain, but there is not value... ex: ``\n if (hasDefinedProperty(data, \"value\")) el.value = (_data$value = data.value) !== null && _data$value !== void 0 ? _data$value : \"\";\n if (hasDefinedProperty(data, \"min\")) el.min = (_data$min = data.min) !== null && _data$min !== void 0 ? _data$min : \"\";\n if (hasDefinedProperty(data, \"max\")) el.max = (_data$max = data.max) !== null && _data$max !== void 0 ? _data$max : \"\";\n if (hasDefinedProperty(data, \"step\")) el.step = (_data$step = data.step) !== null && _data$step !== void 0 ? _data$step : \"\";\n updateLabel(data.label, getLabelNode(el));\n $(el).trigger(\"change\");\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n return {\n label: getLabelNode(el).text(),\n value: this.getValue(el),\n min: Number(el.min),\n max: Number(el.max),\n step: Number(el.step)\n };\n }\n }]);\n return NumberInputBinding;\n}(TextInputBindingBase);\nexport { NumberInputBinding };", "var $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar isDataDescriptor = require('../internals/is-data-descriptor');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\n\n// `Reflect.get` method\n// https://tc39.es/ecma262/#sec-reflect.get\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var descriptor, prototype;\n if (anObject(target) === receiver) return target[propertyKey];\n descriptor = getOwnPropertyDescriptorModule.f(target, propertyKey);\n if (descriptor) return isDataDescriptor(descriptor)\n ? descriptor.value\n : descriptor.get === undefined ? undefined : call(descriptor.get, receiver);\n if (isObject(prototype = getPrototypeOf(target))) return get(prototype, propertyKey, receiver);\n}\n\n$({ target: 'Reflect', stat: true }, {\n get: get\n});\n", "var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FORCED = !DESCRIPTORS || fails(function () { nativeGetOwnPropertyDescriptor(1); });\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _get() { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.function.name.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.reflect.get.js\";\nimport \"core-js/modules/es.object.get-own-property-descriptor.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { $escape, updateLabel, hasDefinedProperty } from \"../../utils\";\nimport { InputBinding } from \"./inputBinding\";\n\n// interface TextHTMLElement extends NameValueHTMLElement {\n// placeholder: any;\n// }\n\nfunction getLabelNode(el) {\n return $(el).parent().find('label[for=\"' + $escape(el.id) + '\"]');\n}\nvar TextInputBindingBase = /*#__PURE__*/function (_InputBinding) {\n _inherits(TextInputBindingBase, _InputBinding);\n var _super = _createSuper(TextInputBindingBase);\n function TextInputBindingBase() {\n _classCallCheck(this, TextInputBindingBase);\n return _super.apply(this, arguments);\n }\n _createClass(TextInputBindingBase, [{\n key: \"find\",\n value: function find(scope) {\n var $inputs = $(scope).find('input[type=\"text\"], input[type=\"search\"], input[type=\"url\"], input[type=\"email\"]');\n // selectize.js 0.12.4 inserts a hidden text input with an\n // id that ends in '-selectized'. The .not() selector below\n // is to prevent textInputBinding from accidentally picking up\n // this hidden element as a shiny input (#2396)\n //\n // Inputs also now have .shiny-input-text class\n return $inputs.not('input[type=\"text\"][id$=\"-selectized\"]');\n }\n }, {\n key: \"getId\",\n value: function getId(el) {\n return _get(_getPrototypeOf(TextInputBindingBase.prototype), \"getId\", this).call(this, el) || el.name;\n // return InputBinding.prototype.getId.call(this, el) || el.name;\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n throw \"not implemented\";\n el;\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n throw \"not implemented\";\n el;\n value;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"keyup.textInputBinding input.textInputBinding\",\n // event: Event\n function () {\n callback(true);\n });\n $(el).on(\"change.textInputBinding\",\n // event: Event\n function () {\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".textInputBinding\");\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n throw \"not implemented\";\n el;\n data;\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n throw \"not implemented\";\n el;\n }\n }, {\n key: \"getRatePolicy\",\n value: function getRatePolicy(el) {\n return {\n policy: \"debounce\",\n delay: 250\n };\n el;\n }\n }]);\n return TextInputBindingBase;\n}(InputBinding);\nvar TextInputBinding = /*#__PURE__*/function (_TextInputBindingBase) {\n _inherits(TextInputBinding, _TextInputBindingBase);\n var _super2 = _createSuper(TextInputBinding);\n function TextInputBinding() {\n _classCallCheck(this, TextInputBinding);\n return _super2.apply(this, arguments);\n }\n _createClass(TextInputBinding, [{\n key: \"setValue\",\n value: function setValue(el, value) {\n el.value = value;\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n return el.value;\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n return {\n label: getLabelNode(el).text(),\n value: el.value,\n placeholder: el.placeholder\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n if (hasDefinedProperty(data, \"value\")) this.setValue(el, data.value);\n updateLabel(data.label, getLabelNode(el));\n if (hasDefinedProperty(data, \"placeholder\")) el.placeholder = data.placeholder;\n $(el).trigger(\"change\");\n }\n }]);\n return TextInputBinding;\n}(TextInputBindingBase);\nexport { TextInputBinding, TextInputBindingBase };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport $ from \"jquery\";\nimport { TextInputBinding } from \"./text\";\nvar PasswordInputBinding = /*#__PURE__*/function (_TextInputBinding) {\n _inherits(PasswordInputBinding, _TextInputBinding);\n var _super = _createSuper(PasswordInputBinding);\n function PasswordInputBinding() {\n _classCallCheck(this, PasswordInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(PasswordInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Inputs also have .shiny-input-password class\n return $(scope).find('input[type=\"password\"]');\n }\n }, {\n key: \"getType\",\n value: function getType(el) {\n return \"shiny.password\";\n el;\n }\n }]);\n return PasswordInputBinding;\n}(TextInputBinding);\nexport { PasswordInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport $ from \"jquery\";\nimport { TextInputBinding } from \"./text\";\nvar TextareaInputBinding = /*#__PURE__*/function (_TextInputBinding) {\n _inherits(TextareaInputBinding, _TextInputBinding);\n var _super = _createSuper(TextareaInputBinding);\n function TextareaInputBinding() {\n _classCallCheck(this, TextareaInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(TextareaInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Inputs now also have the .shiny-input-textarea class\n return $(scope).find(\"textarea\");\n }\n }]);\n return TextareaInputBinding;\n}(TextInputBinding);\nexport { TextareaInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.string.trim.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { InputBinding } from \"./inputBinding\";\nimport { $escape, hasDefinedProperty, updateLabel } from \"../../utils\";\n// Get the DOM element that contains the top-level label\nfunction getLabelNode(el) {\n return $(el).parent().find('label[for=\"' + $escape(el.id) + '\"]');\n}\n// Given an input DOM object, get the associated label. Handles labels\n// that wrap the input as well as labels associated with 'for' attribute.\nfunction getLabel(obj) {\n var parentNode = obj.parentNode;\n\n // If \n if (parentNode.tagName === \"LABEL\") {\n return $(parentNode).find(\"span\").text().trim();\n }\n return null;\n}\n// Given an input DOM object, set the associated label. Handles labels\n// that wrap the input as well as labels associated with 'for' attribute.\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction setLabel(obj, value) {\n var parentNode = obj.parentNode;\n\n // If \n if (parentNode.tagName === \"LABEL\") {\n $(parentNode).find(\"span\").text(value);\n }\n return null;\n}\nvar RadioInputBinding = /*#__PURE__*/function (_InputBinding) {\n _inherits(RadioInputBinding, _InputBinding);\n var _super = _createSuper(RadioInputBinding);\n function RadioInputBinding() {\n _classCallCheck(this, RadioInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(RadioInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n return $(scope).find(\".shiny-input-radiogroup\");\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n // Select the radio objects that have name equal to the grouping div's id\n var checkedItems = $('input:radio[name=\"' + $escape(el.id) + '\"]:checked');\n if (checkedItems.length === 0) {\n // If none are checked, the input will return null (it's the default on load,\n // but it wasn't emptied when calling updateRadioButtons with character(0)\n return null;\n }\n return checkedItems.val();\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n if (Array.isArray(value) && value.length === 0) {\n // Removing all checked item if the sent data is empty\n $('input:radio[name=\"' + $escape(el.id) + '\"]').prop(\"checked\", false);\n } else {\n $('input:radio[name=\"' + $escape(el.id) + '\"][value=\"' + $escape(value) + '\"]').prop(\"checked\", true);\n }\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n var $objs = $('input:radio[name=\"' + $escape(el.id) + '\"]');\n\n // Store options in an array of objects, each with with value and label\n var options = new Array($objs.length);\n for (var i = 0; i < options.length; i++) {\n options[i] = {\n value: $objs[i].value,\n label: getLabel($objs[i])\n };\n }\n return {\n label: getLabelNode(el).text(),\n value: this.getValue(el),\n options: options\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $el = $(el);\n // This will replace all the options\n\n if (hasDefinedProperty(data, \"options\")) {\n // Clear existing options and add each new one\n $el.find(\"div.shiny-options-group\").remove();\n // Backward compatibility: for HTML generated by shinybootstrap2 package\n $el.find(\"label.radio\").remove();\n // @ts-expect-error; TODO-barret; IDK what this line is doing\n // TODO-barret; Should this line be setting attributes instead?\n // `data.options` is an array of `{value, label}` objects\n $el.append(data.options);\n }\n if (hasDefinedProperty(data, \"value\")) {\n this.setValue(el, data.value);\n }\n updateLabel(data.label, getLabelNode(el));\n $(el).trigger(\"change\");\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"change.radioInputBinding\", function () {\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".radioInputBinding\");\n }\n }]);\n return RadioInputBinding;\n}(InputBinding);\nexport { RadioInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport $ from \"jquery\";\nimport { InputBinding } from \"./inputBinding\";\nimport { formatDateUTC, updateLabel, $escape, parseDate, hasDefinedProperty } from \"../../utils\";\nvar DateInputBindingBase = /*#__PURE__*/function (_InputBinding) {\n _inherits(DateInputBindingBase, _InputBinding);\n var _super = _createSuper(DateInputBindingBase);\n function DateInputBindingBase() {\n _classCallCheck(this, DateInputBindingBase);\n return _super.apply(this, arguments);\n }\n _createClass(DateInputBindingBase, [{\n key: \"find\",\n value: function find(scope) {\n return $(scope).find(\".shiny-date-input\");\n }\n }, {\n key: \"getType\",\n value: function getType(el) {\n return \"shiny.date\";\n el;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"keyup.dateInputBinding input.dateInputBinding\",\n // event: Event\n function () {\n // Use normal debouncing policy when typing\n callback(true);\n });\n $(el).on(\"changeDate.dateInputBinding change.dateInputBinding\",\n // event: Event\n function () {\n // Send immediately when clicked\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".dateInputBinding\");\n }\n }, {\n key: \"getRatePolicy\",\n value: function getRatePolicy() {\n return {\n policy: \"debounce\",\n delay: 250\n };\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, data) {\n throw \"not implemented\";\n el;\n data;\n }\n }, {\n key: \"initialize\",\n value: function initialize(el) {\n var $input = $(el).find(\"input\");\n\n // The challenge with dates is that we want them to be at 00:00 in UTC so\n // that we can do comparisons with them. However, the Date object itself\n // does not carry timezone information, so we should call _floorDateTime()\n // on Dates as soon as possible so that we know we're always working with\n // consistent objects.\n\n var date = $input.data(\"initial-date\");\n // If initial_date is null, set to current date\n\n if (date === undefined || date === null) {\n // Get local date, but normalized to beginning of day in UTC.\n date = this._floorDateTime(this._dateAsUTC(new Date()));\n }\n this.setValue(el, date);\n\n // Set the start and end dates, from min-date and max-date. These always\n // use yyyy-mm-dd format, instead of bootstrap-datepicker's built-in\n // support for date-startdate and data-enddate, which use the current\n // date format.\n if ($input.data(\"min-date\") !== undefined) {\n this._setMin($input[0], $input.data(\"min-date\"));\n }\n if ($input.data(\"max-date\") !== undefined) {\n this._setMax($input[0], $input.data(\"max-date\"));\n }\n }\n }, {\n key: \"_getLabelNode\",\n value: function _getLabelNode(el) {\n return $(el).find('label[for=\"' + $escape(el.id) + '\"]');\n }\n // Given a format object from a date picker, return a string\n }, {\n key: \"_formatToString\",\n value: function _formatToString(format) {\n // Format object has structure like:\n // { parts: ['mm', 'dd', 'yy'], separators: ['', '/', '/' ,''] }\n var str = \"\";\n var i;\n for (i = 0; i < format.parts.length; i++) {\n str += format.separators[i] + format.parts[i];\n }\n str += format.separators[i];\n return str;\n }\n // Given an unambiguous date string or a Date object, set the min (start) date.\n // null will unset. undefined will result in no change,\n }, {\n key: \"_setMin\",\n value: function _setMin(el, date) {\n if (date === null) {\n $(el).bsDatepicker(\"setStartDate\", null);\n return;\n }\n var parsedDate = this._newDate(date);\n\n // If date parsing fails, do nothing\n if (parsedDate === null) return;\n\n // (Assign back to date as a Date object)\n date = parsedDate;\n if (isNaN(date.valueOf())) return;\n // Workarounds for\n // https://github.com/rstudio/shiny/issues/2335\n var curValue = $(el).bsDatepicker(\"getUTCDate\");\n\n // Note that there's no `setUTCStartDate`, so we need to convert this Date.\n // It starts at 00:00 UTC, and we convert it to 00:00 in local time, which\n // is what's needed for `setStartDate`.\n $(el).bsDatepicker(\"setStartDate\", this._utcDateAsLocal(date));\n\n // If the new min is greater than the current date, unset the current date.\n if (date && curValue && date.getTime() > curValue.getTime()) {\n $(el).bsDatepicker(\"clearDates\");\n } else {\n // Setting the date needs to be done AFTER `setStartDate`, because the\n // datepicker has a bug where calling `setStartDate` will clear the date\n // internally (even though it will still be visible in the UI) when a\n // 2-digit year format is used.\n // https://github.com/eternicode/bootstrap-datepicker/issues/2010\n $(el).bsDatepicker(\"setUTCDate\", curValue);\n }\n }\n // Given an unambiguous date string or a Date object, set the max (end) date\n // null will unset.\n }, {\n key: \"_setMax\",\n value: function _setMax(el, date) {\n if (date === null) {\n $(el).bsDatepicker(\"setEndDate\", null);\n return;\n }\n var parsedDate = this._newDate(date);\n\n // If date parsing fails, do nothing\n if (parsedDate === null) return;\n date = parsedDate;\n if (isNaN(date.valueOf())) return;\n\n // Workaround for same issue as in _setMin.\n var curValue = $(el).bsDatepicker(\"getUTCDate\");\n $(el).bsDatepicker(\"setEndDate\", this._utcDateAsLocal(date));\n\n // If the new min is greater than the current date, unset the current date.\n if (date && curValue && date.getTime() < curValue.getTime()) {\n $(el).bsDatepicker(\"clearDates\");\n } else {\n $(el).bsDatepicker(\"setUTCDate\", curValue);\n }\n }\n // Given a date string of format yyyy-mm-dd, return a Date object with\n // that date at 12AM UTC.\n // If date is a Date object, return it unchanged.\n }, {\n key: \"_newDate\",\n value: function _newDate(date) {\n if (date instanceof Date) return date;\n if (!date) return null;\n\n // Get Date object - this will be at 12AM in UTC, but may print\n // differently at the Javascript console.\n var d = parseDate(date);\n\n // If invalid date, return null\n if (isNaN(d.valueOf())) return null;\n return d;\n }\n // A Date can have any time during a day; this will return a new Date object\n // set to 00:00 in UTC.\n }, {\n key: \"_floorDateTime\",\n value: function _floorDateTime(date) {\n date = new Date(date.getTime());\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n // Given a Date object, return a Date object which has the same \"clock time\"\n // in UTC. For example, if input date is 2013-02-01 23:00:00 GMT-0600 (CST),\n // output will be 2013-02-01 23:00:00 UTC. Note that the JS console may\n // print this in local time, as \"Sat Feb 02 2013 05:00:00 GMT-0600 (CST)\".\n }, {\n key: \"_dateAsUTC\",\n value: function _dateAsUTC(date) {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000);\n }\n // The inverse of _dateAsUTC. This is needed to adjust time zones because\n // some bootstrap-datepicker methods only take local dates as input, and not\n // UTC.\n }, {\n key: \"_utcDateAsLocal\",\n value: function _utcDateAsLocal(date) {\n return new Date(date.getTime() + date.getTimezoneOffset() * 60000);\n }\n }]);\n return DateInputBindingBase;\n}(InputBinding);\nvar DateInputBinding = /*#__PURE__*/function (_DateInputBindingBase) {\n _inherits(DateInputBinding, _DateInputBindingBase);\n var _super2 = _createSuper(DateInputBinding);\n function DateInputBinding() {\n _classCallCheck(this, DateInputBinding);\n return _super2.apply(this, arguments);\n }\n _createClass(DateInputBinding, [{\n key: \"getValue\",\n value:\n // Return the date in an unambiguous format, yyyy-mm-dd (as opposed to a\n // format like mm/dd/yyyy)\n function getValue(el) {\n var date = $(el).find(\"input\").bsDatepicker(\"getUTCDate\");\n return formatDateUTC(date);\n }\n // value must be an unambiguous string like '2001-01-01', or a Date object.\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n // R's NA, which is null here will remove current value\n if (value === null) {\n $(el).find(\"input\").val(\"\").bsDatepicker(\"update\");\n return;\n }\n var date = this._newDate(value);\n if (date === null) {\n return;\n }\n\n // If date is invalid, do nothing\n if (isNaN(date.valueOf())) return;\n $(el).find(\"input\").bsDatepicker(\"setUTCDate\", date);\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n var $el = $(el);\n var $input = $el.find(\"input\");\n var min = $input.data(\"datepicker\").startDate;\n var max = $input.data(\"datepicker\").endDate;\n\n // Stringify min and max. If min and max aren't set, they will be\n // -Infinity and Infinity; replace these with null.\n min = min === -Infinity ? null : formatDateUTC(min);\n max = max === Infinity ? null : formatDateUTC(max);\n\n // startViewMode is stored as a number; convert to string\n var startview = $input.data(\"datepicker\").startViewMode;\n if (startview === 2) startview = \"decade\";else if (startview === 1) startview = \"year\";else if (startview === 0) startview = \"month\";\n return {\n label: this._getLabelNode(el).text(),\n value: this.getValue(el),\n valueString: $input.val(),\n min: min,\n max: max,\n language: $input.data(\"datepicker\").language,\n weekstart: $input.data(\"datepicker\").weekStart,\n format: this._formatToString($input.data(\"datepicker\").format),\n startview: startview\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $input = $(el).find(\"input\");\n updateLabel(data.label, this._getLabelNode(el));\n if (hasDefinedProperty(data, \"min\")) this._setMin($input[0], data.min);\n if (hasDefinedProperty(data, \"max\")) this._setMax($input[0], data.max);\n\n // Must set value only after min and max have been set. If new value is\n // outside the bounds of the previous min/max, then the result will be a\n // blank input.\n if (hasDefinedProperty(data, \"value\")) this.setValue(el, data.value);\n $(el).trigger(\"change\");\n }\n }]);\n return DateInputBinding;\n}(DateInputBindingBase);\nexport { DateInputBinding, DateInputBindingBase };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.regexp.to-string.js\";\nimport \"core-js/modules/es.regexp.exec.js\";\nimport \"core-js/modules/es.string.replace.js\";\nimport \"core-js/modules/es.regexp.test.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\n// import { NameValueHTMLElement } from \".\";\nimport { formatDateUTC, updateLabel, $escape, hasDefinedProperty } from \"../../utils\";\nimport { TextInputBindingBase } from \"./text\";\n\n// interface SliderHTMLElement extends NameValueHTMLElement {\n// checked?: any;\n// }\n\n// Necessary to get hidden sliders to send their updated values\nfunction forceIonSliderUpdate(slider) {\n if (slider.$cache && slider.$cache.input) slider.$cache.input.trigger(\"change\");else console.log(\"Couldn't force ion slider to update\");\n}\nfunction getTypePrettifyer(dataType, timeFormat, timezone) {\n var timeFormatter;\n var prettify;\n if (dataType === \"date\") {\n timeFormatter = window.strftime.utc();\n prettify = function prettify(num) {\n return timeFormatter(timeFormat, new Date(num));\n };\n } else if (dataType === \"datetime\") {\n if (timezone) timeFormatter = window.strftime.timezone(timezone);else timeFormatter = window.strftime;\n prettify = function prettify(num) {\n return timeFormatter(timeFormat, new Date(num));\n };\n } else {\n // The default prettify function for ion.rangeSlider adds thousands\n // separators after the decimal mark, so we have our own version here.\n // (#1958)\n prettify = function prettify(num) {\n // When executed, `this` will refer to the `IonRangeSlider.options`\n // object.\n return formatNumber(num, this.prettify_separator);\n };\n }\n return prettify;\n}\nfunction getLabelNode(el) {\n return $(el).parent().find('label[for=\"' + $escape(el.id) + '\"]');\n}\n// Number of values; 1 for single slider, 2 for range slider\nfunction numValues(el) {\n if ($(el).data(\"ionRangeSlider\").options.type === \"double\") return 2;else return 1;\n}\nvar SliderInputBinding = /*#__PURE__*/function (_TextInputBindingBase) {\n _inherits(SliderInputBinding, _TextInputBindingBase);\n var _super = _createSuper(SliderInputBinding);\n function SliderInputBinding() {\n _classCallCheck(this, SliderInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(SliderInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Check if ionRangeSlider plugin is loaded\n if (!$.fn.ionRangeSlider) {\n // Return empty set of _found_ items\n return $();\n }\n return $(scope).find(\"input.js-range-slider\");\n }\n }, {\n key: \"getType\",\n value: function getType(el) {\n var dataType = $(el).data(\"data-type\");\n if (dataType === \"date\") return \"shiny.date\";else if (dataType === \"datetime\") return \"shiny.datetime\";else return null;\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n var $el = $(el);\n var result = $(el).data(\"ionRangeSlider\").result;\n\n // Function for converting numeric value from slider to appropriate type.\n var convert;\n var dataType = $el.data(\"data-type\");\n if (dataType === \"date\") {\n convert = function convert(val) {\n return formatDateUTC(new Date(Number(val)));\n };\n } else if (dataType === \"datetime\") {\n convert = function convert(val) {\n // Convert ms to s\n return Number(val) / 1000;\n };\n } else {\n convert = function convert(val) {\n return Number(val);\n };\n }\n if (numValues(el) === 2) {\n return [convert(result.from), convert(result.to)];\n } else {\n return convert(result.from);\n }\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n var $el = $(el);\n var slider = $el.data(\"ionRangeSlider\");\n $el.data(\"immediate\", true);\n try {\n if (numValues(el) === 2 && value instanceof Array) {\n slider.update({\n from: value[0],\n to: value[1]\n });\n } else {\n slider.update({\n from: value\n });\n }\n forceIonSliderUpdate(slider);\n } finally {\n $el.data(\"immediate\", false);\n }\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"change.sliderInputBinding\", function () {\n callback(!$(el).data(\"immediate\") && !$(el).data(\"animating\"));\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".sliderInputBinding\");\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $el = $(el);\n var slider = $el.data(\"ionRangeSlider\");\n var msg = {};\n if (hasDefinedProperty(data, \"value\")) {\n if (numValues(el) === 2 && data.value instanceof Array) {\n msg.from = data.value[0];\n msg.to = data.value[1];\n } else {\n if (Array.isArray(data.value)) {\n var errorReason = [\"an empty array.\", \"a single-value array.\", \"an array with more than two values.\"];\n throw \"Slider requires two values to update with an array, \" + \"but message value was \" + errorReason[Math.min(data.value.length, 2)];\n }\n msg.from = data.value;\n }\n }\n var sliderFeatures = [\"min\", \"max\", \"step\"];\n for (var i = 0; i < sliderFeatures.length; i++) {\n var feats = sliderFeatures[i];\n if (hasDefinedProperty(data, feats)) {\n msg[feats] = data[feats];\n }\n }\n updateLabel(data.label, getLabelNode(el));\n\n // (maybe) update data elements\n var domElements = [\"data-type\", \"time-format\", \"timezone\"];\n for (var _i = 0; _i < domElements.length; _i++) {\n var elem = domElements[_i];\n if (hasDefinedProperty(data, elem)) {\n $el.data(elem, data[elem]);\n }\n }\n\n // retrieve latest data values\n var dataType = $el.data(\"data-type\");\n var timeFormat = $el.data(\"time-format\");\n var timezone = $el.data(\"timezone\");\n msg.prettify = getTypePrettifyer(dataType, timeFormat, timezone);\n $el.data(\"immediate\", true);\n try {\n slider.update(msg);\n forceIonSliderUpdate(slider);\n } finally {\n $el.data(\"immediate\", false);\n }\n }\n }, {\n key: \"getRatePolicy\",\n value: function getRatePolicy(el) {\n return {\n policy: \"debounce\",\n delay: 250\n };\n el;\n }\n // TODO-barret Why not implemented?\n }, {\n key: \"getState\",\n value: function getState(el) {\n // empty\n el;\n }\n }, {\n key: \"initialize\",\n value: function initialize(el) {\n var $el = $(el);\n var dataType = $el.data(\"data-type\");\n var timeFormat = $el.data(\"time-format\");\n var timezone = $el.data(\"timezone\");\n var opts = {\n prettify: getTypePrettifyer(dataType, timeFormat, timezone)\n };\n $el.ionRangeSlider(opts);\n }\n }]);\n return SliderInputBinding;\n}(TextInputBindingBase); // Format numbers for nicer output.\n// formatNumber(1234567.12345) === \"1,234,567.12345\"\n// formatNumber(1234567.12345, \".\", \",\") === \"1.234.567,12345\"\n// formatNumber(1000, \" \") === \"1 000\"\n// formatNumber(20) === \"20\"\n// formatNumber(1.2345e24) === \"1.2345e+24\"\nfunction formatNumber(num) {\n var thousandSep = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \",\";\n var decimalSep = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \".\";\n var parts = num.toString().split(\".\");\n\n // Add separators to portion before decimal mark.\n parts[0] = parts[0].replace(/(\\d{1,3}(?=(?:\\d\\d\\d)+(?!\\d)))/g, \"$1\" + thousandSep);\n if (parts.length === 1) return parts[0];else if (parts.length === 2) return parts[0] + decimalSep + parts[1];else return \"\";\n}\n\n// TODO-barret ; this should be put in the \"init\" areas, correct?\n$(document).on(\"click\", \".slider-animate-button\", function (evt) {\n evt.preventDefault();\n var self = $(this);\n var target = $(\"#\" + $escape(self.attr(\"data-target-id\")));\n var startLabel = \"Play\";\n var stopLabel = \"Pause\";\n var loop = self.attr(\"data-loop\") !== undefined && !/^\\s*false\\s*$/i.test(self.attr(\"data-loop\"));\n var animInterval = self.attr(\"data-interval\");\n if (isNaN(animInterval)) animInterval = 1500;else animInterval = Number(animInterval);\n if (!target.data(\"animTimer\")) {\n var timer;\n\n // Separate code paths:\n // Backward compatible code for old-style jsliders (Shiny <= 0.10.2.2),\n // and new-style ionsliders.\n if (target.hasClass(\"jslider\")) {\n var slider = target.slider();\n\n // If we're currently at the end, restart\n if (!slider.canStepNext()) slider.resetToStart();\n timer = setInterval(function () {\n if (loop && !slider.canStepNext()) {\n slider.resetToStart();\n } else {\n slider.stepNext();\n if (!loop && !slider.canStepNext()) {\n // TODO-barret replace with self.trigger(\"click\")\n self.click(); // stop the animation\n }\n }\n }, animInterval);\n } else {\n var _slider = target.data(\"ionRangeSlider\");\n // Single sliders have slider.options.type == \"single\", and only the\n // `from` value is used. Double sliders have type == \"double\", and also\n // use the `to` value for the right handle.\n var sliderCanStep = function sliderCanStep() {\n if (_slider.options.type === \"double\") return _slider.result.to < _slider.result.max;else return _slider.result.from < _slider.result.max;\n };\n var sliderReset = function sliderReset() {\n var val = {\n from: _slider.result.min\n };\n // Preserve the current spacing for double sliders\n\n if (_slider.options.type === \"double\") val.to = val.from + (_slider.result.to - _slider.result.from);\n _slider.update(val);\n forceIonSliderUpdate(_slider);\n };\n var sliderStep = function sliderStep() {\n // Don't overshoot the end\n var val = {\n from: Math.min(_slider.result.max, _slider.result.from + _slider.options.step)\n };\n if (_slider.options.type === \"double\") val.to = Math.min(_slider.result.max, _slider.result.to + _slider.options.step);\n _slider.update(val);\n forceIonSliderUpdate(_slider);\n };\n\n // If we're currently at the end, restart\n if (!sliderCanStep()) sliderReset();\n timer = setInterval(function () {\n if (loop && !sliderCanStep()) {\n sliderReset();\n } else {\n sliderStep();\n if (!loop && !sliderCanStep()) {\n self.click(); // stop the animation\n }\n }\n }, animInterval);\n }\n target.data(\"animTimer\", timer);\n self.attr(\"title\", stopLabel);\n self.addClass(\"playing\");\n target.data(\"animating\", true);\n } else {\n clearTimeout(target.data(\"animTimer\"));\n target.removeData(\"animTimer\");\n self.attr(\"title\", startLabel);\n self.removeClass(\"playing\");\n target.removeData(\"animating\");\n }\n});\nexport { SliderInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { $escape, formatDateUTC, hasDefinedProperty, updateLabel } from \"../../utils\";\nimport { DateInputBindingBase } from \"./date\";\nfunction getLabelNode(el) {\n return $(el).find('label[for=\"' + $escape(el.id) + '\"]');\n}\nvar DateRangeInputBinding = /*#__PURE__*/function (_DateInputBindingBase) {\n _inherits(DateRangeInputBinding, _DateInputBindingBase);\n var _super = _createSuper(DateRangeInputBinding);\n function DateRangeInputBinding() {\n _classCallCheck(this, DateRangeInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(DateRangeInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n return $(scope).find(\".shiny-date-range-input\");\n }\n // Return the date in an unambiguous format, yyyy-mm-dd (as opposed to a\n // format like mm/dd/yyyy)\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n var $inputs = $(el).find(\"input\");\n var start = $inputs.eq(0).bsDatepicker(\"getUTCDate\");\n var end = $inputs.eq(1).bsDatepicker(\"getUTCDate\");\n return [formatDateUTC(start), formatDateUTC(end)];\n }\n // value must be an object, with optional fields `start` and `end`. These\n // should be unambiguous strings like '2001-01-01', or Date objects.\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n if (!(value instanceof Object)) {\n return;\n }\n\n // Get the start and end input objects\n var $inputs = $(el).find(\"input\");\n\n // If value is undefined, don't try to set\n // null will remove the current value\n if (value.start !== undefined) {\n if (value.start === null) {\n $inputs.eq(0).val(\"\").bsDatepicker(\"update\");\n } else {\n var start = this._newDate(value.start);\n $inputs.eq(0).bsDatepicker(\"setUTCDate\", start);\n }\n }\n if (value.end !== undefined) {\n if (value.end === null) {\n $inputs.eq(1).val(\"\").bsDatepicker(\"update\");\n } else {\n var end = this._newDate(value.end);\n $inputs.eq(1).bsDatepicker(\"setUTCDate\", end);\n }\n }\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n var $el = $(el);\n var $inputs = $el.find(\"input\");\n var $startinput = $inputs.eq(0);\n var $endinput = $inputs.eq(1);\n\n // For many of the properties, assume start and end have the same values\n var min = $startinput.bsDatepicker(\"getStartDate\");\n var max = $startinput.bsDatepicker(\"getEndDate\");\n\n // Stringify min and max. If min and max aren't set, they will be\n // -Infinity and Infinity; replace these with null.\n var minStr = min === -Infinity ? null : formatDateUTC(min);\n var maxStr = max === Infinity ? null : formatDateUTC(max);\n\n // startViewMode is stored as a number; convert to string\n var startview = $startinput.data(\"datepicker\").startView;\n if (startview === 2) startview = \"decade\";else if (startview === 1) startview = \"year\";else if (startview === 0) startview = \"month\";\n return {\n label: getLabelNode(el).text(),\n value: this.getValue(el),\n valueString: [$startinput.val(), $endinput.val()],\n min: minStr,\n max: maxStr,\n weekstart: $startinput.data(\"datepicker\").weekStart,\n format: this._formatToString($startinput.data(\"datepicker\").format),\n language: $startinput.data(\"datepicker\").language,\n startview: startview\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $el = $(el);\n var $inputs = $el.find(\"input\");\n var $startinput = $inputs.eq(0);\n var $endinput = $inputs.eq(1);\n updateLabel(data.label, getLabelNode(el));\n if (hasDefinedProperty(data, \"min\")) {\n this._setMin($startinput[0], data.min);\n this._setMin($endinput[0], data.min);\n }\n if (hasDefinedProperty(data, \"max\")) {\n this._setMax($startinput[0], data.max);\n this._setMax($endinput[0], data.max);\n }\n\n // Must set value only after min and max have been set. If new value is\n // outside the bounds of the previous min/max, then the result will be a\n // blank input.\n if (hasDefinedProperty(data, \"value\")) {\n this.setValue(el, data.value);\n }\n $el.trigger(\"change\");\n }\n }, {\n key: \"initialize\",\n value: function initialize(el) {\n var $el = $(el);\n var $inputs = $el.find(\"input\");\n var $startinput = $inputs.eq(0);\n var $endinput = $inputs.eq(1);\n var start = $startinput.data(\"initial-date\");\n var end = $endinput.data(\"initial-date\");\n\n // If empty/null, use local date, but as UTC\n if (start === undefined || start === null) start = this._dateAsUTC(new Date());\n if (end === undefined || end === null) end = this._dateAsUTC(new Date());\n this.setValue(el, {\n start: start,\n end: end\n });\n\n // // Set the start and end dates, from min-date and max-date. These always\n // // use yyyy-mm-dd format, instead of bootstrap-datepicker's built-in\n // // support for date-startdate and data-enddate, which use the current\n // // date format.\n this._setMin($startinput[0], $startinput.data(\"min-date\"));\n this._setMin($endinput[0], $startinput.data(\"min-date\"));\n this._setMax($startinput[0], $endinput.data(\"max-date\"));\n this._setMax($endinput[0], $endinput.data(\"max-date\"));\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n $(el).on(\"keyup.dateRangeInputBinding input.dateRangeInputBinding\",\n // event: Event\n function () {\n // Use normal debouncing policy when typing\n callback(true);\n });\n $(el).on(\"changeDate.dateRangeInputBinding change.dateRangeInputBinding\",\n // event: Event\n function () {\n // Send immediately when clicked\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".dateRangeInputBinding\");\n }\n }]);\n return DateRangeInputBinding;\n}(DateInputBindingBase);\nexport { DateRangeInputBinding };", "function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nimport \"core-js/modules/es.array.find.js\";\nimport \"core-js/modules/es.object.to-string.js\";\nimport \"core-js/modules/es.function.name.js\";\nimport \"core-js/modules/es.json.stringify.js\";\nimport \"core-js/modules/es.object.set-prototype-of.js\";\nimport \"core-js/modules/es.object.get-prototype-of.js\";\nimport \"core-js/modules/es.reflect.to-string-tag.js\";\nimport \"core-js/modules/es.reflect.construct.js\";\nimport \"core-js/modules/es.object.define-property.js\";\nimport \"core-js/modules/es.symbol.to-primitive.js\";\nimport \"core-js/modules/es.date.to-primitive.js\";\nimport \"core-js/modules/es.symbol.js\";\nimport \"core-js/modules/es.symbol.description.js\";\nimport \"core-js/modules/es.number.constructor.js\";\nimport \"core-js/modules/es.symbol.iterator.js\";\nimport \"core-js/modules/es.array.iterator.js\";\nimport \"core-js/modules/es.string.iterator.js\";\nimport \"core-js/modules/web.dom-collections.iterator.js\";\nimport $ from \"jquery\";\nimport { InputBinding } from \"./inputBinding\";\nimport { $escape, hasDefinedProperty, updateLabel } from \"../../utils\";\nimport { indirectEval } from \"../../utils/eval\";\nfunction getLabelNode(el) {\n var escapedId = $escape(el.id);\n if (isSelectize(el)) {\n escapedId += \"-selectized\";\n }\n return $(el).parent().parent().find('label[for=\"' + escapedId + '\"]');\n}\n// Return true if it's a selectize input, false if it's a regular select input.\n// eslint-disable-next-line camelcase\nfunction isSelectize(el) {\n var config = $(el).parent().find('script[data-for=\"' + $escape(el.id) + '\"]');\n return config.length > 0;\n}\nvar SelectInputBinding = /*#__PURE__*/function (_InputBinding) {\n _inherits(SelectInputBinding, _InputBinding);\n var _super = _createSuper(SelectInputBinding);\n function SelectInputBinding() {\n _classCallCheck(this, SelectInputBinding);\n return _super.apply(this, arguments);\n }\n _createClass(SelectInputBinding, [{\n key: \"find\",\n value: function find(scope) {\n // Inputs also have .shiny-input-select class\n return $(scope).find(\"select\");\n }\n }, {\n key: \"getType\",\n value: function getType(el) {\n var $el = $(el);\n if (!$el.hasClass(\"symbol\")) {\n // default character type\n return null;\n }\n if ($el.attr(\"multiple\") === \"multiple\") {\n return \"shiny.symbolList\";\n } else {\n return \"shiny.symbol\";\n }\n }\n }, {\n key: \"getId\",\n value: function getId(el) {\n return InputBinding.prototype.getId.call(this, el) || el.name;\n }\n }, {\n key: \"getValue\",\n value: function getValue(el) {\n if (!isSelectize(el)) {\n return $(el).val();\n } else {\n var selectize = this._selectize(el);\n return selectize === null || selectize === void 0 ? void 0 : selectize.getValue();\n }\n }\n }, {\n key: \"setValue\",\n value: function setValue(el, value) {\n if (!isSelectize(el)) {\n $(el).val(value);\n } else {\n var selectize = this._selectize(el);\n selectize === null || selectize === void 0 ? void 0 : selectize.setValue(value);\n }\n }\n }, {\n key: \"getState\",\n value: function getState(el) {\n // Store options in an array of objects, each with with value and label\n var options = new Array(el.length);\n for (var i = 0; i < el.length; i++) {\n options[i] = {\n // TODO-barret; Is this a safe assumption?; Are there no Option Groups?\n value: el[i].value,\n label: el[i].label\n };\n }\n return {\n label: getLabelNode(el),\n value: this.getValue(el),\n options: options\n };\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage(el, data) {\n var $el = $(el);\n\n // This will replace all the options\n if (hasDefinedProperty(data, \"options\")) {\n var selectize = this._selectize(el);\n\n // Must destroy selectize before appending new options, otherwise\n // selectize will restore the original select\n selectize === null || selectize === void 0 ? void 0 : selectize.destroy();\n // Clear existing options and add each new one\n $el.empty().append(data.options);\n this._selectize(el);\n }\n\n // re-initialize selectize\n if (hasDefinedProperty(data, \"config\")) {\n $el.parent().find('script[data-for=\"' + $escape(el.id) + '\"]').replaceWith(data.config);\n this._selectize(el, true);\n }\n\n // use server-side processing for selectize\n if (hasDefinedProperty(data, \"url\")) {\n var _selectize2 = this._selectize(el);\n _selectize2.clearOptions();\n // If a new `selected` value is provided, also clear the current selection (otherwise it gets added as an option).\n // Note: although the selectize docs suggest otherwise, as of selectize.js >v0.15.2,\n // .clearOptions() no longer implicitly .clear()s (see #3967)\n if (hasDefinedProperty(data, \"value\")) {\n _selectize2.clear();\n }\n var loaded = false;\n _selectize2.settings.load = function (query, callback) {\n var settings = _selectize2.settings;\n\n /* eslint-disable @typescript-eslint/no-floating-promises */\n $.ajax({\n url: data.url,\n data: {\n query: query,\n field: JSON.stringify([settings.searchField]),\n value: settings.valueField,\n conju: settings.searchConjunction,\n maxop: settings.maxOptions\n },\n type: \"GET\",\n error: function error() {\n callback();\n },\n success: function success(res) {\n // res = [{label: '1', value: '1', group: '1'}, ...]\n // success is called after options are added, but\n // groups need to be added manually below\n $.each(res, function (index, elem) {\n // Call selectize.addOptionGroup once for each optgroup; the\n // first argument is the group ID, the second is an object with\n // the group's label and value. We use the current settings of\n // the selectize object to decide the fieldnames of that obj.\n var optgroupId = elem[settings.optgroupField || \"optgroup\"];\n var optgroup = {};\n optgroup[settings.optgroupLabelField || \"label\"] = optgroupId;\n optgroup[settings.optgroupValueField || \"value\"] = optgroupId;\n _selectize2.addOptionGroup(optgroupId, optgroup);\n });\n callback(res);\n if (!loaded) {\n if (hasDefinedProperty(data, \"value\")) {\n _selectize2.setValue(data.value);\n } else if (settings.maxItems === 1) {\n // first item selected by default only for single-select\n _selectize2.setValue(res[0].value);\n }\n }\n loaded = true;\n }\n });\n };\n // perform an empty search after changing the `load` function\n _selectize2.load(function (callback) {\n _selectize2.settings.load.apply(_selectize2, [\"\", callback]);\n });\n } else if (hasDefinedProperty(data, \"value\")) {\n this.setValue(el, data.value);\n }\n updateLabel(data.label, getLabelNode(el));\n $(el).trigger(\"change\");\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(el, callback) {\n var _this = this;\n $(el).on(\"change.selectInputBinding\",\n // event: Event\n function () {\n // https://github.com/rstudio/shiny/issues/2162\n // Prevent spurious events that are gonna be squelched in\n // a second anyway by the onItemRemove down below\n if (el.nonempty && _this.getValue(el) === \"\") {\n return;\n }\n callback(false);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(el) {\n $(el).off(\".selectInputBinding\");\n }\n }, {\n key: \"initialize\",\n value: function initialize(el) {\n this._selectize(el);\n }\n }, {\n key: \"_selectize\",\n value: function _selectize(el) {\n var update = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n // Apps like 008-html do not have the selectize js library\n // Safe-guard against missing the selectize js library\n if (!$.fn.selectize) return undefined;\n var $el = $(el);\n var config = $el.parent().find('script[data-for=\"' + $escape(el.id) + '\"]');\n if (config.length === 0) return undefined;\n var options = $.extend({\n labelField: \"label\",\n valueField: \"value\",\n searchField: [\"label\"]\n }, JSON.parse(config.html()));\n\n // selectize created from selectInput()\n if (typeof config.data(\"nonempty\") !== \"undefined\") {\n el.nonempty = true;\n options = $.extend(options, {\n onItemRemove: function onItemRemove(value) {\n if (this.getValue() === \"\") $(\"select#\" + $escape(el.id)).empty().append($(\"